Index: chrome/browser/policy/policy_browsertest.cc |
diff --git a/chrome/browser/policy/policy_browsertest.cc b/chrome/browser/policy/policy_browsertest.cc |
index a2516be2f1843c659cc677779b3a2d9592964a5a..b8cd9b30bd83a049db82f4ea94095d4d4663c995 100644 |
--- a/chrome/browser/policy/policy_browsertest.cc |
+++ b/chrome/browser/policy/policy_browsertest.cc |
@@ -99,6 +99,7 @@ |
#include "components/policy/core/common/policy_pref_names.h" |
#include "components/policy/core/common/policy_service.h" |
#include "components/policy/core/common/policy_service_impl.h" |
+#include "components/policy/core/common/policy_types.h" |
#include "components/search/search.h" |
#include "components/search_engines/template_url.h" |
#include "components/search_engines/template_url_service.h" |
@@ -673,6 +674,7 @@ class PolicyTest : public InProcessBrowserTest { |
policies.Set(key::kDisableScreenshots, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(!enabled), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -821,6 +823,7 @@ class PolicyTest : public InProcessBrowserTest { |
policies->Set(key, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
value, |
nullptr); |
} else { |
@@ -879,6 +882,7 @@ class LocalePolicyTest : public PolicyTest { |
policies.Set(key::kApplicationLocaleValue, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue("fr"), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -927,6 +931,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, BookmarkBarEnabled) { |
policies.Set(key::kBookmarkBarEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -941,6 +946,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, BookmarkBarEnabled) { |
policies.Set(key::kBookmarkBarEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -980,6 +986,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, PRE_DefaultCookiesSetting) { |
policies.Set(key::kDefaultCookiesSetting, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(4), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1028,41 +1035,48 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DefaultSearchProvider) { |
policies.Set(key::kDefaultSearchProviderEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
policies.Set(key::kDefaultSearchProviderKeyword, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kKeyword), |
NULL); |
policies.Set(key::kDefaultSearchProviderSearchURL, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kSearchURL), |
NULL); |
base::ListValue* alternate_urls = new base::ListValue(); |
alternate_urls->AppendString(kAlternateURL0); |
alternate_urls->AppendString(kAlternateURL1); |
policies.Set(key::kDefaultSearchProviderAlternateURLs, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, alternate_urls, NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, alternate_urls, nullptr); |
policies.Set(key::kDefaultSearchProviderSearchTermsReplacementKey, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kSearchTermsReplacementKey), |
NULL); |
policies.Set(key::kDefaultSearchProviderImageURL, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kImageURL), |
NULL); |
policies.Set(key::kDefaultSearchProviderImageURLPostParams, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kImageURLPostParams), |
NULL); |
policies.Set(key::kDefaultSearchProviderNewTabURL, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kNewTabURL), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1095,6 +1109,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DefaultSearchProvider) { |
policies.Set(key::kDefaultSearchProviderEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
EXPECT_TRUE(service->GetDefaultSearchProvider()); |
@@ -1112,6 +1127,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, PolicyPreprocessing) { |
policies.Set(key::kProxyServerMode, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(3), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1123,6 +1139,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, PolicyPreprocessing) { |
expected.Set(key::kProxySettings, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
expected_value.release(), |
NULL); |
@@ -1215,31 +1232,37 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ReplaceSearchTerms) { |
policies.Set(key::kDefaultSearchProviderEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
policies.Set(key::kDefaultSearchProviderKeyword, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kKeyword), |
NULL); |
policies.Set(key::kDefaultSearchProviderSearchURL, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kSearchURL), |
NULL); |
policies.Set(key::kDefaultSearchProviderInstantURL, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kInstantURL), |
NULL); |
base::ListValue* alternate_urls = new base::ListValue(); |
alternate_urls->AppendString(kAlternateURL0); |
alternate_urls->AppendString(kAlternateURL1); |
policies.Set(key::kDefaultSearchProviderAlternateURLs, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, alternate_urls, NULL); |
+ POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, alternate_urls, nullptr); |
policies.Set(key::kDefaultSearchProviderSearchTermsReplacementKey, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kSearchTermsReplacementKey), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1321,6 +1344,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, Disable3DAPIs) { |
policies.Set(key::kDisable3DAPIs, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1332,6 +1356,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, Disable3DAPIs) { |
policies.Set(key::kDisable3DAPIs, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1347,6 +1372,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisableSpdy) { |
policies.Set(key::kDisableSpdy, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1357,6 +1383,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisableSpdy) { |
policies.Set(key::kDisableSpdy, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1386,8 +1413,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisabledPlugins) { |
base::ListValue disabled_plugins; |
disabled_plugins.Append(new base::StringValue("*Flash*")); |
PolicyMap policies; |
- policies.Set(key::kDisabledPlugins, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, disabled_plugins.DeepCopy(), NULL); |
+ policies.Set(key::kDisabledPlugins, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, disabled_plugins.DeepCopy(), nullptr); |
UpdateProviderPolicy(policies); |
EXPECT_FALSE(plugin_prefs->IsPluginEnabled(*flash)); |
// The user shouldn't be able to enable it. |
@@ -1413,8 +1440,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisabledPluginsExceptions) { |
base::ListValue disabled_plugins; |
disabled_plugins.Append(new base::StringValue("*")); |
PolicyMap policies; |
- policies.Set(key::kDisabledPlugins, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, disabled_plugins.DeepCopy(), NULL); |
+ policies.Set(key::kDisabledPlugins, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, disabled_plugins.DeepCopy(), nullptr); |
UpdateProviderPolicy(policies); |
EXPECT_FALSE(plugin_prefs->IsPluginEnabled(*flash)); |
// The user shouldn't be able to enable it. |
@@ -1425,7 +1452,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisabledPluginsExceptions) { |
base::ListValue disabled_plugins_exceptions; |
disabled_plugins_exceptions.Append(new base::StringValue("*Flash*")); |
policies.Set(key::kDisabledPluginsExceptions, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, disabled_plugins_exceptions.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
+ disabled_plugins_exceptions.DeepCopy(), nullptr); |
UpdateProviderPolicy(policies); |
// It should revert to the user's preference automatically. |
EXPECT_TRUE(plugin_prefs->IsPluginEnabled(*flash)); |
@@ -1454,7 +1482,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, EnabledPlugins) { |
plugin_list.Append(new base::StringValue(content::kFlashPluginName)); |
PolicyMap policies; |
policies.Set(key::kEnabledPlugins, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, plugin_list.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, plugin_list.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
EXPECT_TRUE(plugin_prefs->IsPluginEnabled(*flash)); |
// The user can't disable it anymore. |
@@ -1463,7 +1492,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, EnabledPlugins) { |
// When a plugin is both enabled and disabled, the whitelist takes precedence. |
policies.Set(key::kDisabledPlugins, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, plugin_list.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, plugin_list.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
EXPECT_TRUE(plugin_prefs->IsPluginEnabled(*flash)); |
} |
@@ -1508,6 +1538,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, AlwaysAuthorizePlugins) { |
policies.Set(key::kAlwaysAuthorizePlugins, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1534,6 +1565,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DeveloperToolsDisabled) { |
policies.Set(key::kDeveloperToolsDisabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
content::WindowedNotificationObserver close_observer( |
@@ -1581,6 +1613,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DISABLED_WebStoreIconHidden) { |
policies.Set(key::kHideWebStoreIcon, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1616,6 +1649,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DownloadDirectory) { |
policies.Set(key::kDownloadDirectory, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(forced_dir.path().value()), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -1633,7 +1667,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionInstallBlacklistSelective) { |
blacklist.Append(new base::StringValue(kGoodCrxId)); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
// "good.crx" is blacklisted. |
@@ -1664,7 +1699,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_ExtensionInstallBlacklistWildcard) { |
blacklist.Append(new base::StringValue("*")); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
// AdBlock was automatically removed. |
@@ -1711,9 +1747,11 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionInstallBlacklistSharedModules) { |
base::StringPrintf("%s;%s", kImporterId, update_xml_url.spec().c_str())); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
policies.Set(key::kExtensionInstallForcelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, forcelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, forcelist.DeepCopy(), |
+ nullptr); |
extensions::ExtensionRegistry* registry = |
extensions::ExtensionRegistry::Get(browser()->profile()); |
@@ -1760,9 +1798,11 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionInstallWhitelist) { |
whitelist.Append(new base::StringValue(kGoodCrxId)); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
policies.Set(key::kExtensionInstallWhitelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, whitelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, whitelist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
// "adblock.crx" is blacklisted. |
EXPECT_FALSE(InstallExtension(kAdBlockCrxName)); |
@@ -1795,7 +1835,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionInstallForcelist) { |
base::StringPrintf("%s;%s", kGoodCrxId, url.spec().c_str()))); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallForcelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, forcelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, forcelist.DeepCopy(), |
+ nullptr); |
content::WindowedNotificationObserver observer( |
extensions::NOTIFICATION_EXTENSION_WILL_BE_INSTALLED_DEPRECATED, |
content::NotificationService::AllSources()); |
@@ -1914,6 +1955,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionRecommendedInstallationMode) { |
policies.Set(key::kExtensionSettings, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
dict_value.DeepCopy(), |
NULL); |
content::WindowedNotificationObserver observer( |
@@ -1947,7 +1989,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ExtensionAllowedTypes) { |
allowed_types.AppendString("hosted_app"); |
PolicyMap policies; |
policies.Set(key::kExtensionAllowedTypes, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, allowed_types.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, allowed_types.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
// "good.crx" is blocked. |
@@ -2005,7 +2048,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_ExtensionInstallSources) { |
install_sources.AppendString(referrer_url.spec()); |
PolicyMap policies; |
policies.Set(key::kExtensionInstallSources, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, install_sources.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
+ install_sources.DeepCopy(), nullptr); |
UpdateProviderPolicy(policies); |
content::WindowedNotificationObserver observer( |
@@ -2235,6 +2279,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, HomepageLocation) { |
policies.Set(key::kHomepageLocation, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(chrome::kChromeUICreditsURL), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2245,6 +2290,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, HomepageLocation) { |
policies.Set(key::kHomepageIsNewTabPage, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2267,6 +2313,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, IncognitoEnabled) { |
policies.Set(key::kIncognitoEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2278,6 +2325,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, IncognitoEnabled) { |
policies.Set(key::kIncognitoEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2300,6 +2348,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, Javascript) { |
policies.Set(key::kJavascriptEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2320,6 +2369,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, Javascript) { |
policies.Set(key::kDefaultJavaScriptSetting, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(CONTENT_SETTING_ALLOW), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2338,6 +2388,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, NetworkPrediction) { |
policies.Set(key::kDnsPrefetchingEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2349,6 +2400,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, NetworkPrediction) { |
key::kNetworkPredictionOptions, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(chrome_browser_net::NETWORK_PREDICTION_ALWAYS), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2362,6 +2414,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SavingBrowserHistoryDisabled) { |
policies.Set(key::kSavingBrowserHistoryDisabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2377,6 +2430,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SavingBrowserHistoryDisabled) { |
policies.Set(key::kSavingBrowserHistoryDisabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2412,6 +2466,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DISABLED_TranslateEnabled) { |
policies.Set(key::kTranslateEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2457,6 +2512,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DISABLED_TranslateEnabled) { |
policies.Set(key::kTranslateEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2499,7 +2555,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, URLBlacklist) { |
blacklist.Append(new base::StringValue("bbb.com")); |
PolicyMap policies; |
policies.Set(key::kURLBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
// All bbb.com URLs are blocked, and "aaa.com" is still unblocked. |
@@ -2512,7 +2569,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, URLBlacklist) { |
whitelist.Append(new base::StringValue("sub.bbb.com")); |
whitelist.Append(new base::StringValue("bbb.com/policy")); |
policies.Set(key::kURLWhitelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, whitelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, whitelist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
CheckURLIsBlocked(browser(), kURLS[1]); |
@@ -2548,7 +2606,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, URLBlacklistSubresources) { |
blacklist.Append(new base::StringValue(subframe_url.spec().c_str())); |
PolicyMap policies; |
policies.Set(key::kURLBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
@@ -2594,7 +2653,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_FileURLBlacklist) { |
blacklist.Append(new base::StringValue("file://*")); |
PolicyMap policies; |
policies.Set(key::kURLBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
@@ -2604,7 +2664,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_FileURLBlacklist) { |
// Replace the URLblacklist with disabling the file scheme. |
blacklist.Remove(base::StringValue("file://*"), NULL); |
policies.Set(key::kURLBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
@@ -2616,7 +2677,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_FileURLBlacklist) { |
base::ListValue disabledscheme; |
disabledscheme.Append(new base::StringValue("file")); |
policies.Set(key::kDisabledSchemes, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, disabledscheme.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
+ disabledscheme.DeepCopy(), nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
@@ -2628,10 +2690,12 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, MAYBE_FileURLBlacklist) { |
base::ListValue whitelist; |
whitelist.Append(new base::StringValue(base_path)); |
policies.Set(key::kURLWhitelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, whitelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, whitelist.DeepCopy(), |
+ nullptr); |
blacklist.Append(new base::StringValue(folder_path)); |
policies.Set(key::kURLBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
FlushBlacklistPolicy(); |
@@ -2680,6 +2744,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SSLVersionFallbackMin) { |
policies.Set(key::kSSLVersionFallbackMin, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(new_value), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2694,6 +2759,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, FullscreenAllowedBrowser) { |
policies.Set(key::kFullscreenAllowed, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2711,6 +2777,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, FullscreenAllowedApp) { |
policies.Set(key::kFullscreenAllowed, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2782,6 +2849,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisableAudioOutput) { |
policies.Set(key::kAudioOutputAllowed, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2796,6 +2864,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DisableAudioOutput) { |
policies.Set(key::kAudioOutputAllowed, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2835,6 +2904,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DISABLED_SessionLengthLimit) { |
policies.Set(key::kSessionLengthLimit, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(kThreeHoursInMs), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2847,6 +2917,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, DISABLED_SessionLengthLimit) { |
policies.Set(key::kSessionLengthLimit, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(kOneHourInMs), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2878,6 +2949,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, |
PolicyMap policies; |
policies.Set(key::kWaitForInitialUserActivity, POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2890,6 +2962,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, |
policies.Set(key::kSessionLengthLimit, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(kOneHourInMs), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2926,11 +2999,13 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, |
PolicyMap policies; |
policies.Set(key::kWaitForInitialUserActivity, POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
policies.Set(key::kSessionLengthLimit, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(kThreeHoursInMs), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2943,6 +3018,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, |
policies.Set(key::kSessionLengthLimit, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(kOneHourInMs), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2965,6 +3041,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, LargeCursorEnabled) { |
policies.Set(key::kLargeCursorEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -2991,6 +3068,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SpokenFeedbackEnabled) { |
policies.Set(key::kSpokenFeedbackEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3017,6 +3095,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, HighContrastEnabled) { |
policies.Set(key::kHighContrastEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3043,6 +3122,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ScreenMagnifierTypeNone) { |
policies.Set(key::kScreenMagnifierType, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(0), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3066,6 +3146,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, ScreenMagnifierTypeFull) { |
policies.Set(key::kScreenMagnifierType, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(ui::MAGNIFIER_FULL), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3092,6 +3173,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, AccessibilityVirtualKeyboardEnabled) { |
policies.Set(key::kVirtualKeyboardEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3117,6 +3199,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, VirtualKeyboardEnabled) { |
policies.Set(key::kTouchVirtualKeyboardEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3129,6 +3212,7 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, VirtualKeyboardEnabled) { |
policies.Set(key::kTouchVirtualKeyboardEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
UpdateProviderPolicy(policies); |
@@ -3203,16 +3287,19 @@ class RestoreOnStartupPolicyTest |
key::kRestoreOnStartup, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(SessionStartupPref::kPrefValueHomePage), |
NULL); |
policies.Set(key::kHomepageIsNewTabPage, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
policies.Set(key::kHomepageLocation, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue(kRestoredURLs[1]), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -3228,11 +3315,13 @@ class RestoreOnStartupPolicyTest |
key::kRestoreOnStartup, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(SessionStartupPref::kPrefValueHomePage), |
NULL); |
policies.Set(key::kHomepageIsNewTabPage, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -3251,11 +3340,12 @@ class RestoreOnStartupPolicyTest |
policies.Set(key::kRestoreOnStartup, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(SessionStartupPref::kPrefValueURLs), |
NULL); |
policies.Set( |
key::kRestoreOnStartupURLs, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
- urls.DeepCopy(), NULL); |
+ POLICY_SOURCE_CLOUD, urls.DeepCopy(), nullptr); |
provider_.UpdateChromePolicy(policies); |
} |
@@ -3266,6 +3356,7 @@ class RestoreOnStartupPolicyTest |
key::kRestoreOnStartup, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(SessionStartupPref::kPrefValueNewTab), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -3278,6 +3369,7 @@ class RestoreOnStartupPolicyTest |
policies.Set(key::kRestoreOnStartup, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(SessionStartupPref::kPrefValueLast), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -3342,16 +3434,19 @@ class PolicyStatisticsCollectorTest : public PolicyTest { |
policies.Set(key::kShowHomeButton, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(true), |
NULL); |
policies.Set(key::kBookmarkBarEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
policies.Set(key::kHomepageLocation, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::StringValue("http://chromium.org"), |
NULL); |
provider_.UpdateChromePolicy(policies); |
@@ -3419,6 +3514,7 @@ class MediaStreamDevicesControllerBrowserTest |
policies->Set(policy_name, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(policy_value_), |
NULL); |
@@ -3436,8 +3532,8 @@ class MediaStreamDevicesControllerBrowserTest |
// is that the request has not been allowed via the whitelist. |
request_url_allowed_via_whitelist_ = false; |
} |
- policies->Set(whitelist_policy, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, list, NULL); |
+ policies->Set(whitelist_policy, POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, list, nullptr); |
} |
} |
@@ -3632,8 +3728,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SafeBrowsingExtendedReportingOptInAllowed) { |
prefs->GetBoolean(prefs::kSafeBrowsingExtendedReportingOptInAllowed)); |
PolicyMap policies; |
policies.Set(key::kSafeBrowsingExtendedReportingOptInAllowed, |
- POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, |
- new base::FundamentalValue(false), NULL); |
+ POLICY_LEVEL_MANDATORY, POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, |
+ new base::FundamentalValue(false), nullptr); |
UpdateProviderPolicy(policies); |
EXPECT_FALSE( |
prefs->GetBoolean(prefs::kSafeBrowsingExtendedReportingOptInAllowed)); |
@@ -3716,7 +3812,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, SSLErrorOverridingDisallowed) { |
// Disallowing the proceed link by setting the policy to |false|. |
PolicyMap policies; |
policies.Set(key::kSSLErrorOverrideAllowed, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, new base::FundamentalValue(false), NULL); |
+ POLICY_SCOPE_USER,POLICY_SOURCE_CLOUD, |
+ new base::FundamentalValue(false), nullptr); |
UpdateProviderPolicy(policies); |
// Policy should not allow overriding anymore. |
@@ -3796,7 +3893,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, NativeMessagingBlacklistSelective) { |
blacklist.Append(new base::StringValue("host.name")); |
PolicyMap policies; |
policies.Set(key::kNativeMessagingBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
PrefService* prefs = browser()->profile()->GetPrefs(); |
@@ -3811,7 +3909,8 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, NativeMessagingBlacklistWildcard) { |
blacklist.Append(new base::StringValue("*")); |
PolicyMap policies; |
policies.Set(key::kNativeMessagingBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
PrefService* prefs = browser()->profile()->GetPrefs(); |
@@ -3828,9 +3927,11 @@ IN_PROC_BROWSER_TEST_F(PolicyTest, NativeMessagingWhitelist) { |
whitelist.Append(new base::StringValue("host.name")); |
PolicyMap policies; |
policies.Set(key::kNativeMessagingBlacklist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, blacklist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, blacklist.DeepCopy(), |
+ nullptr); |
policies.Set(key::kNativeMessagingWhitelist, POLICY_LEVEL_MANDATORY, |
- POLICY_SCOPE_USER, whitelist.DeepCopy(), NULL); |
+ POLICY_SCOPE_USER, POLICY_SOURCE_CLOUD, whitelist.DeepCopy(), |
+ nullptr); |
UpdateProviderPolicy(policies); |
PrefService* prefs = browser()->profile()->GetPrefs(); |
@@ -3855,6 +3956,7 @@ class HardwareAccelerationModePolicyTest : public PolicyTest { |
policies.Set(key::kHardwareAccelerationModeEnabled, |
POLICY_LEVEL_MANDATORY, |
POLICY_SCOPE_USER, |
+ POLICY_SOURCE_CLOUD, |
new base::FundamentalValue(false), |
NULL); |
provider_.UpdateChromePolicy(policies); |