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" |
19 | 20 |
20 namespace { | 21 namespace { |
21 | 22 |
| 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 |
22 // Content client that exists only to register chrome-extension:// scheme with | 30 // Content client that exists only to register chrome-extension:// scheme with |
23 // the url module. | 31 // the url module. |
24 // TODO(jamescook): Should this be merged with ShellContentClient? Should this | 32 // TODO(jamescook): Should this be merged with ShellContentClient? Should this |
25 // be a persistent object available to tests? | 33 // be a persistent object available to tests? |
26 class ExtensionsContentClient : public content::ContentClient { | 34 class ExtensionsContentClient : public content::ContentClient { |
27 public: | 35 public: |
28 ExtensionsContentClient() {} | 36 ExtensionsContentClient() {} |
29 ~ExtensionsContentClient() override {} | 37 ~ExtensionsContentClient() override {} |
30 | 38 |
31 // content::ContentClient overrides: | 39 // content::ContentClient overrides: |
32 void AddAdditionalSchemes( | 40 void AddAdditionalSchemes( |
33 std::vector<std::string>* standard_schemes, | 41 std::vector<url::SchemeWithType>* standard_schemes, |
34 std::vector<std::string>* savable_schemes) override { | 42 std::vector<std::string>* savable_schemes) override { |
35 standard_schemes->push_back(extensions::kExtensionScheme); | 43 for (int i = 0; i < kNumExtensionStandardURLSchemes; i++) |
| 44 standard_schemes->push_back(kExtensionStandardURLSchemes[i]); |
| 45 |
36 savable_schemes->push_back(extensions::kExtensionScheme); | 46 savable_schemes->push_back(extensions::kExtensionScheme); |
37 standard_schemes->push_back(extensions::kExtensionResourceScheme); | |
38 savable_schemes->push_back(extensions::kExtensionResourceScheme); | 47 savable_schemes->push_back(extensions::kExtensionResourceScheme); |
39 } | 48 } |
40 | 49 |
41 private: | 50 private: |
42 DISALLOW_COPY_AND_ASSIGN(ExtensionsContentClient); | 51 DISALLOW_COPY_AND_ASSIGN(ExtensionsContentClient); |
43 }; | 52 }; |
44 | 53 |
45 // The test suite for extensions_unittests. | 54 // The test suite for extensions_unittests. |
46 class ExtensionsTestSuite : public content::ContentTestSuiteBase { | 55 class ExtensionsTestSuite : public content::ContentTestSuiteBase { |
47 public: | 56 public: |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
100 | 109 |
101 int main(int argc, char** argv) { | 110 int main(int argc, char** argv) { |
102 content::UnitTestTestSuite test_suite(new ExtensionsTestSuite(argc, argv)); | 111 content::UnitTestTestSuite test_suite(new ExtensionsTestSuite(argc, argv)); |
103 | 112 |
104 mojo::embedder::test::InitWithSimplePlatformSupport(); | 113 mojo::embedder::test::InitWithSimplePlatformSupport(); |
105 return base::LaunchUnitTests(argc, | 114 return base::LaunchUnitTests(argc, |
106 argv, | 115 argv, |
107 base::Bind(&content::UnitTestTestSuite::Run, | 116 base::Bind(&content::UnitTestTestSuite::Run, |
108 base::Unretained(&test_suite))); | 117 base::Unretained(&test_suite))); |
109 } | 118 } |
OLD | NEW |