summaryrefslogtreecommitdiffstats
path: root/chrome/browser/managed_mode
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/managed_mode')
-rw-r--r--chrome/browser/managed_mode/managed_mode_browsertest.cc3
-rw-r--r--chrome/browser/managed_mode/managed_mode_resource_throttle_browsertest.cc9
-rw-r--r--chrome/browser/managed_mode/managed_user_service.cc19
-rw-r--r--chrome/browser/managed_mode/managed_user_service.h9
-rw-r--r--chrome/browser/managed_mode/managed_user_service_browsertest.cc38
-rw-r--r--chrome/browser/managed_mode/managed_user_service_unittest.cc54
6 files changed, 69 insertions, 63 deletions
diff --git a/chrome/browser/managed_mode/managed_mode_browsertest.cc b/chrome/browser/managed_mode/managed_mode_browsertest.cc
index 67e54ed..86e3817 100644
--- a/chrome/browser/managed_mode/managed_mode_browsertest.cc
+++ b/chrome/browser/managed_mode/managed_mode_browsertest.cc
@@ -107,7 +107,6 @@ class ManagedModeBlockModeTest : public InProcessBrowserTest {
Profile* profile = browser()->profile();
managed_user_service_ = ManagedUserServiceFactory::GetForProfile(profile);
- managed_user_service_->InitForTesting();
ManagedUserSettingsService* managed_user_settings_service =
ManagedUserSettingsServiceFactory::GetForProfile(profile);
managed_user_settings_service->SetLocalSettingForTesting(
@@ -124,6 +123,8 @@ class ManagedModeBlockModeTest : public InProcessBrowserTest {
"MAP *.example.com " + host_port + "," +
"MAP *.new-example.com " + host_port + "," +
"MAP *.a.com " + host_port);
+
+ command_line->AppendSwitch(switches::kNewProfileIsSupervised);
}
// Acts like a synchronous call to history's QueryHistory. Modified from
diff --git a/chrome/browser/managed_mode/managed_mode_resource_throttle_browsertest.cc b/chrome/browser/managed_mode/managed_mode_resource_throttle_browsertest.cc
index 9fdf8a6..9bfb460 100644
--- a/chrome/browser/managed_mode/managed_mode_resource_throttle_browsertest.cc
+++ b/chrome/browser/managed_mode/managed_mode_resource_throttle_browsertest.cc
@@ -4,6 +4,7 @@
#include "chrome/browser/managed_mode/managed_mode_resource_throttle.h"
+#include "base/command_line.h"
#include "base/prefs/pref_service.h"
#include "base/values.h"
#include "chrome/browser/managed_mode/managed_user_constants.h"
@@ -13,6 +14,7 @@
#include "chrome/browser/managed_mode/managed_user_settings_service_factory.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/ui/browser.h"
+#include "chrome/common/chrome_switches.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "chrome/test/base/ui_test_utils.h"
#include "content/public/browser/navigation_entry.h"
@@ -33,6 +35,7 @@ class ManagedModeResourceThrottleTest : public InProcessBrowserTest {
private:
virtual void SetUpOnMainThread() OVERRIDE;
+ virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE;
ManagedUserService* managed_user_service_;
};
@@ -40,7 +43,11 @@ class ManagedModeResourceThrottleTest : public InProcessBrowserTest {
void ManagedModeResourceThrottleTest::SetUpOnMainThread() {
managed_user_service_ =
ManagedUserServiceFactory::GetForProfile(browser()->profile());
- managed_user_service_->InitForTesting();
+}
+
+void ManagedModeResourceThrottleTest::SetUpCommandLine(
+ CommandLine* command_line) {
+ command_line->AppendSwitch(switches::kNewProfileIsSupervised);
}
// Tests that showing the blocking interstitial for a WebContents without a
diff --git a/chrome/browser/managed_mode/managed_user_service.cc b/chrome/browser/managed_mode/managed_user_service.cc
index 96bb3a1..7015c3f 100644
--- a/chrome/browser/managed_mode/managed_user_service.cc
+++ b/chrome/browser/managed_mode/managed_user_service.cc
@@ -293,11 +293,6 @@ void ManagedUserService::DidBlockNavigation(
}
}
-void ManagedUserService::AddInitCallback(
- const base::Closure& callback) {
- init_callbacks_.push_back(callback);
-}
-
std::string ManagedUserService::GetDebugPolicyProviderName() const {
// Save the string space in official builds.
#ifdef NDEBUG
@@ -528,12 +523,6 @@ void ManagedUserService::GetManualExceptionsForHost(const std::string& host,
}
}
-void ManagedUserService::InitForTesting() {
- DCHECK(!profile_->IsManaged());
- profile_->GetPrefs()->SetString(prefs::kManagedUserId, "Test ID");
- Init();
-}
-
void ManagedUserService::InitSync(const std::string& refresh_token) {
ProfileSyncService* service =
ProfileSyncServiceFactory::GetForProfile(profile_);
@@ -611,14 +600,6 @@ void ManagedUserService::Init() {
UpdateSiteLists();
UpdateManualHosts();
UpdateManualURLs();
-
- // Call the callbacks to notify that the ManagedUserService has been
- // initialized.
- for (std::vector<base::Closure>::iterator it = init_callbacks_.begin();
- it != init_callbacks_.end();
- ++it) {
- it->Run();
- }
}
void ManagedUserService::RegisterAndInitSync(
diff --git a/chrome/browser/managed_mode/managed_user_service.h b/chrome/browser/managed_mode/managed_user_service.h
index b2d05f6..baf790c 100644
--- a/chrome/browser/managed_mode/managed_user_service.h
+++ b/chrome/browser/managed_mode/managed_user_service.h
@@ -116,9 +116,6 @@ class ManagedUserService : public BrowserContextKeyedService,
// managed.
void Init();
- // Marks the profile as managed and initializes it.
- void InitForTesting();
-
// Initializes this profile for syncing, using the provided |refresh_token| to
// mint access tokens for Sync.
void InitSync(const std::string& refresh_token);
@@ -144,8 +141,6 @@ class ManagedUserService : public BrowserContextKeyedService,
void AddNavigationBlockedCallback(const NavigationBlockedCallback& callback);
void DidBlockNavigation(content::WebContents* web_contents);
- void AddInitCallback(const base::Closure& callback);
-
// extensions::ManagementPolicy::Provider implementation:
virtual std::string GetDebugPolicyProviderName() const OVERRIDE;
virtual bool UserMayLoad(const extensions::Extension* extension,
@@ -165,7 +160,7 @@ class ManagedUserService : public BrowserContextKeyedService,
virtual void OnBrowserSetLastActive(Browser* browser) OVERRIDE;
private:
- friend class ManagedUserServiceExtensionTest;
+ friend class ManagedUserServiceExtensionTestBase;
friend class ManagedUserServiceFactory;
FRIEND_TEST_ALL_PREFIXES(ManagedUserServiceTest,
ExtensionManagementPolicyProviderUnmanaged);
@@ -259,8 +254,6 @@ class ManagedUserService : public BrowserContextKeyedService,
bool waiting_for_sync_initialization_;
bool is_profile_active_;
- std::vector<base::Closure> init_callbacks_;
-
std::vector<NavigationBlockedCallback> navigation_blocked_callbacks_;
// Sets a profile in elevated state for testing if set to true.
diff --git a/chrome/browser/managed_mode/managed_user_service_browsertest.cc b/chrome/browser/managed_mode/managed_user_service_browsertest.cc
index 9af82f6..571f413 100644
--- a/chrome/browser/managed_mode/managed_user_service_browsertest.cc
+++ b/chrome/browser/managed_mode/managed_user_service_browsertest.cc
@@ -2,6 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include "base/command_line.h"
#include "base/prefs/pref_service.h"
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/browser_process.h"
@@ -14,24 +15,26 @@
#include "chrome/browser/profiles/profile_info_cache.h"
#include "chrome/browser/profiles/profile_manager.h"
#include "chrome/browser/ui/browser.h"
+#include "chrome/common/chrome_switches.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/in_process_browser_test.h"
#include "content/public/test/test_utils.h"
typedef InProcessBrowserTest ManagedUserServiceTest;
+class ManagedUserServiceTestManaged : public InProcessBrowserTest {
+ public:
+ // content::BrowserTestBase:
+ virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
+ command_line->AppendSwitch(switches::kNewProfileIsSupervised);
+ }
+};
+
IN_PROC_BROWSER_TEST_F(ManagedUserServiceTest, LocalPolicies) {
Profile* profile = browser()->profile();
PrefService* prefs = profile->GetPrefs();
EXPECT_FALSE(prefs->GetBoolean(prefs::kForceSafeSearch));
EXPECT_TRUE(prefs->IsUserModifiablePreference(prefs::kForceSafeSearch));
-
- ManagedUserService* managed_user_service =
- ManagedUserServiceFactory::GetForProfile(profile);
- managed_user_service->InitForTesting();
-
- EXPECT_TRUE(prefs->GetBoolean(prefs::kForceSafeSearch));
- EXPECT_FALSE(prefs->IsUserModifiablePreference(prefs::kForceSafeSearch));
}
IN_PROC_BROWSER_TEST_F(ManagedUserServiceTest, ProfileName) {
@@ -45,11 +48,22 @@ IN_PROC_BROWSER_TEST_F(ManagedUserServiceTest, ProfileName) {
size_t profile_index = cache.GetIndexOfProfileWithPath(profile->GetPath());
EXPECT_EQ(original_name,
UTF16ToUTF8(cache.GetNameOfProfileAtIndex(profile_index)));
+}
+
+IN_PROC_BROWSER_TEST_F(ManagedUserServiceTestManaged, LocalPolicies) {
+ Profile* profile = browser()->profile();
+ PrefService* prefs = profile->GetPrefs();
+ EXPECT_TRUE(prefs->GetBoolean(prefs::kForceSafeSearch));
+ EXPECT_FALSE(prefs->IsUserModifiablePreference(prefs::kForceSafeSearch));
+}
+
+IN_PROC_BROWSER_TEST_F(ManagedUserServiceTestManaged, ProfileName) {
+ Profile* profile = browser()->profile();
+ PrefService* prefs = profile->GetPrefs();
+ std::string original_name = prefs->GetString(prefs::kProfileName);
+ ProfileManager* profile_manager = g_browser_process->profile_manager();
+ const ProfileInfoCache& cache = profile_manager->GetProfileInfoCache();
- // Change the profile to a managed user.
- ManagedUserService* managed_user_service =
- ManagedUserServiceFactory::GetForProfile(profile);
- managed_user_service->InitForTesting();
ManagedUserSettingsService* settings =
ManagedUserSettingsServiceFactory::GetForProfile(profile);
@@ -59,7 +73,7 @@ IN_PROC_BROWSER_TEST_F(ManagedUserServiceTest, ProfileName) {
scoped_ptr<base::Value>(new base::StringValue(name)));
EXPECT_FALSE(prefs->IsUserModifiablePreference(prefs::kProfileName));
EXPECT_EQ(name, prefs->GetString(prefs::kProfileName));
- profile_index = cache.GetIndexOfProfileWithPath(profile->GetPath());
+ size_t profile_index = cache.GetIndexOfProfileWithPath(profile->GetPath());
EXPECT_EQ(name, UTF16ToUTF8(cache.GetNameOfProfileAtIndex(profile_index)));
// Change the name once more.
diff --git a/chrome/browser/managed_mode/managed_user_service_unittest.cc b/chrome/browser/managed_mode/managed_user_service_unittest.cc
index 42a2a32..97183eb 100644
--- a/chrome/browser/managed_mode/managed_user_service_unittest.cc
+++ b/chrome/browser/managed_mode/managed_user_service_unittest.cc
@@ -20,7 +20,7 @@
#include "chrome/common/extensions/extension_builder.h"
#include "chrome/common/pref_names.h"
#include "chrome/test/base/testing_profile.h"
-#include "content/public/test/test_browser_thread.h"
+#include "content/public/test/test_browser_thread_bundle.h"
#include "content/public/test/test_utils.h"
#include "extensions/common/manifest_constants.h"
#include "testing/gtest/include/gtest/gtest.h"
@@ -66,16 +66,14 @@ class ManagedModeURLFilterObserver : public ManagedModeURLFilter::Observer {
class ManagedUserServiceTest : public ::testing::Test {
public:
- ManagedUserServiceTest() : ui_thread_(content::BrowserThread::UI,
- &message_loop_) {
+ ManagedUserServiceTest() {
managed_user_service_ = ManagedUserServiceFactory::GetForProfile(&profile_);
}
virtual ~ManagedUserServiceTest() {}
protected:
- base::MessageLoop message_loop_;
- content::TestBrowserThread ui_thread_;
+ content::TestBrowserThreadBundle thread_bundle_;
TestingProfile profile_;
ManagedUserService* managed_user_service_;
};
@@ -152,18 +150,19 @@ TEST_F(ManagedUserServiceTest, ShutDownCustodianProfileDownloader) {
downloader_service->DownloadProfile(base::Bind(&OnProfileDownloadedFail));
}
-class ManagedUserServiceExtensionTest : public ExtensionServiceTestBase {
+class ManagedUserServiceExtensionTestBase : public ExtensionServiceTestBase {
public:
- ManagedUserServiceExtensionTest() {}
- virtual ~ManagedUserServiceExtensionTest() {}
+ explicit ManagedUserServiceExtensionTestBase(bool is_managed)
+ : is_managed_(is_managed) {}
+ virtual ~ManagedUserServiceExtensionTestBase() {}
virtual void SetUp() OVERRIDE {
ExtensionServiceTestBase::SetUp();
- InitializeEmptyExtensionService();
- }
-
- virtual void TearDown() OVERRIDE {
- ExtensionServiceTestBase::TearDown();
+ ExtensionServiceTestBase::ExtensionServiceInitParams params =
+ CreateDefaultInitParams();
+ params.profile_is_managed = is_managed_;
+ InitializeExtensionService(params);
+ ManagedUserServiceFactory::GetForProfile(profile_.get())->Init();
}
protected:
@@ -193,10 +192,26 @@ class ManagedUserServiceExtensionTest : public ExtensionServiceTestBase {
builder.SetManifest(manifest.Pass()).Build();
return extension;
}
+
+ bool is_managed_;
+};
+
+class ManagedUserServiceExtensionTestUnmanaged
+ : public ManagedUserServiceExtensionTestBase {
+ public:
+ ManagedUserServiceExtensionTestUnmanaged()
+ : ManagedUserServiceExtensionTestBase(false) {}
};
-TEST_F(ManagedUserServiceExtensionTest,
- ExtensionManagementPolicyProviderUnmanaged) {
+class ManagedUserServiceExtensionTest
+ : public ManagedUserServiceExtensionTestBase {
+ public:
+ ManagedUserServiceExtensionTest()
+ : ManagedUserServiceExtensionTestBase(true) {}
+};
+
+TEST_F(ManagedUserServiceExtensionTestUnmanaged,
+ ExtensionManagementPolicyProvider) {
ManagedUserService* managed_user_service =
ManagedUserServiceFactory::GetForProfile(profile_.get());
EXPECT_FALSE(profile_->IsManaged());
@@ -212,14 +227,12 @@ TEST_F(ManagedUserServiceExtensionTest,
EXPECT_EQ(string16(), error_2);
}
-TEST_F(ManagedUserServiceExtensionTest,
- ExtensionManagementPolicyProviderManaged) {
+TEST_F(ManagedUserServiceExtensionTest, ExtensionManagementPolicyProvider) {
ManagedUserService* managed_user_service =
ManagedUserServiceFactory::GetForProfile(profile_.get());
- managed_user_service->InitForTesting();
ManagedModeURLFilterObserver observer(
managed_user_service->GetURLFilterForUIThread());
- EXPECT_TRUE(profile_->IsManaged());
+ ASSERT_TRUE(profile_->IsManaged());
// Wait for the initial update to finish (otherwise we'll get leaks).
observer.Wait();
@@ -247,11 +260,9 @@ TEST_F(ManagedUserServiceExtensionTest,
#endif
}
-
TEST_F(ManagedUserServiceExtensionTest, NoContentPacks) {
ManagedUserService* managed_user_service =
ManagedUserServiceFactory::GetForProfile(profile_.get());
- managed_user_service->Init();
ManagedModeURLFilter* url_filter =
managed_user_service->GetURLFilterForUIThread();
@@ -266,7 +277,6 @@ TEST_F(ManagedUserServiceExtensionTest, NoContentPacks) {
TEST_F(ManagedUserServiceExtensionTest, InstallContentPacks) {
ManagedUserService* managed_user_service =
ManagedUserServiceFactory::GetForProfile(profile_.get());
- managed_user_service->InitForTesting();
ManagedModeURLFilter* url_filter =
managed_user_service->GetURLFilterForUIThread();
ManagedModeURLFilterObserver observer(url_filter);