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

Unified Diff: chrome/browser/extensions/extension_management_unittest.cc

Issue 2144313002: Plumbing for login apps device policy to extensions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix comment Created 3 years, 10 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/extension_management_unittest.cc
diff --git a/chrome/browser/extensions/extension_management_unittest.cc b/chrome/browser/extensions/extension_management_unittest.cc
index 56618b81634faa2b743d09441e495be322230daf..ac107396482036b904061bb321c78a2168cbdc56 100644
--- a/chrome/browser/extensions/extension_management_unittest.cc
+++ b/chrome/browser/extensions/extension_management_unittest.cc
@@ -15,8 +15,9 @@
#include "chrome/browser/extensions/extension_management_test_util.h"
#include "chrome/browser/extensions/external_policy_loader.h"
#include "chrome/browser/extensions/standard_management_policy_provider.h"
-#include "components/prefs/pref_registry_simple.h"
-#include "components/prefs/testing_pref_service.h"
+#include "chrome/test/base/testing_profile.h"
+#include "components/sync_preferences/testing_pref_service_syncable.h"
+#include "content/public/test/test_browser_thread_bundle.h"
#include "extensions/browser/pref_names.h"
#include "extensions/common/manifest.h"
#include "extensions/common/manifest_constants.h"
@@ -76,28 +77,19 @@ const char kExampleDictPreference[] =
} // namespace
class ExtensionManagementServiceTest : public testing::Test {
- public:
- typedef ExtensionManagementPrefUpdater<TestingPrefServiceSimple> PrefUpdater;
+ protected:
+ using PrefUpdater = ExtensionManagementPrefUpdater<
+ sync_preferences::TestingPrefServiceSyncable>;
- ExtensionManagementServiceTest() {}
- ~ExtensionManagementServiceTest() override {}
+ ExtensionManagementServiceTest() = default;
+ ~ExtensionManagementServiceTest() override = default;
// testing::Test:
- void SetUp() override { InitPrefService(); }
-
- void InitPrefService() {
- extension_management_.reset();
- pref_service_.reset(new TestingPrefServiceSimple());
- pref_service_->registry()->RegisterListPref(
- pref_names::kAllowedInstallSites);
- pref_service_->registry()->RegisterListPref(pref_names::kAllowedTypes);
- pref_service_->registry()->RegisterListPref(pref_names::kInstallDenyList);
- pref_service_->registry()->RegisterListPref(pref_names::kInstallAllowList);
- pref_service_->registry()->RegisterDictionaryPref(
- pref_names::kInstallForceList);
- pref_service_->registry()->RegisterDictionaryPref(
- pref_names::kExtensionManagement);
- extension_management_.reset(new ExtensionManagement(pref_service_.get()));
+ void SetUp() override {
+ profile_ = base::MakeUnique<TestingProfile>();
+ pref_service_ = profile_->GetTestingPrefService();
+ extension_management_ =
+ base::MakeUnique<ExtensionManagement>(profile_.get());
}
void SetPref(bool managed, const char* path, base::Value* value) {
@@ -152,7 +144,8 @@ class ExtensionManagementServiceTest : public testing::Test {
std::string error_msg;
std::unique_ptr<base::Value> parsed = base::JSONReader::ReadAndReturnError(
kExampleDictPreference,
- base::JSONParserOptions::JSON_ALLOW_TRAILING_COMMAS, NULL, &error_msg);
+ base::JSONParserOptions::JSON_ALLOW_TRAILING_COMMAS, nullptr,
+ &error_msg);
ASSERT_TRUE(parsed && parsed->IsType(base::Value::Type::DICTIONARY))
<< error_msg;
SetPref(true, pref_names::kExtensionManagement, parsed.release());
@@ -191,8 +184,9 @@ class ExtensionManagementServiceTest : public testing::Test {
return ret;
}
- protected:
- std::unique_ptr<TestingPrefServiceSimple> pref_service_;
+ content::TestBrowserThreadBundle thread_bundle_;
+ std::unique_ptr<TestingProfile> profile_;
+ sync_preferences::TestingPrefServiceSyncable* pref_service_ = nullptr;
std::unique_ptr<ExtensionManagement> extension_management_;
private:
@@ -529,7 +523,7 @@ TEST_F(ExtensionManagementServiceTest, kMinimumVersionRequired) {
EXPECT_TRUE(CheckMinimumVersion(kTargetExtension, "9999.0"));
{
- PrefUpdater pref(pref_service_.get());
+ PrefUpdater pref(pref_service_);
pref.SetMinimumVersionRequired(kTargetExtension, "3.0");
}
@@ -554,7 +548,7 @@ TEST_F(ExtensionManagementServiceTest, NewInstallSources) {
// Set the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.ClearInstallSources();
}
// Verifies that the new one overrides the legacy ones.
@@ -564,7 +558,7 @@ TEST_F(ExtensionManagementServiceTest, NewInstallSources) {
// Updates the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.AddInstallSource("https://corp.mycompany.com/*");
}
EXPECT_TRUE(ReadGlobalSettings()->has_restricted_install_sources);
@@ -585,7 +579,7 @@ TEST_F(ExtensionManagementServiceTest, NewAllowedTypes) {
// Set the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.ClearAllowedTypes();
}
// Verifies that the new one overrides the legacy ones.
@@ -594,7 +588,7 @@ TEST_F(ExtensionManagementServiceTest, NewAllowedTypes) {
// Updates the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.AddAllowedType("theme");
}
EXPECT_TRUE(ReadGlobalSettings()->has_restricted_allowed_types);
@@ -607,7 +601,7 @@ TEST_F(ExtensionManagementServiceTest, NewAllowedTypes) {
TEST_F(ExtensionManagementServiceTest, NewInstallBlacklist) {
// Set the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.SetBlacklistedByDefault(false); // Allowed by default.
updater.SetIndividualExtensionInstallationAllowed(kTargetExtension, false);
updater.ClearPerExtensionSettings(kTargetExtension2);
@@ -643,7 +637,7 @@ TEST_F(ExtensionManagementServiceTest, NewInstallBlacklist) {
TEST_F(ExtensionManagementServiceTest, NewInstallWhitelist) {
// Set the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.SetBlacklistedByDefault(true); // Disallowed by default.
updater.SetIndividualExtensionInstallationAllowed(kTargetExtension, true);
updater.ClearPerExtensionSettings(kTargetExtension2);
@@ -684,7 +678,7 @@ TEST_F(ExtensionManagementServiceTest, NewInstallForcelist) {
// Set the new dictionary preference.
{
- PrefUpdater updater(pref_service_.get());
+ PrefUpdater updater(pref_service_);
updater.SetIndividualExtensionAutoInstalled(
kTargetExtension, kExampleUpdateUrl, true);
}
@@ -718,7 +712,7 @@ TEST_F(ExtensionManagementServiceTest, IsInstallationExplicitlyAllowed) {
{
// Set BlacklistedByDefault() to false.
- PrefUpdater pref(pref_service_.get());
+ PrefUpdater pref(pref_service_);
pref.SetBlacklistedByDefault(false);
}
@@ -734,7 +728,7 @@ TEST_F(ExtensionManagementServiceTest, IsInstallationExplicitlyAllowed) {
// Tests the flag value indicating that extensions are blacklisted by default.
TEST_F(ExtensionAdminPolicyTest, BlacklistedByDefault) {
- EXPECT_FALSE(BlacklistedByDefault(NULL));
+ EXPECT_FALSE(BlacklistedByDefault(nullptr));
base::ListValue blacklist;
blacklist.AppendString(kNonExistingExtension);
@@ -750,32 +744,35 @@ TEST_F(ExtensionAdminPolicyTest, BlacklistedByDefault) {
// Tests UserMayLoad for required extensions.
TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) {
CreateExtension(Manifest::COMPONENT);
- EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, nullptr, nullptr, nullptr, extension_.get(),
+ nullptr));
base::string16 error;
- EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), &error));
+ EXPECT_TRUE(UserMayLoad(nullptr, nullptr, nullptr, nullptr, extension_.get(),
+ &error));
EXPECT_TRUE(error.empty());
// Required extensions may load even if they're on the blacklist.
base::ListValue blacklist;
blacklist.AppendString(extension_->id());
- EXPECT_TRUE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
blacklist.AppendString("*");
- EXPECT_TRUE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
}
// Tests UserMayLoad when no blacklist exists, or it's empty.
TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) {
CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, nullptr, nullptr, nullptr, extension_.get(),
+ nullptr));
base::ListValue blacklist;
- EXPECT_TRUE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
base::string16 error;
- EXPECT_TRUE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error));
+ EXPECT_TRUE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), &error));
EXPECT_TRUE(error.empty());
}
@@ -785,16 +782,16 @@ TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) {
base::ListValue whitelist;
whitelist.AppendString(extension_->id());
- EXPECT_TRUE(
- UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, &whitelist, nullptr, nullptr,
+ extension_.get(), nullptr));
base::ListValue blacklist;
blacklist.AppendString(extension_->id());
- EXPECT_TRUE(
- UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, &whitelist, nullptr, nullptr,
+ extension_.get(), nullptr));
base::string16 error;
- EXPECT_TRUE(
- UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(), &error));
+ EXPECT_TRUE(UserMayLoad(nullptr, &whitelist, nullptr, nullptr,
+ extension_.get(), &error));
EXPECT_TRUE(error.empty());
}
@@ -805,77 +802,78 @@ TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) {
// Blacklisted by default.
base::ListValue blacklist;
blacklist.AppendString("*");
- EXPECT_FALSE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
base::string16 error;
- EXPECT_FALSE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), &error));
+ EXPECT_FALSE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), &error));
EXPECT_FALSE(error.empty());
// Extension on the blacklist, with and without wildcard.
blacklist.AppendString(extension_->id());
- EXPECT_FALSE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
blacklist.Clear();
blacklist.AppendString(extension_->id());
- EXPECT_FALSE(
- UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(&blacklist, nullptr, nullptr, nullptr,
+ extension_.get(), nullptr));
// With a whitelist. There's no such thing as a whitelist wildcard.
base::ListValue whitelist;
whitelist.AppendString("behllobkkfkfnphdnhnkndlbkcpglgmj");
- EXPECT_FALSE(
- UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(&blacklist, &whitelist, nullptr, nullptr,
+ extension_.get(), nullptr));
whitelist.AppendString("*");
- EXPECT_FALSE(
- UserMayLoad(&blacklist, &whitelist, NULL, NULL, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(&blacklist, &whitelist, nullptr, nullptr,
+ extension_.get(), nullptr));
}
TEST_F(ExtensionAdminPolicyTest, UserMayLoadAllowedTypes) {
CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, nullptr, nullptr, nullptr, extension_.get(),
+ nullptr));
base::ListValue allowed_types;
- EXPECT_FALSE(
- UserMayLoad(NULL, NULL, NULL, &allowed_types, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(nullptr, nullptr, nullptr, &allowed_types,
+ extension_.get(), nullptr));
allowed_types.AppendInteger(Manifest::TYPE_EXTENSION);
- EXPECT_TRUE(
- UserMayLoad(NULL, NULL, NULL, &allowed_types, extension_.get(), NULL));
+ EXPECT_TRUE(UserMayLoad(nullptr, nullptr, nullptr, &allowed_types,
+ extension_.get(), nullptr));
CreateHostedApp(Manifest::INTERNAL);
- EXPECT_FALSE(
- UserMayLoad(NULL, NULL, NULL, &allowed_types, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(nullptr, nullptr, nullptr, &allowed_types,
+ extension_.get(), nullptr));
CreateHostedApp(Manifest::EXTERNAL_POLICY_DOWNLOAD);
- EXPECT_FALSE(
- UserMayLoad(NULL, NULL, NULL, &allowed_types, extension_.get(), NULL));
+ EXPECT_FALSE(UserMayLoad(nullptr, nullptr, nullptr, &allowed_types,
+ extension_.get(), nullptr));
}
TEST_F(ExtensionAdminPolicyTest, UserMayModifySettings) {
CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(UserMayModifySettings(extension_.get(), NULL));
+ EXPECT_TRUE(UserMayModifySettings(extension_.get(), nullptr));
base::string16 error;
EXPECT_TRUE(UserMayModifySettings(extension_.get(), &error));
EXPECT_TRUE(error.empty());
CreateExtension(Manifest::EXTERNAL_POLICY_DOWNLOAD);
error.clear();
- EXPECT_FALSE(UserMayModifySettings(extension_.get(), NULL));
+ EXPECT_FALSE(UserMayModifySettings(extension_.get(), nullptr));
EXPECT_FALSE(UserMayModifySettings(extension_.get(), &error));
EXPECT_FALSE(error.empty());
}
TEST_F(ExtensionAdminPolicyTest, MustRemainEnabled) {
CreateExtension(Manifest::EXTERNAL_POLICY_DOWNLOAD);
- EXPECT_TRUE(MustRemainEnabled(extension_.get(), NULL));
+ EXPECT_TRUE(MustRemainEnabled(extension_.get(), nullptr));
base::string16 error;
EXPECT_TRUE(MustRemainEnabled(extension_.get(), &error));
EXPECT_FALSE(error.empty());
CreateExtension(Manifest::INTERNAL);
error.clear();
- EXPECT_FALSE(MustRemainEnabled(extension_.get(), NULL));
+ EXPECT_FALSE(MustRemainEnabled(extension_.get(), nullptr));
EXPECT_FALSE(MustRemainEnabled(extension_.get(), &error));
EXPECT_TRUE(error.empty());
}

Powered by Google App Engine
This is Rietveld 408576698