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

Unified Diff: chrome/browser/policy/policy_browsertest.cc

Issue 11186002: Add a SafeSearch preference, policy and implementation. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add a SafeSearch preference, policy and implementation. Created 8 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/policy/policy_browsertest.cc
diff --git a/chrome/browser/policy/policy_browsertest.cc b/chrome/browser/policy/policy_browsertest.cc
index 494fe79afd276ac25d0e72cba039d717eb1581db..eae10546881629f9c81889d96be7c2aa7976263f 100644
--- a/chrome/browser/policy/policy_browsertest.cc
+++ b/chrome/browser/policy/policy_browsertest.cc
@@ -647,6 +647,54 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DefaultSearchProvider) {
EXPECT_EQ(GURL(chrome::kAboutBlankURL), web_contents->GetURL());
}
+IN_PROC_BROWSER_TEST_F(PolicyTest, SafeSearch) {
+ // Verifies that requests to the Google Search engine with the SafeSearch
+ // set the safe=active&ssui=on parameters at the end of the query.
Pam (message me for reviews) 2012/10/17 11:37:37 nit: missing some words here ("with the SafeSearch
+ TemplateURLService* service = TemplateURLServiceFactory::GetForProfile(
+ browser()->profile());
+ ui_test_utils::WaitForTemplateURLServiceToLoad(service);
+
+ // First check that nothing happens.
+ chrome::FocusLocationBar(browser());
+ LocationBar* location_bar = browser()->window()->GetLocationBar();
+ ui_test_utils::SendToOmniboxAndSubmit(location_bar, "http://google.com/");
+ OmniboxEditModel* model = location_bar->GetLocationEntry()->model();
+ EXPECT_TRUE(model->CurrentMatch().destination_url.is_valid());
+ content::WebContents* web_contents = chrome::GetActiveWebContents(browser());
+ GURL expected_wo("http://google.com/");
Joao da Silva 2012/10/16 16:26:46 Use a descriptive variable name, such as |expected
Sergiu 2012/10/17 14:48:58 Done.
+ EXPECT_EQ(expected_wo, web_contents->GetURL());
+
+ PrefService* prefs = browser()->profile()->GetPrefs();
+ EXPECT_FALSE(prefs->IsManagedPreference(prefs::kSafeSearchEnabled));
+ EXPECT_FALSE(prefs->GetBoolean(prefs::kSafeSearchEnabled));
+
+ // Override the default SafeSearch setting using policies.
+ PolicyMap policies;
+ policies.Set(key::kSafeSearchEnabled, POLICY_LEVEL_MANDATORY,
+ POLICY_SCOPE_USER, base::Value::CreateBooleanValue(true));
+ provider_.UpdateChromePolicy(policies);
+
+ EXPECT_TRUE(prefs->IsManagedPreference(prefs::kSafeSearchEnabled));
+ EXPECT_TRUE(prefs->GetBoolean(prefs::kSafeSearchEnabled));
+
+ content::WindowedNotificationObserver observer(
+ content::NOTIFICATION_LOAD_COMPLETED_MAIN_FRAME,
+ content::NotificationService::AllSources());
+
+ // Verify that searching from the google.com works
Joao da Silva 2012/10/16 16:26:46 nit: terminate sentence
Pam (message me for reviews) 2012/10/17 11:37:37 Also no "the" before "google.com"
Sergiu 2012/10/17 14:48:58 Done.
+ chrome::FocusLocationBar(browser());
+ location_bar = browser()->window()->GetLocationBar();
+ ui_test_utils::SendToOmniboxAndSubmit(location_bar, "http://google.com/");
+ observer.Wait();
+ model = location_bar->GetLocationEntry()->model();
+ EXPECT_TRUE(model->CurrentMatch().destination_url.is_valid());
+ web_contents = chrome::GetActiveWebContents(browser());
+ std::string expected_url("http://google.com/?");
+ expected_url += chrome::kSSearchParamsSingle;
+ GURL expected_w(expected_url);
Joao da Silva 2012/10/16 16:26:46 Use a descriptive name: |expected_with_params|
Sergiu 2012/10/17 14:48:58 Done.
+ EXPECT_EQ(expected_w, web_contents->GetURL());
+}
+
IN_PROC_BROWSER_TEST_F(PolicyTest, ReplaceSearchTerms) {
CommandLine::ForCurrentProcess()->AppendSwitch(
switches::kEnableInstantExtendedAPI);

Powered by Google App Engine
This is Rietveld 408576698