Home | History | Annotate | Download | only in test
      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