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

Unified Diff: extensions/browser/admin_policy_unittest.cc

Issue 500043003: Add PolicyProvider to ExtensionManagement (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@ext-1
Patch Set: rebase, format correction Created 6 years, 3 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: extensions/browser/admin_policy_unittest.cc
diff --git a/extensions/browser/admin_policy_unittest.cc b/extensions/browser/admin_policy_unittest.cc
deleted file mode 100644
index 13b3f03de78c153faf9fd66a7fafd225f05a60cb..0000000000000000000000000000000000000000
--- a/extensions/browser/admin_policy_unittest.cc
+++ /dev/null
@@ -1,196 +0,0 @@
-// Copyright 2013 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "extensions/browser/admin_policy.h"
-
-#include "base/values.h"
-#include "extensions/common/extension.h"
-#include "extensions/common/manifest.h"
-#include "extensions/common/manifest_constants.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-using base::Value;
-using extensions::Extension;
-using extensions::Manifest;
-
-namespace ap = extensions::admin_policy;
-
-class ExtensionAdminPolicyTest : public testing::Test {
- public:
- void CreateExtension(Manifest::Location location) {
- base::DictionaryValue values;
- CreateExtensionFromValues(location, &values);
- }
-
- void CreateHostedApp(Manifest::Location location) {
- base::DictionaryValue values;
- values.Set(extensions::manifest_keys::kWebURLs, new base::ListValue());
- values.SetString(extensions::manifest_keys::kLaunchWebURL,
- "http://www.example.com");
- CreateExtensionFromValues(location, &values);
- }
-
- void CreateExtensionFromValues(Manifest::Location location,
- base::DictionaryValue* values) {
- values->SetString(extensions::manifest_keys::kName, "test");
- values->SetString(extensions::manifest_keys::kVersion, "0.1");
- std::string error;
- extension_ = Extension::Create(base::FilePath(), location, *values,
- Extension::NO_FLAGS, &error);
- ASSERT_TRUE(extension_.get());
- }
-
- protected:
- scoped_refptr<Extension> extension_;
-};
-
-// Tests the flag value indicating that extensions are blacklisted by default.
-TEST_F(ExtensionAdminPolicyTest, BlacklistedByDefault) {
- EXPECT_FALSE(ap::BlacklistedByDefault(NULL));
-
- base::ListValue blacklist;
- blacklist.Append(new base::StringValue("http://www.google.com"));
- EXPECT_FALSE(ap::BlacklistedByDefault(&blacklist));
- blacklist.Append(new base::StringValue("*"));
- EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist));
-
- blacklist.Clear();
- blacklist.Append(new base::StringValue("*"));
- EXPECT_TRUE(ap::BlacklistedByDefault(&blacklist));
-}
-
-// Tests UserMayLoad for required extensions.
-TEST_F(ExtensionAdminPolicyTest, UserMayLoadRequired) {
- CreateExtension(Manifest::COMPONENT);
- EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
- base::string16 error;
- EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(),
- &error));
- EXPECT_TRUE(error.empty());
-
- // Required extensions may load even if they're on the blacklist.
- base::ListValue blacklist;
- blacklist.Append(new base::StringValue(extension_->id()));
- EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
-
- blacklist.Append(new base::StringValue("*"));
- EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
-}
-
-// Tests UserMayLoad when no blacklist exists, or it's empty.
-TEST_F(ExtensionAdminPolicyTest, UserMayLoadNoBlacklist) {
- CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
- base::ListValue blacklist;
- EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
- base::string16 error;
- EXPECT_TRUE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- &error));
- EXPECT_TRUE(error.empty());
-}
-
-// Tests UserMayLoad for an extension on the whitelist.
-TEST_F(ExtensionAdminPolicyTest, UserMayLoadWhitelisted) {
- CreateExtension(Manifest::INTERNAL);
-
- base::ListValue whitelist;
- whitelist.Append(new base::StringValue(extension_->id()));
- EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(),
- NULL));
-
- base::ListValue blacklist;
- blacklist.Append(new base::StringValue(extension_->id()));
- EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(),
- NULL));
- base::string16 error;
- EXPECT_TRUE(ap::UserMayLoad(NULL, &whitelist, NULL, NULL, extension_.get(),
- &error));
- EXPECT_TRUE(error.empty());
-}
-
-// Tests UserMayLoad for an extension on the blacklist.
-TEST_F(ExtensionAdminPolicyTest, UserMayLoadBlacklisted) {
- CreateExtension(Manifest::INTERNAL);
-
- // Blacklisted by default.
- base::ListValue blacklist;
- blacklist.Append(new base::StringValue("*"));
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
- base::string16 error;
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- &error));
- EXPECT_FALSE(error.empty());
-
- // Extension on the blacklist, with and without wildcard.
- blacklist.Append(new base::StringValue(extension_->id()));
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
- blacklist.Clear();
- blacklist.Append(new base::StringValue(extension_->id()));
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, NULL, NULL, NULL, extension_.get(),
- NULL));
-
- // With a whitelist. There's no such thing as a whitelist wildcard.
- base::ListValue whitelist;
- whitelist.Append(
- new base::StringValue("behllobkkfkfnphdnhnkndlbkcpglgmj"));
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, &whitelist, NULL, NULL,
- extension_.get(), NULL));
- whitelist.Append(new base::StringValue("*"));
- EXPECT_FALSE(ap::UserMayLoad(&blacklist, &whitelist, NULL, NULL,
- extension_.get(), NULL));
-}
-
-TEST_F(ExtensionAdminPolicyTest, UserMayLoadAllowedTypes) {
- CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, NULL, NULL, extension_.get(), NULL));
-
- base::ListValue allowed_types;
- EXPECT_FALSE(ap::UserMayLoad(NULL, NULL, NULL, &allowed_types,
- extension_.get(), NULL));
-
- allowed_types.AppendInteger(Manifest::TYPE_EXTENSION);
- EXPECT_TRUE(ap::UserMayLoad(NULL, NULL, NULL, &allowed_types,
- extension_.get(), NULL));
-
- CreateHostedApp(Manifest::INTERNAL);
- EXPECT_FALSE(ap::UserMayLoad(NULL, NULL, NULL, &allowed_types,
- extension_.get(), NULL));
-
- CreateHostedApp(Manifest::EXTERNAL_POLICY_DOWNLOAD);
- EXPECT_FALSE(ap::UserMayLoad(NULL, NULL, NULL, &allowed_types,
- extension_.get(), NULL));
-}
-
-TEST_F(ExtensionAdminPolicyTest, UserMayModifySettings) {
- CreateExtension(Manifest::INTERNAL);
- EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), NULL));
- base::string16 error;
- EXPECT_TRUE(ap::UserMayModifySettings(extension_.get(), &error));
- EXPECT_TRUE(error.empty());
-
- CreateExtension(Manifest::EXTERNAL_POLICY_DOWNLOAD);
- error.clear();
- EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), NULL));
- EXPECT_FALSE(ap::UserMayModifySettings(extension_.get(), &error));
- EXPECT_FALSE(error.empty());
-}
-
-TEST_F(ExtensionAdminPolicyTest, MustRemainEnabled) {
- CreateExtension(Manifest::EXTERNAL_POLICY_DOWNLOAD);
- EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), NULL));
- base::string16 error;
- EXPECT_TRUE(ap::MustRemainEnabled(extension_.get(), &error));
- EXPECT_FALSE(error.empty());
-
- CreateExtension(Manifest::INTERNAL);
- error.clear();
- EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), NULL));
- EXPECT_FALSE(ap::MustRemainEnabled(extension_.get(), &error));
- EXPECT_TRUE(error.empty());
-}

Powered by Google App Engine
This is Rietveld 408576698