OLD | NEW |
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 #include <atlbase.h> | 5 #include <atlbase.h> |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/metrics/field_trial.h" | |
9 #include "base/process_util.h" | 8 #include "base/process_util.h" |
10 #include "base/test/test_suite.h" | 9 #include "base/test/test_suite.h" |
11 #include "base/threading/platform_thread.h" | 10 #include "base/threading/platform_thread.h" |
12 #include "base/win/scoped_com_initializer.h" | 11 #include "base/win/scoped_com_initializer.h" |
13 #include "chrome/common/chrome_paths.h" | 12 #include "chrome/common/chrome_paths.h" |
14 #include "chrome/common/metrics/entropy_provider.h" | 13 #include "chrome/common/metrics/entropy_provider.h" |
15 #include "chrome/test/logging/win/test_log_collector.h" | 14 #include "chrome/test/logging/win/test_log_collector.h" |
16 #include "chrome_frame/crash_server_init.h" | 15 #include "chrome_frame/crash_server_init.h" |
17 #include "chrome_frame/test/chrome_frame_test_utils.h" | 16 #include "chrome_frame/test/chrome_frame_test_utils.h" |
18 #include "chrome_frame/test/chrome_frame_ui_test_utils.h" | 17 #include "chrome_frame/test/chrome_frame_ui_test_utils.h" |
(...skipping 29 matching lines...) Expand all Loading... |
48 // For ATL in VS2010 and up, ChromeFrameUnittestsModule::InitializeCom() is | 47 // For ATL in VS2010 and up, ChromeFrameUnittestsModule::InitializeCom() is |
49 // not called, so we init COM here. | 48 // not called, so we init COM here. |
50 base::win::ScopedCOMInitializer com_initializer_; | 49 base::win::ScopedCOMInitializer com_initializer_; |
51 | 50 |
52 ScopedChromeFrameRegistrar::RegisterAndExitProcessIfDirected(); | 51 ScopedChromeFrameRegistrar::RegisterAndExitProcessIfDirected(); |
53 base::EnableTerminationOnHeapCorruption(); | 52 base::EnableTerminationOnHeapCorruption(); |
54 base::PlatformThread::SetName("ChromeFrame tests"); | 53 base::PlatformThread::SetName("ChromeFrame tests"); |
55 | 54 |
56 _set_purecall_handler(PureCall); | 55 _set_purecall_handler(PureCall); |
57 | 56 |
58 // Set up a FieldTrialList to keep any field trials we have going in | |
59 // Chrome Frame happy. | |
60 base::FieldTrialList field_trial_list(new metrics::SHA1EntropyProvider("42")); | |
61 | |
62 base::TestSuite test_suite(argc, argv); | 57 base::TestSuite test_suite(argc, argv); |
63 | 58 |
64 SetConfigBool(kChromeFrameHeadlessMode, true); | 59 SetConfigBool(kChromeFrameHeadlessMode, true); |
65 SetConfigBool(kChromeFrameAccessibleMode, true); | 60 SetConfigBool(kChromeFrameAccessibleMode, true); |
66 | 61 |
67 base::ProcessHandle crash_service = NULL; | 62 base::ProcessHandle crash_service = NULL; |
68 google_breakpad::scoped_ptr<google_breakpad::ExceptionHandler> breakpad; | 63 google_breakpad::scoped_ptr<google_breakpad::ExceptionHandler> breakpad; |
69 | 64 |
70 if (!CommandLine::ForCurrentProcess()->HasSwitch(kNoCrashService)) { | 65 if (!CommandLine::ForCurrentProcess()->HasSwitch(kNoCrashService)) { |
71 crash_service = chrome_frame_test::StartCrashService(); | 66 crash_service = chrome_frame_test::StartCrashService(); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
105 ret = test_suite.Run(); | 100 ret = test_suite.Run(); |
106 } | 101 } |
107 | 102 |
108 DeleteConfigValue(kChromeFrameHeadlessMode); | 103 DeleteConfigValue(kChromeFrameHeadlessMode); |
109 DeleteConfigValue(kChromeFrameAccessibleMode); | 104 DeleteConfigValue(kChromeFrameAccessibleMode); |
110 | 105 |
111 if (crash_service) | 106 if (crash_service) |
112 base::KillProcess(crash_service, 0, false); | 107 base::KillProcess(crash_service, 0, false); |
113 return ret; | 108 return ret; |
114 } | 109 } |
OLD | NEW |