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

Side by Side Diff: chrome/common/extensions/manifest_handlers/settings_overrides_handler_unittest.cc

Issue 925783002: Split ValueSerializer into separate Serializer and Deserializer classes. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed cpplint warnings. Created 5 years, 9 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_handlers/settings_overrides_handler. h" 5 #include "chrome/common/extensions/manifest_handlers/settings_overrides_handler. h"
6 6
7 #include "base/json/json_string_value_serializer.h" 7 #include "base/json/json_string_value_serializer.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "extensions/common/error_utils.h" 9 #include "extensions/common/error_utils.h"
10 #include "extensions/common/extension.h" 10 #include "extensions/common/extension.h"
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 using extensions::Manifest; 67 using extensions::Manifest;
68 using extensions::SettingsOverrides; 68 using extensions::SettingsOverrides;
69 namespace manifest_keys = extensions::manifest_keys; 69 namespace manifest_keys = extensions::manifest_keys;
70 70
71 class OverrideSettingsTest : public testing::Test { 71 class OverrideSettingsTest : public testing::Test {
72 }; 72 };
73 73
74 74
75 TEST_F(OverrideSettingsTest, ParseManifest) { 75 TEST_F(OverrideSettingsTest, ParseManifest) {
76 std::string manifest(kManifest); 76 std::string manifest(kManifest);
77 JSONStringValueSerializer json(&manifest); 77 JSONStringValueDeserializer json(manifest);
78 std::string error; 78 std::string error;
79 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error)); 79 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error));
80 ASSERT_TRUE(root); 80 ASSERT_TRUE(root);
81 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY)); 81 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY));
82 scoped_refptr<Extension> extension = Extension::Create( 82 scoped_refptr<Extension> extension = Extension::Create(
83 base::FilePath(FILE_PATH_LITERAL("//nonexistent")), 83 base::FilePath(FILE_PATH_LITERAL("//nonexistent")),
84 Manifest::INVALID_LOCATION, 84 Manifest::INVALID_LOCATION,
85 *static_cast<base::DictionaryValue*>(root.get()), 85 *static_cast<base::DictionaryValue*>(root.get()),
86 Extension::NO_FLAGS, 86 Extension::NO_FLAGS,
87 &error); 87 &error);
(...skipping 22 matching lines...) Expand all
110 ASSERT_TRUE(settings_override->homepage); 110 ASSERT_TRUE(settings_override->homepage);
111 EXPECT_EQ(GURL("http://www.homepage.com"), *settings_override->homepage); 111 EXPECT_EQ(GURL("http://www.homepage.com"), *settings_override->homepage);
112 #else 112 #else
113 EXPECT_FALSE( 113 EXPECT_FALSE(
114 extension->manifest()->HasPath(manifest_keys::kSettingsOverride)); 114 extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
115 #endif 115 #endif
116 } 116 }
117 117
118 TEST_F(OverrideSettingsTest, ParsePrepopulatedId) { 118 TEST_F(OverrideSettingsTest, ParsePrepopulatedId) {
119 std::string manifest(kPrepopulatedManifest); 119 std::string manifest(kPrepopulatedManifest);
120 JSONStringValueSerializer json(&manifest); 120 JSONStringValueDeserializer json(manifest);
121 std::string error; 121 std::string error;
122 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error)); 122 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error));
123 ASSERT_TRUE(root); 123 ASSERT_TRUE(root);
124 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY)); 124 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY));
125 scoped_refptr<Extension> extension = 125 scoped_refptr<Extension> extension =
126 Extension::Create(base::FilePath(FILE_PATH_LITERAL("//nonexistent")), 126 Extension::Create(base::FilePath(FILE_PATH_LITERAL("//nonexistent")),
127 Manifest::INVALID_LOCATION, 127 Manifest::INVALID_LOCATION,
128 *static_cast<base::DictionaryValue*>(root.get()), 128 *static_cast<base::DictionaryValue*>(root.get()),
129 Extension::NO_FLAGS, 129 Extension::NO_FLAGS,
130 &error); 130 &error);
(...skipping 12 matching lines...) Expand all
143 EXPECT_EQ("http://www.foo.com/s?q={searchTerms}", search_engine->search_url); 143 EXPECT_EQ("http://www.foo.com/s?q={searchTerms}", search_engine->search_url);
144 EXPECT_EQ(3, *search_engine->prepopulated_id); 144 EXPECT_EQ(3, *search_engine->prepopulated_id);
145 #else 145 #else
146 EXPECT_FALSE( 146 EXPECT_FALSE(
147 extension->manifest()->HasPath(manifest_keys::kSettingsOverride)); 147 extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
148 #endif 148 #endif
149 } 149 }
150 150
151 TEST_F(OverrideSettingsTest, ParseBrokenManifest) { 151 TEST_F(OverrideSettingsTest, ParseBrokenManifest) {
152 std::string manifest(kBrokenManifest); 152 std::string manifest(kBrokenManifest);
153 JSONStringValueSerializer json(&manifest); 153 JSONStringValueDeserializer json(manifest);
154 std::string error; 154 std::string error;
155 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error)); 155 scoped_ptr<base::Value> root(json.Deserialize(NULL, &error));
156 ASSERT_TRUE(root); 156 ASSERT_TRUE(root);
157 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY)); 157 ASSERT_TRUE(root->IsType(base::Value::TYPE_DICTIONARY));
158 scoped_refptr<Extension> extension = Extension::Create( 158 scoped_refptr<Extension> extension = Extension::Create(
159 base::FilePath(FILE_PATH_LITERAL("//nonexistent")), 159 base::FilePath(FILE_PATH_LITERAL("//nonexistent")),
160 Manifest::INVALID_LOCATION, 160 Manifest::INVALID_LOCATION,
161 *static_cast<base::DictionaryValue*>(root.get()), 161 *static_cast<base::DictionaryValue*>(root.get()),
162 Extension::NO_FLAGS, 162 Extension::NO_FLAGS,
163 &error); 163 &error);
164 #if defined(OS_WIN) 164 #if defined(OS_WIN)
165 EXPECT_FALSE(extension.get()); 165 EXPECT_FALSE(extension.get());
166 EXPECT_EQ( 166 EXPECT_EQ(
167 extensions::ErrorUtils::FormatErrorMessage( 167 extensions::ErrorUtils::FormatErrorMessage(
168 extensions::manifest_errors::kInvalidEmptyDictionary, 168 extensions::manifest_errors::kInvalidEmptyDictionary,
169 extensions::manifest_keys::kSettingsOverride), 169 extensions::manifest_keys::kSettingsOverride),
170 error); 170 error);
171 #else 171 #else
172 EXPECT_TRUE(extension.get()); 172 EXPECT_TRUE(extension.get());
173 EXPECT_FALSE( 173 EXPECT_FALSE(
174 extension->manifest()->HasPath(manifest_keys::kSettingsOverride)); 174 extension->manifest()->HasPath(manifest_keys::kSettingsOverride));
175 #endif 175 #endif
176 } 176 }
177 177
178 } // namespace 178 } // namespace
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698