Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(174)

Side by Side Diff: webkit/tools/test_shell/run_all_tests.cc

Issue 14304004: Convert a bunch of test_shell_tests to content_browsertests. These are tests that depend on loading… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: sync Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « webkit/tools/test_shell/plugin_tests.cc ('k') | webkit/tools/test_shell/test_shell.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // Run all of our test shell tests. This is just an entry point 5 // TODO(jam): remove this target when all the bots are updated.
6 // to kick off gTest's RUN_ALL_TESTS().
7
8 #include "base/basictypes.h"
9
10 #if defined(OS_WIN)
11 #include <windows.h>
12 #include <commctrl.h>
13 #endif
14
15 #include "base/command_line.h"
16 #include "base/message_loop.h"
17 #include "base/process_util.h"
18 #include "base/test/test_suite.h"
19 #include "webkit/glue/webkit_glue.h"
20 #include "webkit/tools/test_shell/simple_resource_loader_bridge.h"
21 #include "webkit/tools/test_shell/test_shell.h"
22 #include "webkit/tools/test_shell/test_shell_platform_delegate.h"
23 #include "webkit/tools/test_shell/test_shell_switches.h"
24 #include "webkit/tools/test_shell/test_shell_test.h"
25 #include "webkit/tools/test_shell/test_shell_webkit_init.h"
26 #include "testing/gtest/include/gtest/gtest.h"
27
28 #if defined(OS_MACOSX)
29 #include "base/mac/bundle_locations.h"
30 #include "base/mac/mac_util.h"
31 #include "base/mac/scoped_nsautorelease_pool.h"
32 #include "base/path_service.h"
33 #endif
34
35 class TestShellTestSuite : public base::TestSuite {
36 public:
37 TestShellTestSuite(int argc, char** argv)
38 : base::TestSuite(argc, argv),
39 platform_delegate_(*CommandLine::ForCurrentProcess()),
40 test_shell_webkit_init_(true) {
41 }
42
43 virtual void Initialize() OVERRIDE {
44 // Override DIR_EXE early in case anything in base::TestSuite uses it.
45 #if defined(OS_MACOSX)
46 base::FilePath path;
47 PathService::Get(base::DIR_EXE, &path);
48 path = path.AppendASCII("TestShell.app");
49 base::mac::SetOverrideFrameworkBundlePath(path);
50 #endif
51
52 base::TestSuite::Initialize();
53
54 const CommandLine& parsed_command_line = *CommandLine::ForCurrentProcess();
55
56 // Allow tests to analyze GC information from V8 log, and expose GC
57 // triggering function.
58 std::string js_flags =
59 parsed_command_line.GetSwitchValueASCII(test_shell::kJavaScriptFlags);
60 js_flags += " --expose_gc";
61 webkit_glue::SetJavaScriptFlags(js_flags);
62
63 // Suppress error dialogs and do not show GP fault error box on Windows.
64 TestShell::InitLogging(true, false, false);
65
66 // Some of the individual tests wind up calling TestShell::WaitTestFinished
67 // which has a timeout in it. For these tests, we don't care about
68 // a timeout so just set it to be really large. This is necessary because
69 // we hit those timeouts under Valgrind.
70 TestShell::SetFileTestTimeout(10 * 60 * 60 * 1000); // Ten hours.
71
72 // Initialize test shell in layout test mode, which will let us load one
73 // request than automatically quit.
74 TestShell::InitializeTestShell(true, false);
75
76 platform_delegate_.InitializeGUI();
77 platform_delegate_.SelectUnifiedTheme();
78 }
79
80 virtual void Shutdown() OVERRIDE {
81 TestShell::ShutdownTestShell();
82 TestShell::CleanupLogging();
83
84 base::TestSuite::Shutdown();
85 }
86
87 private:
88 TestShellPlatformDelegate platform_delegate_;
89
90 // Allocate a message loop for this thread. Although it is not used
91 // directly, its constructor sets up some necessary state.
92 MessageLoopForUI main_message_loop_;
93
94 // Initialize WebKit for this scope.
95 TestShellWebKitInit test_shell_webkit_init_;
96
97 DISALLOW_COPY_AND_ASSIGN(TestShellTestSuite);
98 };
99 6
100 int main(int argc, char** argv) { 7 int main(int argc, char** argv) {
101 #if defined(OS_MACOSX) 8 return 0;
102 base::mac::ScopedNSAutoreleasePool scoped_pool;
103 #endif
104
105 TestShellPlatformDelegate::PreflightArgs(&argc, &argv);
106 return TestShellTestSuite(argc, argv).Run();
107 } 9 }
OLDNEW
« no previous file with comments | « webkit/tools/test_shell/plugin_tests.cc ('k') | webkit/tools/test_shell/test_shell.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698