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

Unified Diff: chrome/browser/managed_mode/managed_user_settings_service_unittest.cc

Issue 335833003: Rename "managed (mode|user)" to "supervised user" (part 2) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review comments (+ a few other cleanups) Created 6 years, 6 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/managed_mode/managed_user_settings_service_unittest.cc
diff --git a/chrome/browser/managed_mode/managed_user_settings_service_unittest.cc b/chrome/browser/managed_mode/managed_user_settings_service_unittest.cc
deleted file mode 100644
index 70dbc2b38b6ab168207a394b32464ee04742b2e3..0000000000000000000000000000000000000000
--- a/chrome/browser/managed_mode/managed_user_settings_service_unittest.cc
+++ /dev/null
@@ -1,302 +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 "base/bind.h"
-#include "base/callback.h"
-#include "base/json/json_reader.h"
-#include "base/prefs/testing_pref_store.h"
-#include "base/strings/string_util.h"
-#include "chrome/browser/managed_mode/managed_user_settings_service.h"
-#include "sync/api/fake_sync_change_processor.h"
-#include "sync/api/sync_change.h"
-#include "sync/api/sync_change_processor_wrapper_for_test.h"
-#include "sync/api/sync_error_factory_mock.h"
-#include "sync/protocol/sync.pb.h"
-#include "testing/gtest/include/gtest/gtest.h"
-
-namespace {
-
-class MockSyncErrorFactory : public syncer::SyncErrorFactory {
- public:
- explicit MockSyncErrorFactory(syncer::ModelType type);
- virtual ~MockSyncErrorFactory();
-
- // SyncErrorFactory implementation:
- virtual syncer::SyncError CreateAndUploadError(
- const tracked_objects::Location& location,
- const std::string& message) OVERRIDE;
-
- private:
- syncer::ModelType type_;
-
- DISALLOW_COPY_AND_ASSIGN(MockSyncErrorFactory);
-};
-
-MockSyncErrorFactory::MockSyncErrorFactory(syncer::ModelType type)
- : type_(type) {}
-
-MockSyncErrorFactory::~MockSyncErrorFactory() {}
-
-syncer::SyncError MockSyncErrorFactory::CreateAndUploadError(
- const tracked_objects::Location& location,
- const std::string& message) {
- return syncer::SyncError(location,
- syncer::SyncError::DATATYPE_ERROR,
- message,
- type_);
-}
-
-} // namespace
-
-const char kAtomicItemName[] = "X-Wombat";
-const char kSettingsName[] = "TestingSetting";
-const char kSettingsValue[] = "SettingsValue";
-const char kSplitItemName[] = "X-SuperMoosePowers";
-
-class ManagedUserSettingsServiceTest : public ::testing::Test {
- protected:
- ManagedUserSettingsServiceTest() {}
- virtual ~ManagedUserSettingsServiceTest() {}
-
- scoped_ptr<syncer::SyncChangeProcessor> CreateSyncProcessor() {
- sync_processor_.reset(new syncer::FakeSyncChangeProcessor);
- return scoped_ptr<syncer::SyncChangeProcessor>(
- new syncer::SyncChangeProcessorWrapperForTest(sync_processor_.get()));
- }
-
- void StartSyncing(const syncer::SyncDataList& initial_sync_data) {
- scoped_ptr<syncer::SyncErrorFactory> error_handler(
- new MockSyncErrorFactory(syncer::SUPERVISED_USER_SETTINGS));
- syncer::SyncMergeResult result = settings_service_.MergeDataAndStartSyncing(
- syncer::SUPERVISED_USER_SETTINGS,
- initial_sync_data,
- CreateSyncProcessor(),
- error_handler.Pass());
- EXPECT_FALSE(result.error().IsSet());
- }
-
- void UploadSplitItem(const std::string& key, const std::string& value) {
- split_items_.SetStringWithoutPathExpansion(key, value);
- settings_service_.UploadItem(
- ManagedUserSettingsService::MakeSplitSettingKey(kSplitItemName,
- key),
- scoped_ptr<base::Value>(new base::StringValue(value)));
- }
-
- void UploadAtomicItem(const std::string& value) {
- atomic_setting_value_.reset(new base::StringValue(value));
- settings_service_.UploadItem(
- kAtomicItemName,
- scoped_ptr<base::Value>(new base::StringValue(value)));
- }
-
- void VerifySyncDataItem(syncer::SyncData sync_data) {
- const sync_pb::ManagedUserSettingSpecifics& managed_user_setting =
- sync_data.GetSpecifics().managed_user_setting();
- base::Value* expected_value = NULL;
- if (managed_user_setting.name() == kAtomicItemName) {
- expected_value = atomic_setting_value_.get();
- } else {
- EXPECT_TRUE(StartsWithASCII(managed_user_setting.name(),
- std::string(kSplitItemName) + ':',
- true));
- std::string key =
- managed_user_setting.name().substr(strlen(kSplitItemName) + 1);
- EXPECT_TRUE(split_items_.GetWithoutPathExpansion(key, &expected_value));
- }
-
- scoped_ptr<base::Value> value(
- base::JSONReader::Read(managed_user_setting.value()));
- EXPECT_TRUE(expected_value->Equals(value.get()));
- }
-
- void OnNewSettingsAvailable(const base::DictionaryValue* settings) {
- if (!settings)
- settings_.reset();
- else
- settings_.reset(settings->DeepCopy());
- }
-
- // testing::Test overrides:
- virtual void SetUp() OVERRIDE {
- TestingPrefStore* pref_store = new TestingPrefStore;
- settings_service_.Init(pref_store);
- settings_service_.Subscribe(
- base::Bind(&ManagedUserSettingsServiceTest::OnNewSettingsAvailable,
- base::Unretained(this)));
- pref_store->SetInitializationCompleted();
- ASSERT_FALSE(settings_);
- settings_service_.SetActive(true);
- ASSERT_TRUE(settings_);
- }
-
- virtual void TearDown() OVERRIDE {
- settings_service_.Shutdown();
- }
-
- base::DictionaryValue split_items_;
- scoped_ptr<base::Value> atomic_setting_value_;
- ManagedUserSettingsService settings_service_;
- scoped_ptr<base::DictionaryValue> settings_;
-
- scoped_ptr<syncer::FakeSyncChangeProcessor> sync_processor_;
-};
-
-TEST_F(ManagedUserSettingsServiceTest, ProcessAtomicSetting) {
- StartSyncing(syncer::SyncDataList());
- ASSERT_TRUE(settings_);
- const base::Value* value = NULL;
- EXPECT_FALSE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
-
- settings_.reset();
- syncer::SyncData data =
- ManagedUserSettingsService::CreateSyncDataForSetting(
- kSettingsName, base::StringValue(kSettingsValue));
- syncer::SyncChangeList change_list;
- change_list.push_back(
- syncer::SyncChange(FROM_HERE, syncer::SyncChange::ACTION_ADD, data));
- syncer::SyncError error =
- settings_service_.ProcessSyncChanges(FROM_HERE, change_list);
- EXPECT_FALSE(error.IsSet()) << error.ToString();
- ASSERT_TRUE(settings_);
- ASSERT_TRUE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
- std::string string_value;
- EXPECT_TRUE(value->GetAsString(&string_value));
- EXPECT_EQ(kSettingsValue, string_value);
-}
-
-TEST_F(ManagedUserSettingsServiceTest, ProcessSplitSetting) {
- StartSyncing(syncer::SyncDataList());
- ASSERT_TRUE(settings_);
- const base::Value* value = NULL;
- EXPECT_FALSE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
-
- base::DictionaryValue dict;
- dict.SetString("foo", "bar");
- dict.SetBoolean("awesomesauce", true);
- dict.SetInteger("eaudecologne", 4711);
-
- settings_.reset();
- syncer::SyncChangeList change_list;
- for (base::DictionaryValue::Iterator it(dict); !it.IsAtEnd(); it.Advance()) {
- syncer::SyncData data =
- ManagedUserSettingsService::CreateSyncDataForSetting(
- ManagedUserSettingsService::MakeSplitSettingKey(kSettingsName,
- it.key()),
- it.value());
- change_list.push_back(
- syncer::SyncChange(FROM_HERE, syncer::SyncChange::ACTION_ADD, data));
- }
- syncer::SyncError error =
- settings_service_.ProcessSyncChanges(FROM_HERE, change_list);
- EXPECT_FALSE(error.IsSet()) << error.ToString();
- ASSERT_TRUE(settings_);
- ASSERT_TRUE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
- const base::DictionaryValue* dict_value = NULL;
- ASSERT_TRUE(value->GetAsDictionary(&dict_value));
- EXPECT_TRUE(dict_value->Equals(&dict));
-}
-
-TEST_F(ManagedUserSettingsServiceTest, SetLocalSetting) {
- const base::Value* value = NULL;
- EXPECT_FALSE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
-
- settings_.reset();
- settings_service_.SetLocalSettingForTesting(
- kSettingsName,
- scoped_ptr<base::Value>(new base::StringValue(kSettingsValue)));
- ASSERT_TRUE(settings_);
- ASSERT_TRUE(settings_->GetWithoutPathExpansion(kSettingsName, &value));
- std::string string_value;
- EXPECT_TRUE(value->GetAsString(&string_value));
- EXPECT_EQ(kSettingsValue, string_value);
-}
-
-TEST_F(ManagedUserSettingsServiceTest, UploadItem) {
- UploadSplitItem("foo", "bar");
- UploadSplitItem("blurp", "baz");
- UploadAtomicItem("hurdle");
-
- // Uploading should produce changes when we start syncing.
- StartSyncing(syncer::SyncDataList());
- ASSERT_EQ(3u, sync_processor_->changes().size());
- for (syncer::SyncChangeList::const_iterator it =
- sync_processor_->changes().begin();
- it != sync_processor_->changes().end();
- ++it) {
- ASSERT_TRUE(it->IsValid());
- EXPECT_EQ(syncer::SyncChange::ACTION_ADD, it->change_type());
- VerifySyncDataItem(it->sync_data());
- }
-
- // It should also show up in local Sync data.
- syncer::SyncDataList sync_data =
- settings_service_.GetAllSyncData(syncer::SUPERVISED_USER_SETTINGS);
- EXPECT_EQ(3u, sync_data.size());
- for (syncer::SyncDataList::const_iterator it = sync_data.begin();
- it != sync_data.end(); ++it) {
- VerifySyncDataItem(*it);
- }
-
- // Uploading after we have started syncing should work too.
- sync_processor_->changes().clear();
- UploadSplitItem("froodle", "narf");
- ASSERT_EQ(1u, sync_processor_->changes().size());
- syncer::SyncChange change = sync_processor_->changes()[0];
- ASSERT_TRUE(change.IsValid());
- EXPECT_EQ(syncer::SyncChange::ACTION_ADD, change.change_type());
- VerifySyncDataItem(change.sync_data());
-
- sync_data = settings_service_.GetAllSyncData(
- syncer::SUPERVISED_USER_SETTINGS);
- EXPECT_EQ(4u, sync_data.size());
- for (syncer::SyncDataList::const_iterator it = sync_data.begin();
- it != sync_data.end(); ++it) {
- VerifySyncDataItem(*it);
- }
-
- // Uploading an item with a previously seen key should create an UPDATE
- // action.
- sync_processor_->changes().clear();
- UploadSplitItem("blurp", "snarl");
- ASSERT_EQ(1u, sync_processor_->changes().size());
- change = sync_processor_->changes()[0];
- ASSERT_TRUE(change.IsValid());
- EXPECT_EQ(syncer::SyncChange::ACTION_UPDATE, change.change_type());
- VerifySyncDataItem(change.sync_data());
-
- sync_data = settings_service_.GetAllSyncData(
- syncer::SUPERVISED_USER_SETTINGS);
- EXPECT_EQ(4u, sync_data.size());
- for (syncer::SyncDataList::const_iterator it = sync_data.begin();
- it != sync_data.end(); ++it) {
- VerifySyncDataItem(*it);
- }
-
- sync_processor_->changes().clear();
- UploadAtomicItem("fjord");
- ASSERT_EQ(1u, sync_processor_->changes().size());
- change = sync_processor_->changes()[0];
- ASSERT_TRUE(change.IsValid());
- EXPECT_EQ(syncer::SyncChange::ACTION_UPDATE, change.change_type());
- VerifySyncDataItem(change.sync_data());
-
- sync_data = settings_service_.GetAllSyncData(
- syncer::SUPERVISED_USER_SETTINGS);
- EXPECT_EQ(4u, sync_data.size());
- for (syncer::SyncDataList::const_iterator it = sync_data.begin();
- it != sync_data.end(); ++it) {
- VerifySyncDataItem(*it);
- }
-
- // The uploaded items should not show up as settings.
- const base::Value* value = NULL;
- EXPECT_FALSE(settings_->GetWithoutPathExpansion(kAtomicItemName, &value));
- EXPECT_FALSE(settings_->GetWithoutPathExpansion(kSplitItemName, &value));
-
- // Restarting sync should not create any new changes.
- settings_service_.StopSyncing(syncer::SUPERVISED_USER_SETTINGS);
- StartSyncing(sync_data);
- ASSERT_EQ(0u, sync_processor_->changes().size());
-}

Powered by Google App Engine
This is Rietveld 408576698