OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ | 5 #ifndef CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ |
6 #define CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ | 6 #define CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
11 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
12 | 12 |
13 class CommandLine; | 13 class CommandLine; |
| 14 class FilePath; |
14 | 15 |
15 namespace base { | 16 namespace base { |
16 class RunLoop; | 17 class RunLoop; |
17 } | 18 } |
18 | 19 |
19 namespace test_launcher { | 20 namespace test_launcher { |
20 | 21 |
21 extern const char kEmptyTestName[]; | 22 extern const char kEmptyTestName[]; |
22 extern const char kGTestFilterFlag[]; | 23 extern const char kGTestFilterFlag[]; |
23 extern const char kGTestHelpFlag[]; | 24 extern const char kGTestHelpFlag[]; |
24 extern const char kGTestListTestsFlag[]; | 25 extern const char kGTestListTestsFlag[]; |
25 extern const char kGTestRepeatFlag[]; | 26 extern const char kGTestRepeatFlag[]; |
26 extern const char kGTestRunDisabledTestsFlag[]; | 27 extern const char kGTestRunDisabledTestsFlag[]; |
27 extern const char kGTestOutputFlag[]; | 28 extern const char kGTestOutputFlag[]; |
28 extern const char kSingleProcessTestsFlag[]; | 29 extern const char kSingleProcessTestsFlag[]; |
29 extern const char kSingleProcessTestsAndChromeFlag[]; | 30 extern const char kSingleProcessTestsAndChromeFlag[]; |
30 extern const char kRunManualTestsFlag[]; | 31 extern const char kRunManualTestsFlag[]; |
31 extern const char kHelpFlag[]; | 32 extern const char kHelpFlag[]; |
32 | 33 |
33 // Flag that causes only the kEmptyTestName test to be run. | 34 // Flag that causes only the kEmptyTestName test to be run. |
34 extern const char kWarmupFlag[]; | 35 extern const char kWarmupFlag[]; |
35 | 36 |
36 class TestLauncherDelegate { | 37 class TestLauncherDelegate { |
37 public: | 38 public: |
38 virtual std::string GetEmptyTestName() = 0; | 39 virtual std::string GetEmptyTestName() = 0; |
39 virtual bool Run(int argc, char** argv, int* return_code) = 0; | 40 virtual bool Run(int argc, char** argv, int* return_code) = 0; |
40 virtual int RunTestSuite(int argc, char** argv) = 0; | 41 virtual int RunTestSuite(int argc, char** argv) = 0; |
41 virtual bool AdjustChildProcessCommandLine(CommandLine* command_line) = 0; | 42 virtual bool AdjustChildProcessCommandLine(CommandLine* command_line, |
| 43 const FilePath& temp_data_dir) = 0; |
42 virtual void PreRunMessageLoop(base::RunLoop* run_loop) {} | 44 virtual void PreRunMessageLoop(base::RunLoop* run_loop) {} |
43 virtual void PostRunMessageLoop() {} | 45 virtual void PostRunMessageLoop() {} |
44 | 46 |
45 protected: | 47 protected: |
46 virtual ~TestLauncherDelegate(); | 48 virtual ~TestLauncherDelegate(); |
47 }; | 49 }; |
48 | 50 |
49 int LaunchTests(TestLauncherDelegate* launcher_delegate, | 51 int LaunchTests(TestLauncherDelegate* launcher_delegate, |
50 int argc, | 52 int argc, |
51 char** argv) WARN_UNUSED_RESULT; | 53 char** argv) WARN_UNUSED_RESULT; |
52 | 54 |
53 TestLauncherDelegate* GetCurrentTestLauncherDelegate(); | 55 TestLauncherDelegate* GetCurrentTestLauncherDelegate(); |
54 | 56 |
55 } // namespace test_launcher | 57 } // namespace test_launcher |
56 | 58 |
57 #endif // CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ | 59 #endif // CONTENT_PUBLIC_TEST_TEST_LAUNCHER_H_ |
OLD | NEW |