OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "base/base_paths.h" | 5 #include "base/base_paths.h" |
6 #include "base/bind.h" | 6 #include "base/bind.h" |
7 #include "base/macros.h" | 7 #include "base/macros.h" |
8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
9 #include "base/test/launcher/unit_test_launcher.h" | 9 #include "base/test/launcher/unit_test_launcher.h" |
10 #include "content/public/common/content_client.h" | 10 #include "content/public/common/content_client.h" |
11 #include "content/public/test/content_test_suite_base.h" | 11 #include "content/public/test/content_test_suite_base.h" |
12 #include "content/public/test/unittest_test_suite.h" | 12 #include "content/public/test/unittest_test_suite.h" |
13 #include "extensions/common/constants.h" | 13 #include "extensions/common/constants.h" |
14 #include "extensions/common/extension_paths.h" | 14 #include "extensions/common/extension_paths.h" |
15 #include "extensions/test/test_extensions_client.h" | 15 #include "extensions/test/test_extensions_client.h" |
16 #include "third_party/mojo/src/mojo/edk/embedder/test_embedder.h" | 16 #include "third_party/mojo/src/mojo/edk/embedder/test_embedder.h" |
17 #include "ui/base/resource/resource_bundle.h" | 17 #include "ui/base/resource/resource_bundle.h" |
18 #include "ui/gl/test/gl_surface_test_support.h" | 18 #include "ui/gl/test/gl_surface_test_support.h" |
19 #include "url/url_util.h" | |
20 | 19 |
21 namespace { | 20 namespace { |
22 | 21 |
23 const int kNumExtensionStandardURLSchemes = 2; | |
24 const url::SchemeWithType kExtensionStandardURLSchemes[ | |
25 kNumExtensionStandardURLSchemes] = { | |
26 {extensions::kExtensionScheme, url::SCHEME_WITHOUT_PORT}, | |
27 {extensions::kExtensionResourceScheme, url::SCHEME_WITHOUT_PORT}, | |
28 }; | |
29 | |
30 // Content client that exists only to register chrome-extension:// scheme with | 22 // Content client that exists only to register chrome-extension:// scheme with |
31 // the url module. | 23 // the url module. |
32 // TODO(jamescook): Should this be merged with ShellContentClient? Should this | 24 // TODO(jamescook): Should this be merged with ShellContentClient? Should this |
33 // be a persistent object available to tests? | 25 // be a persistent object available to tests? |
34 class ExtensionsContentClient : public content::ContentClient { | 26 class ExtensionsContentClient : public content::ContentClient { |
35 public: | 27 public: |
36 ExtensionsContentClient() {} | 28 ExtensionsContentClient() {} |
37 ~ExtensionsContentClient() override {} | 29 ~ExtensionsContentClient() override {} |
38 | 30 |
39 // content::ContentClient overrides: | 31 // content::ContentClient overrides: |
40 void AddAdditionalSchemes( | 32 void AddAdditionalSchemes( |
41 std::vector<url::SchemeWithType>* standard_schemes, | 33 std::vector<std::string>* standard_schemes, |
42 std::vector<std::string>* savable_schemes) override { | 34 std::vector<std::string>* savable_schemes) override { |
43 for (int i = 0; i < kNumExtensionStandardURLSchemes; i++) | 35 standard_schemes->push_back(extensions::kExtensionScheme); |
44 standard_schemes->push_back(kExtensionStandardURLSchemes[i]); | |
45 | |
46 savable_schemes->push_back(extensions::kExtensionScheme); | 36 savable_schemes->push_back(extensions::kExtensionScheme); |
| 37 standard_schemes->push_back(extensions::kExtensionResourceScheme); |
47 savable_schemes->push_back(extensions::kExtensionResourceScheme); | 38 savable_schemes->push_back(extensions::kExtensionResourceScheme); |
48 } | 39 } |
49 | 40 |
50 private: | 41 private: |
51 DISALLOW_COPY_AND_ASSIGN(ExtensionsContentClient); | 42 DISALLOW_COPY_AND_ASSIGN(ExtensionsContentClient); |
52 }; | 43 }; |
53 | 44 |
54 // The test suite for extensions_unittests. | 45 // The test suite for extensions_unittests. |
55 class ExtensionsTestSuite : public content::ContentTestSuiteBase { | 46 class ExtensionsTestSuite : public content::ContentTestSuiteBase { |
56 public: | 47 public: |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 | 100 |
110 int main(int argc, char** argv) { | 101 int main(int argc, char** argv) { |
111 content::UnitTestTestSuite test_suite(new ExtensionsTestSuite(argc, argv)); | 102 content::UnitTestTestSuite test_suite(new ExtensionsTestSuite(argc, argv)); |
112 | 103 |
113 mojo::embedder::test::InitWithSimplePlatformSupport(); | 104 mojo::embedder::test::InitWithSimplePlatformSupport(); |
114 return base::LaunchUnitTests(argc, | 105 return base::LaunchUnitTests(argc, |
115 argv, | 106 argv, |
116 base::Bind(&content::UnitTestTestSuite::Run, | 107 base::Bind(&content::UnitTestTestSuite::Run, |
117 base::Unretained(&test_suite))); | 108 base::Unretained(&test_suite))); |
118 } | 109 } |
OLD | NEW |