| Index: chrome/browser/managed_mode/managed_mode_browsertest.cc
|
| diff --git a/chrome/browser/managed_mode/managed_mode_browsertest.cc b/chrome/browser/managed_mode/managed_mode_browsertest.cc
|
| index 7199ee5e6554db4210974a6cf31d05f9ddc168a1..ab7488dc19321a7780304923c9dd67a60ffea5a9 100644
|
| --- a/chrome/browser/managed_mode/managed_mode_browsertest.cc
|
| +++ b/chrome/browser/managed_mode/managed_mode_browsertest.cc
|
| @@ -238,4 +238,36 @@ IN_PROC_BROWSER_TEST_F(ManagedModeBlockModeTest,
|
| EXPECT_FALSE(results[1].blocked_visit());
|
| }
|
|
|
| +IN_PROC_BROWSER_TEST_F(ManagedModeBlockModeTest, Unblock) {
|
| + GURL test_url("http://www.example.com/files/simple.html");
|
| + ui_test_utils::NavigateToURL(browser(), test_url);
|
| +
|
| + WebContents* web_contents =
|
| + browser()->tab_strip_model()->GetActiveWebContents();
|
| +
|
| + CheckShownPageIsInterstitial(web_contents);
|
| +
|
| + content::WindowedNotificationObserver observer(
|
| + content::NOTIFICATION_LOAD_STOP,
|
| + content::NotificationService::AllSources());
|
| +
|
| + // Set the host as allowed.
|
| + scoped_ptr<DictionaryValue> dict(new DictionaryValue);
|
| + dict->SetBooleanWithoutPathExpansion(test_url.host(), true);
|
| + policy::ProfilePolicyConnector* connector =
|
| + policy::ProfilePolicyConnectorFactory::GetForProfile(
|
| + browser()->profile());
|
| + policy::ManagedModePolicyProvider* policy_provider =
|
| + connector->managed_mode_policy_provider();
|
| + policy_provider->SetLocalPolicyForTesting(
|
| + policy::key::kContentPackManualBehaviorHosts, dict.PassAs<Value>());
|
| + base::RunLoop().RunUntilIdle();
|
| + EXPECT_EQ(
|
| + ManagedUserService::MANUAL_ALLOW,
|
| + managed_user_service_->GetManualBehaviorForHost(test_url.host()));
|
| +
|
| + observer.Wait();
|
| + EXPECT_EQ(test_url, web_contents->GetURL());
|
| +}
|
| +
|
| } // namespace
|
|
|