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

Unified Diff: chrome/browser/extensions/api/settings_private/settings_private_apitest.cc

Issue 2861393003: MD Settings: Always provide recommended meta-data (Closed)
Patch Set: Use non cros specific pref for tests Created 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/extensions/api/settings_private/settings_private_apitest.cc
diff --git a/chrome/browser/extensions/api/settings_private/settings_private_apitest.cc b/chrome/browser/extensions/api/settings_private/settings_private_apitest.cc
index 3e6d167e9c0a73c50b4be4930a0852da1affbbb2..64a62c066a6415f4872e56d50612102fe5fa6841 100644
--- a/chrome/browser/extensions/api/settings_private/settings_private_apitest.cc
+++ b/chrome/browser/extensions/api/settings_private/settings_private_apitest.cc
@@ -12,15 +12,26 @@
#include "chrome/browser/extensions/api/settings_private/settings_private_delegate_factory.h"
#include "chrome/browser/extensions/extension_apitest.h"
#include "chrome/common/extensions/api/settings_private.h"
+#include "chrome/common/pref_names.h"
#include "components/keyed_service/core/keyed_service.h"
+#include "components/policy/core/browser/browser_policy_connector.h"
+#include "components/policy/core/common/mock_configuration_policy_provider.h"
+#include "components/policy/core/common/policy_map.h"
+#include "components/policy/policy_constants.h"
#include "components/prefs/pref_service.h"
#include "content/public/test/test_utils.h"
#include "extensions/common/switches.h"
+#include "testing/gmock/include/gmock/gmock.h"
+#include "testing/gtest/include/gtest/gtest.h"
#if defined(OS_CHROMEOS)
#include "chromeos/chromeos_switches.h"
#endif
+using testing::Mock;
+using testing::Return;
+using testing::_;
+
namespace extensions {
namespace {
@@ -37,14 +48,33 @@ class SettingsPrivateApiTest : public ExtensionApiTest {
#endif
}
+ void SetUpInProcessBrowserTestFixture() override {
+ EXPECT_CALL(provider_, IsInitializationComplete(_))
+ .WillRepeatedly(Return(true));
+ policy::BrowserPolicyConnector::SetPolicyProviderForTesting(&provider_);
+ ExtensionApiTest::SetUpInProcessBrowserTestFixture();
+ }
+
protected:
bool RunSettingsSubtest(const std::string& subtest) {
- return RunExtensionSubtest("settings_private",
- "main.html?" + subtest,
+ return RunExtensionSubtest("settings_private", "main.html?" + subtest,
kFlagLoadAsComponent);
}
+ void SetPrefPolicy(const std::string& key, policy::PolicyLevel level) {
+ policy::PolicyMap policies;
+ policies.Set(key, level, policy::POLICY_SCOPE_USER,
+ policy::POLICY_SOURCE_CLOUD,
+ base::WrapUnique(new base::Value(true)), nullptr);
+ provider_.UpdateChromePolicy(policies);
+ DCHECK(base::MessageLoop::current());
+ base::RunLoop loop;
+ loop.RunUntilIdle();
+ }
+
private:
+ policy::MockConfigurationPolicyProvider provider_;
+
DISALLOW_COPY_AND_ASSIGN(SettingsPrivateApiTest);
};
@@ -59,6 +89,18 @@ IN_PROC_BROWSER_TEST_F(SettingsPrivateApiTest, GetPref) {
EXPECT_TRUE(RunSettingsSubtest("getPref")) << message_;
}
+IN_PROC_BROWSER_TEST_F(SettingsPrivateApiTest, GetEnforcedPref) {
+ SetPrefPolicy(policy::key::kHomepageIsNewTabPage,
+ policy::POLICY_LEVEL_MANDATORY);
+ EXPECT_TRUE(RunSettingsSubtest("getEnforcedPref")) << message_;
+}
+
+IN_PROC_BROWSER_TEST_F(SettingsPrivateApiTest, GetRecommendedPref) {
+ SetPrefPolicy(policy::key::kHomepageIsNewTabPage,
+ policy::POLICY_LEVEL_RECOMMENDED);
+ EXPECT_TRUE(RunSettingsSubtest("getRecommendedPref")) << message_;
+}
+
IN_PROC_BROWSER_TEST_F(SettingsPrivateApiTest, GetAllPrefs) {
EXPECT_TRUE(RunSettingsSubtest("getAllPrefs")) << message_;
}

Powered by Google App Engine
This is Rietveld 408576698