OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "base/memory/scoped_ptr.h" | |
6 #include "base/process/kill.h" | |
7 #include "base/test/perf_test_suite.h" | |
8 #include "base/threading/platform_thread.h" | |
9 #include "chrome/common/chrome_paths.h" | |
10 #include "chrome_frame/test/chrome_frame_test_utils.h" | |
11 #include "chrome_frame/test_utils.h" | |
12 #include "chrome_frame/utils.h" | |
13 | |
14 void PureCall() { | |
15 __debugbreak(); | |
16 } | |
17 | |
18 int main(int argc, char **argv) { | |
19 ScopedChromeFrameRegistrar::RegisterAndExitProcessIfDirected(); | |
20 base::PerfTestSuite perf_suite(argc, argv); | |
21 base::PlatformThread::SetName("ChromeFrame perf tests"); | |
22 | |
23 _set_purecall_handler(PureCall); | |
24 | |
25 SetConfigBool(kChromeFrameHeadlessMode, true); | |
26 SetConfigBool(kChromeFrameUnpinnedMode, true); | |
27 | |
28 // Use ctor/raii to register the local Chrome Frame dll. | |
29 scoped_ptr<ScopedChromeFrameRegistrar> registrar( | |
30 new ScopedChromeFrameRegistrar( | |
31 ScopedChromeFrameRegistrar::SYSTEM_LEVEL)); | |
32 | |
33 base::ProcessHandle crash_service = chrome_frame_test::StartCrashService(); | |
34 | |
35 int ret = perf_suite.Run(); | |
36 | |
37 DeleteConfigValue(kChromeFrameHeadlessMode); | |
38 DeleteConfigValue(kChromeFrameUnpinnedMode); | |
39 | |
40 if (crash_service) | |
41 base::KillProcess(crash_service, 0, false); | |
42 return ret; | |
43 } | |
OLD | NEW |