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 "content/public/test/unittest_test_suite.h" | 5 #include "content/public/test/unittest_test_suite.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/rand_util.h" | 8 #include "base/rand_util.h" |
9 #include "base/test/test_suite.h" | 9 #include "base/test/test_suite.h" |
10 #include "third_party/WebKit/public/platform/Platform.h" | 10 #if !defined(OS_IOS) |
| 11 #include "content/test/test_webkit_platform_support.h" |
| 12 #endif |
11 #include "third_party/WebKit/public/web/WebKit.h" | 13 #include "third_party/WebKit/public/web/WebKit.h" |
12 | 14 |
13 namespace content { | 15 namespace content { |
14 | 16 |
15 #if !defined(OS_IOS) | |
16 // A stubbed out WebKit platform support impl. | |
17 class UnitTestTestSuite::UnitTestWebKitPlatformSupport | |
18 : public blink::Platform { | |
19 public: | |
20 UnitTestWebKitPlatformSupport() {} | |
21 virtual ~UnitTestWebKitPlatformSupport() {} | |
22 virtual void cryptographicallyRandomValues(unsigned char* buffer, | |
23 size_t length) OVERRIDE { | |
24 base::RandBytes(buffer, length); | |
25 } | |
26 virtual const unsigned char* getTraceCategoryEnabledFlag( | |
27 const char* categoryName) { | |
28 // Causes tracing macros to be disabled. | |
29 static const unsigned char kEnabled = 0; | |
30 return &kEnabled; | |
31 } | |
32 }; | |
33 #endif // !OS_IOS | |
34 | |
35 UnitTestTestSuite::UnitTestTestSuite(base::TestSuite* test_suite) | 17 UnitTestTestSuite::UnitTestTestSuite(base::TestSuite* test_suite) |
36 : test_suite_(test_suite) { | 18 : test_suite_(test_suite) { |
37 DCHECK(test_suite); | 19 DCHECK(test_suite); |
38 #if !defined(OS_IOS) | 20 #if !defined(OS_IOS) |
39 webkit_platform_support_.reset(new UnitTestWebKitPlatformSupport); | 21 platform_support_.reset(new TestWebKitPlatformSupport); |
40 blink::initialize(webkit_platform_support_.get()); | |
41 #endif | 22 #endif |
42 } | 23 } |
43 | 24 |
44 UnitTestTestSuite::~UnitTestTestSuite() { | 25 UnitTestTestSuite::~UnitTestTestSuite() { |
45 #if !defined(OS_IOS) | 26 #if !defined(OS_IOS) |
46 blink::shutdown(); | 27 platform_support_.reset(); |
47 #endif | 28 #endif |
48 } | 29 } |
49 | 30 |
50 int UnitTestTestSuite::Run() { | 31 int UnitTestTestSuite::Run() { |
51 return test_suite_->Run(); | 32 return test_suite_->Run(); |
52 } | 33 } |
53 | 34 |
54 } // namespace content | 35 } // namespace content |
OLD | NEW |