Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(40)

Side by Side Diff: chrome/common/extensions/manifest_tests/extension_manifests_background_unittest.cc

Issue 12207167: Cleanup: Remove deprecated base::Value methods from chrome/common. Use base::Value too. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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/manifest_tests/extension_manifest_test.h" 5 #include "chrome/common/extensions/manifest_tests/extension_manifest_test.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/values.h" 9 #include "base/values.h"
10 #include "chrome/common/chrome_switches.h" 10 #include "chrome/common/chrome_switches.h"
11 #include "chrome/common/extensions/extension.h" 11 #include "chrome/common/extensions/extension.h"
12 #include "chrome/common/extensions/extension_manifest_constants.h" 12 #include "chrome/common/extensions/extension_manifest_constants.h"
13 #include "chrome/common/extensions/features/base_feature_provider.h" 13 #include "chrome/common/extensions/features/base_feature_provider.h"
14 #include "chrome/common/extensions/features/feature.h" 14 #include "chrome/common/extensions/features/feature.h"
15 #include "extensions/common/error_utils.h" 15 #include "extensions/common/error_utils.h"
16 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
17 17
18 namespace errors = extension_manifest_errors; 18 namespace errors = extension_manifest_errors;
19 namespace keys = extension_manifest_keys; 19 namespace keys = extension_manifest_keys;
20 20
21 namespace extensions { 21 namespace extensions {
22 22
23 TEST_F(ExtensionManifestTest, BackgroundPermission) { 23 TEST_F(ExtensionManifestTest, BackgroundPermission) {
24 LoadAndExpectError("background_permission.json", 24 LoadAndExpectError("background_permission.json",
25 errors::kBackgroundPermissionNeeded); 25 errors::kBackgroundPermissionNeeded);
26 } 26 }
27 27
28 TEST_F(ExtensionManifestTest, BackgroundScripts) { 28 TEST_F(ExtensionManifestTest, BackgroundScripts) {
29 std::string error; 29 std::string error;
30 scoped_ptr<DictionaryValue> manifest( 30 scoped_ptr<base::DictionaryValue> manifest(
31 LoadManifest("background_scripts.json", &error)); 31 LoadManifest("background_scripts.json", &error));
32 ASSERT_TRUE(manifest.get()); 32 ASSERT_TRUE(manifest.get());
33 33
34 scoped_refptr<Extension> extension( 34 scoped_refptr<Extension> extension(
35 LoadAndExpectSuccess(Manifest(manifest.get(), ""))); 35 LoadAndExpectSuccess(Manifest(manifest.get(), "")));
36 ASSERT_TRUE(extension); 36 ASSERT_TRUE(extension);
37 EXPECT_EQ(2u, extension->background_scripts().size()); 37 EXPECT_EQ(2u, extension->background_scripts().size());
38 EXPECT_EQ("foo.js", extension->background_scripts()[0u]); 38 EXPECT_EQ("foo.js", extension->background_scripts()[0u]);
39 EXPECT_EQ("bar/baz.js", extension->background_scripts()[1u]); 39 EXPECT_EQ("bar/baz.js", extension->background_scripts()[1u]);
40 40
41 EXPECT_TRUE(extension->has_background_page()); 41 EXPECT_TRUE(extension->has_background_page());
42 EXPECT_EQ(std::string("/") + 42 EXPECT_EQ(std::string("/") +
43 extension_filenames::kGeneratedBackgroundPageFilename, 43 extension_filenames::kGeneratedBackgroundPageFilename,
44 extension->GetBackgroundURL().path()); 44 extension->GetBackgroundURL().path());
45 45
46 manifest->SetString("background_page", "monkey.html"); 46 manifest->SetString("background_page", "monkey.html");
47 LoadAndExpectError(Manifest(manifest.get(), ""), 47 LoadAndExpectError(Manifest(manifest.get(), ""),
48 errors::kInvalidBackgroundCombination); 48 errors::kInvalidBackgroundCombination);
49 } 49 }
50 50
51 TEST_F(ExtensionManifestTest, BackgroundPage) { 51 TEST_F(ExtensionManifestTest, BackgroundPage) {
52 scoped_refptr<Extension> extension( 52 scoped_refptr<Extension> extension(
53 LoadAndExpectSuccess("background_page.json")); 53 LoadAndExpectSuccess("background_page.json"));
54 ASSERT_TRUE(extension); 54 ASSERT_TRUE(extension);
55 EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path()); 55 EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path());
56 EXPECT_TRUE(extension->allow_background_js_access()); 56 EXPECT_TRUE(extension->allow_background_js_access());
57 57
58 std::string error; 58 std::string error;
59 scoped_ptr<DictionaryValue> manifest( 59 scoped_ptr<base::DictionaryValue> manifest(
60 LoadManifest("background_page_legacy.json", &error)); 60 LoadManifest("background_page_legacy.json", &error));
61 ASSERT_TRUE(manifest.get()); 61 ASSERT_TRUE(manifest.get());
62 extension = LoadAndExpectSuccess(Manifest(manifest.get(), "")); 62 extension = LoadAndExpectSuccess(Manifest(manifest.get(), ""));
63 ASSERT_TRUE(extension); 63 ASSERT_TRUE(extension);
64 EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path()); 64 EXPECT_EQ("/foo.html", extension->GetBackgroundURL().path());
65 65
66 manifest->SetInteger(keys::kManifestVersion, 2); 66 manifest->SetInteger(keys::kManifestVersion, 2);
67 LoadAndExpectWarning( 67 LoadAndExpectWarning(
68 Manifest(manifest.get(), ""), 68 Manifest(manifest.get(), ""),
69 "'background_page' requires manifest version of 1 or lower."); 69 "'background_page' requires manifest version of 1 or lower.");
(...skipping 10 matching lines...) Expand all
80 EXPECT_FALSE(extension->allow_background_js_access()); 80 EXPECT_FALSE(extension->allow_background_js_access());
81 } 81 }
82 82
83 TEST_F(ExtensionManifestTest, BackgroundPageWebRequest) { 83 TEST_F(ExtensionManifestTest, BackgroundPageWebRequest) {
84 CommandLine::ForCurrentProcess()->AppendSwitch( 84 CommandLine::ForCurrentProcess()->AppendSwitch(
85 switches::kEnableExperimentalExtensionApis); 85 switches::kEnableExperimentalExtensionApis);
86 Feature::ScopedCurrentChannel current_channel( 86 Feature::ScopedCurrentChannel current_channel(
87 chrome::VersionInfo::CHANNEL_DEV); 87 chrome::VersionInfo::CHANNEL_DEV);
88 88
89 std::string error; 89 std::string error;
90 scoped_ptr<DictionaryValue> manifest( 90 scoped_ptr<base::DictionaryValue> manifest(
91 LoadManifest("background_page.json", &error)); 91 LoadManifest("background_page.json", &error));
92 ASSERT_TRUE(manifest.get()); 92 ASSERT_TRUE(manifest.get());
93 manifest->SetBoolean(keys::kBackgroundPersistent, false); 93 manifest->SetBoolean(keys::kBackgroundPersistent, false);
94 manifest->SetInteger(keys::kManifestVersion, 2); 94 manifest->SetInteger(keys::kManifestVersion, 2);
95 scoped_refptr<Extension> extension( 95 scoped_refptr<Extension> extension(
96 LoadAndExpectSuccess(Manifest(manifest.get(), ""))); 96 LoadAndExpectSuccess(Manifest(manifest.get(), "")));
97 ASSERT_TRUE(extension); 97 ASSERT_TRUE(extension);
98 EXPECT_TRUE(extension->has_lazy_background_page()); 98 EXPECT_TRUE(extension->has_lazy_background_page());
99 99
100 ListValue* permissions = new ListValue(); 100 base::ListValue* permissions = new base::ListValue();
101 permissions->Append(Value::CreateStringValue("webRequest")); 101 permissions->Append(new base::StringValue("webRequest"));
102 manifest->Set(keys::kPermissions, permissions); 102 manifest->Set(keys::kPermissions, permissions);
103 LoadAndExpectError(Manifest(manifest.get(), ""), 103 LoadAndExpectError(Manifest(manifest.get(), ""),
104 errors::kWebRequestConflictsWithLazyBackground); 104 errors::kWebRequestConflictsWithLazyBackground);
105 } 105 }
106 106
107 } // namespace extensions 107 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698