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.
5 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h"
6 #include "chrome/common/extensions/manifest_url_handler.h"
7 #include "extensions/common/manifest_constants.h"
8 #include "testing/gtest/include/gtest/gtest.h"
10 namespace errors
= extensions::manifest_errors
;
12 class URLOverridesManifestTest
: public ExtensionManifestTest
{
15 TEST_F(URLOverridesManifestTest
, Override
) {
16 Testcase testcases
[] = {
17 Testcase("override_newtab_and_history.json", errors::kMultipleOverrides
),
18 Testcase("override_invalid_page.json", errors::kInvalidChromeURLOverrides
)
20 RunTestcases(testcases
, arraysize(testcases
),
23 scoped_refptr
<extensions::Extension
> extension
;
25 extension
= LoadAndExpectSuccess("override_new_tab.json");
26 EXPECT_EQ(extension
->url().spec() + "newtab.html",
27 extensions::URLOverrides::GetChromeURLOverrides(extension
.get())
28 .find("newtab")->second
.spec());
30 extension
= LoadAndExpectSuccess("override_history.json");
31 EXPECT_EQ(extension
->url().spec() + "history.html",
32 extensions::URLOverrides::GetChromeURLOverrides(extension
.get())
33 .find("history")->second
.spec());