1 // Copyright 2014 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef EXTENSIONS_SHELL_TEST_SHELL_API_TEST_H_ 6 #define EXTENSIONS_SHELL_TEST_SHELL_API_TEST_H_ 7 8 #include <string> 9 10 #include "extensions/shell/test/shell_test.h" 11 12 namespace extensions { 13 14 // Base class for app shell browser API tests that load an app/extension 15 // and wait for a success message from the chrome.test API. 16 class ShellApiTest : public AppShellTest { 17 public: 18 ShellApiTest(); 19 virtual ~ShellApiTest(); 20 21 // Loads an unpacked platform app from a directory using the current 22 // ExtensionSystem, launches it, and waits for a chrome.test success 23 // notification. Returns true if the test succeeds. |app_dir| is a 24 // subpath under extensions/test/data. 25 bool RunAppTest(const std::string& app_dir); 26 27 protected: 28 // If it failed, what was the error message? 29 std::string message_; 30 31 private: 32 DISALLOW_COPY_AND_ASSIGN(ShellApiTest); 33 }; 34 35 } // namespace extensions 36 37 #endif // EXTENSIONS_SHELL_TEST_SHELL_API_TEST_H_ 38