Index: chrome/browser/policy/policy_prefs_browsertest.cc |
diff --git a/chrome/browser/policy/policy_prefs_browsertest.cc b/chrome/browser/policy/policy_prefs_browsertest.cc |
index 7991c3fb521fef74d63f9018822d39d6240ed27c..294fc537f72a2b89b4e7e121fd93929a949da407 100644 |
--- a/chrome/browser/policy/policy_prefs_browsertest.cc |
+++ b/chrome/browser/policy/policy_prefs_browsertest.cc |
@@ -41,18 +41,7 @@ namespace policy { |
namespace { |
-const char* kSettingsPages[] = { |
- "chrome://settings-frame", |
- "chrome://settings-frame/searchEngines", |
- "chrome://settings-frame/passwords", |
- "chrome://settings-frame/autofill", |
- "chrome://settings-frame/content", |
- "chrome://settings-frame/homePageOverlay", |
- "chrome://settings-frame/languages", |
-#if defined(OS_CHROMEOS) |
- "chrome://settings-frame/accounts", |
-#endif |
-}; |
+const char kMainSettingsPage[] = "chrome://settings-frame"; |
const char kCrosSettingsPrefix[] = "cros."; |
@@ -173,9 +162,6 @@ class PolicyTestCase { |
test_policy_.CopyFrom(policy); |
} |
- const std::vector<GURL>& settings_pages() const { return settings_pages_; } |
- void AddSettingsPage(const GURL& url) { settings_pages_.push_back(url); } |
- |
const ScopedVector<PrefMapping>& pref_mappings() const { |
return pref_mappings_; |
} |
@@ -189,7 +175,6 @@ class PolicyTestCase { |
bool can_be_recommended_; |
std::vector<std::string> supported_os_; |
PolicyMap test_policy_; |
- std::vector<GURL> settings_pages_; |
ScopedVector<PrefMapping> pref_mappings_; |
DISALLOW_COPY_AND_ASSIGN(PolicyTestCase); |
@@ -270,14 +255,6 @@ class PolicyTestCases { |
policy.LoadFrom(policy_dict, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER); |
policy_test_case->SetTestPolicy(policy); |
} |
- const base::ListValue* settings_pages = NULL; |
- if (policy_test_dict->GetList("settings_pages", &settings_pages)) { |
- for (size_t i = 0; i < settings_pages->GetSize(); ++i) { |
- std::string page; |
- if (settings_pages->GetString(i, &page)) |
- policy_test_case->AddSettingsPage(GURL(page)); |
- } |
- } |
const base::ListValue* pref_mappings = NULL; |
if (policy_test_dict->GetList("pref_mappings", &pref_mappings)) { |
for (size_t i = 0; i < pref_mappings->GetSize(); ++i) { |
@@ -328,25 +305,6 @@ class PolicyTestCases { |
DISALLOW_COPY_AND_ASSIGN(PolicyTestCases); |
}; |
-bool IsBannerVisible(Browser* browser) { |
- content::WebContents* contents = chrome::GetActiveWebContents(browser); |
- bool result = false; |
- EXPECT_TRUE(content::ExecuteJavaScriptAndExtractBool( |
- contents->GetRenderViewHost(), |
- std::wstring(), |
- L"var visible = false;" |
- L"var banners = document.querySelectorAll('.page-banner');" |
- L"for (var i = 0; i < banners.length; i++) {" |
- L" if (banners[i].parentElement.id == 'templates')" |
- L" continue;" |
- L" if (window.getComputedStyle(banners[i]).display != 'none')" |
- L" visible = true;" |
- L"}" |
- L"domAutomationController.send(visible);", |
- &result)); |
- return result; |
-} |
- |
void VerifyControlledSettingIndicators(Browser* browser, |
const std::string& selector, |
const std::string& value, |
@@ -417,13 +375,11 @@ void VerifyControlledSettingIndicators(Browser* browser, |
} // namespace |
-// A class of tests parameterized by a settings page URL. |
-class PolicyPrefsSettingsBannerTest |
+// Base class for tests that change policy and are parameterized with a policy |
+// definition. |
+class PolicyPrefsTest |
: public InProcessBrowserTest, |
- public testing::WithParamInterface<const char*> {}; |
- |
-// Base class for tests that change policies. |
-class PolicyBaseTest : public InProcessBrowserTest { |
+ public testing::WithParamInterface<PolicyDefinitionList::Entry> { |
protected: |
virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { |
EXPECT_CALL(provider_, IsInitializationComplete()) |
@@ -435,16 +391,7 @@ class PolicyBaseTest : public InProcessBrowserTest { |
MockConfigurationPolicyProvider provider_; |
}; |
-// A class of tests that change policy and don't need parameters. |
-class PolicyPrefsBannerTest : public PolicyBaseTest {}; |
- |
-// A class of tests that change policy and are parameterized with a policy |
-// definition. |
-class PolicyPrefsTest |
- : public PolicyBaseTest, |
- public testing::WithParamInterface<PolicyDefinitionList::Entry> {}; |
- |
-TEST(PolicyPrefsTest, AllPoliciesHaveATestCase) { |
+TEST(PolicyPrefsTestCoverageTest, AllPoliciesHaveATestCase) { |
// Verifies that all known policies have a test case in the JSON file. |
// This test fails when a policy is added to |
// chrome/app/policy/policy_templates.json but a test case is not added to |
@@ -458,41 +405,6 @@ TEST(PolicyPrefsTest, AllPoliciesHaveATestCase) { |
} |
} |
-IN_PROC_BROWSER_TEST_P(PolicyPrefsSettingsBannerTest, NoPoliciesNoBanner) { |
- // Verifies that the banner isn't shown in the settings UI when no policies |
- // are set. |
- ui_test_utils::NavigateToURL(browser(), GURL(GetParam())); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
-} |
- |
-INSTANTIATE_TEST_CASE_P(PolicyPrefsSettingsBannerTestInstance, |
- PolicyPrefsSettingsBannerTest, |
- testing::ValuesIn(kSettingsPages)); |
- |
-IN_PROC_BROWSER_TEST_F(PolicyPrefsBannerTest, TogglePolicyTogglesBanner) { |
- // Verifies that the banner appears and disappears as policies are added and |
- // removed. |
- // |test_case| is just a particular policy that should trigger the banner |
- // on the main settings page. |
- const PolicyTestCase* test_case = policy_test_cases_.Get("ShowHomeButton"); |
- ASSERT_TRUE(test_case); |
- // No banner by default. |
- ui_test_utils::NavigateToURL(browser(), GURL(kSettingsPages[0])); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
- // Adding a policy makes the banner show up. |
- provider_.UpdateChromePolicy(test_case->test_policy()); |
- EXPECT_TRUE(IsBannerVisible(browser())); |
- // And removing it makes the banner go away. |
- const PolicyMap kNoPolicies; |
- provider_.UpdateChromePolicy(kNoPolicies); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
- // Do it again, just in case. |
- provider_.UpdateChromePolicy(test_case->test_policy()); |
- EXPECT_TRUE(IsBannerVisible(browser())); |
- provider_.UpdateChromePolicy(kNoPolicies); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
-} |
- |
IN_PROC_BROWSER_TEST_P(PolicyPrefsTest, PolicyToPrefsMapping) { |
// Verifies that policies make their corresponding preferences become managed, |
// and that the user can't override that setting. |
@@ -536,27 +448,6 @@ IN_PROC_BROWSER_TEST_P(PolicyPrefsTest, PolicyToPrefsMapping) { |
} |
} |
-IN_PROC_BROWSER_TEST_P(PolicyPrefsTest, CheckAllPoliciesThatShowTheBanner) { |
- // Verifies that the banner appears for each policy that affects a control |
- // in the settings UI. |
- const PolicyTestCase* test_case = policy_test_cases_.Get(GetParam().name); |
- ASSERT_TRUE(test_case); |
- if (!test_case->IsSupported() || test_case->settings_pages().empty()) |
- return; |
- LOG(INFO) << "Testing policy: " << test_case->name(); |
- |
- const std::vector<GURL>& pages = test_case->settings_pages(); |
- for (size_t i = 0; i < pages.size(); ++i) { |
- ui_test_utils::NavigateToURL(browser(), pages[i]); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
- provider_.UpdateChromePolicy(test_case->test_policy()); |
- EXPECT_TRUE(IsBannerVisible(browser())); |
- const PolicyMap kNoPolicies; |
- provider_.UpdateChromePolicy(kNoPolicies); |
- EXPECT_FALSE(IsBannerVisible(browser())); |
- } |
-} |
- |
IN_PROC_BROWSER_TEST_P(PolicyPrefsTest, CheckPolicyIndicators) { |
// Verifies that controlled setting indicators correctly show whether a pref's |
// value is recommended or enforced by a corresponding policy. |
@@ -590,7 +481,7 @@ IN_PROC_BROWSER_TEST_P(PolicyPrefsTest, CheckPolicyIndicators) { |
if (indicator_test_cases.empty()) |
continue; |
- ui_test_utils::NavigateToURL(browser(), GURL(kSettingsPages[0])); |
+ ui_test_utils::NavigateToURL(browser(), GURL(kMainSettingsPage)); |
if (!(*pref_mapping)->indicator_test_setup_js().empty()) { |
ASSERT_TRUE(content::ExecuteJavaScript( |
chrome::GetActiveWebContents(browser())->GetRenderViewHost(), L"", |