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 "chrome/common/extensions/extension_manifest_constants.h" | 5 #include "chrome/common/extensions/extension_manifest_constants.h" |
6 #include "chrome/common/extensions/manifest_handler.h" | |
7 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" | 6 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h" |
8 #include "chrome/common/extensions/manifest_url_handler.h" | 7 #include "chrome/common/extensions/manifest_url_handler.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
10 | 9 |
11 namespace errors = extension_manifest_errors; | 10 namespace errors = extension_manifest_errors; |
12 | 11 |
13 class URLOverridesManifestTest : public ExtensionManifestTest { | 12 class URLOverridesManifestTest : public ExtensionManifestTest { |
14 virtual void SetUp() OVERRIDE { | 13 virtual void SetUp() OVERRIDE { |
15 ExtensionManifestTest::SetUp(); | 14 ExtensionManifestTest::SetUp(); |
16 extensions::ManifestHandler::Register( | 15 (new extensions::URLOverridesHandler)->Register(); |
17 extension_manifest_keys::kChromeURLOverrides, | |
18 make_linked_ptr(new extensions::URLOverridesHandler)); | |
19 } | 16 } |
20 }; | 17 }; |
21 | 18 |
22 TEST_F(URLOverridesManifestTest, Override) { | 19 TEST_F(URLOverridesManifestTest, Override) { |
23 Testcase testcases[] = { | 20 Testcase testcases[] = { |
24 Testcase("override_newtab_and_history.json", errors::kMultipleOverrides), | 21 Testcase("override_newtab_and_history.json", errors::kMultipleOverrides), |
25 Testcase("override_invalid_page.json", errors::kInvalidChromeURLOverrides) | 22 Testcase("override_invalid_page.json", errors::kInvalidChromeURLOverrides) |
26 }; | 23 }; |
27 RunTestcases(testcases, arraysize(testcases), | 24 RunTestcases(testcases, arraysize(testcases), |
28 EXPECT_TYPE_ERROR); | 25 EXPECT_TYPE_ERROR); |
29 | 26 |
30 scoped_refptr<extensions::Extension> extension; | 27 scoped_refptr<extensions::Extension> extension; |
31 | 28 |
32 extension = LoadAndExpectSuccess("override_new_tab.json"); | 29 extension = LoadAndExpectSuccess("override_new_tab.json"); |
33 EXPECT_EQ(extension->url().spec() + "newtab.html", | 30 EXPECT_EQ(extension->url().spec() + "newtab.html", |
34 extensions::URLOverrides::GetChromeURLOverrides(extension). | 31 extensions::URLOverrides::GetChromeURLOverrides(extension). |
35 find("newtab")->second.spec()); | 32 find("newtab")->second.spec()); |
36 | 33 |
37 extension = LoadAndExpectSuccess("override_history.json"); | 34 extension = LoadAndExpectSuccess("override_history.json"); |
38 EXPECT_EQ(extension->url().spec() + "history.html", | 35 EXPECT_EQ(extension->url().spec() + "history.html", |
39 extensions::URLOverrides::GetChromeURLOverrides(extension). | 36 extensions::URLOverrides::GetChromeURLOverrides(extension). |
40 find("history")->second.spec()); | 37 find("history")->second.spec()); |
41 } | 38 } |
OLD | NEW |