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

Side by Side Diff: chrome/browser/search_engines/default_search_policy_handler_unittest.cc

Issue 237653002: Import policy data into default search dictionary pref. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase on dict pref change Created 6 years, 7 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 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 "base/memory/scoped_ptr.h" 5 #include "base/memory/scoped_ptr.h"
6 #include "chrome/browser/search_engines/default_search_manager.h"
6 #include "chrome/browser/search_engines/default_search_policy_handler.h" 7 #include "chrome/browser/search_engines/default_search_policy_handler.h"
7 #include "chrome/common/pref_names.h" 8 #include "chrome/common/pref_names.h"
8 #include "components/policy/core/browser/configuration_policy_pref_store.h" 9 #include "components/policy/core/browser/configuration_policy_pref_store.h"
9 #include "components/policy/core/browser/configuration_policy_pref_store_test.h" 10 #include "components/policy/core/browser/configuration_policy_pref_store_test.h"
10 #include "policy/policy_constants.h" 11 #include "policy/policy_constants.h"
11 12
13 namespace {
14 // TODO(caitkp): Should we find a way to route this through DefaultSearchManager
15 // to avoid hardcoding this here?
16 const char kDefaultSearchProviderData[] =
17 "default_search_provider_data.template_url_data";
18 } // namespace
19
12 namespace policy { 20 namespace policy {
13 21
14 class DefaultSearchPolicyHandlerTest 22 class DefaultSearchPolicyHandlerTest
15 : public ConfigurationPolicyPrefStoreTest { 23 : public ConfigurationPolicyPrefStoreTest {
16 public: 24 public:
17 DefaultSearchPolicyHandlerTest() { 25 DefaultSearchPolicyHandlerTest() {
18 default_alternate_urls_.AppendString( 26 default_alternate_urls_.AppendString(
19 "http://www.google.com/#q={searchTerms}"); 27 "http://www.google.com/#q={searchTerms}");
20 default_alternate_urls_.AppendString( 28 default_alternate_urls_.AppendString(
21 "http://www.google.com/search#q={searchTerms}"); 29 "http://www.google.com/search#q={searchTerms}");
(...skipping 268 matching lines...) Expand 10 before | Expand all | Expand 10 after
290 298
291 const base::Value* value = NULL; 299 const base::Value* value = NULL;
292 EXPECT_TRUE(store_->GetValue(prefs::kDefaultSearchProviderEnabled, &value)); 300 EXPECT_TRUE(store_->GetValue(prefs::kDefaultSearchProviderEnabled, &value));
293 base::FundamentalValue expected_enabled(false); 301 base::FundamentalValue expected_enabled(false);
294 EXPECT_TRUE(base::Value::Equals(&expected_enabled, value)); 302 EXPECT_TRUE(base::Value::Equals(&expected_enabled, value));
295 EXPECT_TRUE(store_->GetValue(prefs::kDefaultSearchProviderSearchURL, &value)); 303 EXPECT_TRUE(store_->GetValue(prefs::kDefaultSearchProviderSearchURL, &value));
296 base::StringValue expected_search_url((std::string())); 304 base::StringValue expected_search_url((std::string()));
297 EXPECT_TRUE(base::Value::Equals(&expected_search_url, value)); 305 EXPECT_TRUE(base::Value::Equals(&expected_search_url, value));
298 } 306 }
299 307
308 // Checks that for a fully defined search policy, all elements have been
309 // read properly into the dictionary pref.
310 TEST_F(DefaultSearchPolicyHandlerTest, DictionaryPref) {
311 PolicyMap policy;
312 BuildDefaultSearchPolicy(&policy);
313 UpdateProviderPolicy(policy);
314
315 const base::Value* temp = NULL;
316 const base::DictionaryValue* dictionary;
317 std::string value;
318 const base::ListValue* list_value;
319 EXPECT_TRUE(store_->GetValue(kDefaultSearchProviderData, &temp));
320 temp->GetAsDictionary(&dictionary);
321
322 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kURL, &value));
323 EXPECT_EQ(kSearchURL, value);
324 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kShortName, &value));
325 EXPECT_EQ(kName, value);
326 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kKeyword, &value));
327 EXPECT_EQ(kKeyword, value);
328
329 EXPECT_TRUE(
330 dictionary->GetString(DefaultSearchManager::kSuggestionsURL, &value));
331 EXPECT_EQ(kSuggestURL, value);
332 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kFaviconURL, &value));
333 EXPECT_EQ(kIconURL, value);
334
335 base::ListValue encodings;
336 encodings.AppendString("UTF-16");
337 encodings.AppendString("UTF-8");
338
339 EXPECT_TRUE(
340 dictionary->GetList(DefaultSearchManager::kInputEncodings, &list_value));
341 EXPECT_TRUE(encodings.Equals(list_value));
342
343 EXPECT_TRUE(
344 dictionary->GetList(DefaultSearchManager::kAlternateURLs, &list_value));
345 EXPECT_TRUE(default_alternate_urls_.Equals(list_value));
346
347 EXPECT_TRUE(dictionary->GetString(
348 DefaultSearchManager::kSearchTermsReplacementKey, &value));
349 EXPECT_EQ(kReplacementKey, value);
350
351 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kImageURL, &value));
352 EXPECT_EQ(kImageURL, value);
353
354 EXPECT_TRUE(
355 dictionary->GetString(DefaultSearchManager::kImageURLPostParams, &value));
356 EXPECT_EQ(kImageParams, value);
357
358 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kSearchURLPostParams,
359 &value));
360 EXPECT_EQ(std::string(), value);
361
362 EXPECT_TRUE(dictionary->GetString(
363 DefaultSearchManager::kSuggestionsURLPostParams, &value));
364 EXPECT_EQ(std::string(), value);
365
366 EXPECT_TRUE(dictionary->GetString(DefaultSearchManager::kInstantURLPostParams,
367 &value));
368 EXPECT_EQ(std::string(), value);
369 }
370
371 // Checks that disabling default search is properly reflected the dictionary
372 // pref.
373 TEST_F(DefaultSearchPolicyHandlerTest, DictionaryPrefDSEDisabled) {
374 PolicyMap policy;
375 policy.Set(key::kDefaultSearchProviderEnabled, POLICY_LEVEL_MANDATORY,
376 POLICY_SCOPE_USER, base::Value::CreateBooleanValue(false), NULL);
Peter Kasting 2014/04/29 01:47:32 Nit: Indenting
Cait (Slow) 2014/04/29 17:14:51 Done.
377 UpdateProviderPolicy(policy);
378 const base::Value* temp = NULL;
379 const base::DictionaryValue* dictionary;
380 EXPECT_TRUE(store_->GetValue(kDefaultSearchProviderData, &temp));
381 temp->GetAsDictionary(&dictionary);
382 bool disabled = false;
383 EXPECT_TRUE(dictionary->GetBoolean(DefaultSearchManager::kDisabledByPolicy,
384 &disabled));
385 EXPECT_TRUE(disabled);
386
387 }
300 } // namespace policy 388 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698