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

Unified Diff: chrome/browser/sync/profile_sync_factory_impl_unittest.cc

Issue 6249006: Turn password sync on by default. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 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/sync/profile_sync_factory_impl_unittest.cc
===================================================================
--- chrome/browser/sync/profile_sync_factory_impl_unittest.cc (revision 71392)
+++ chrome/browser/sync/profile_sync_factory_impl_unittest.cc (working copy)
@@ -2,6 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
+#include <vector>
+
#include "testing/gtest/include/gtest/gtest.h"
#include "base/command_line.h"
#include "base/file_path.h"
@@ -30,6 +32,56 @@
new ProfileSyncFactoryImpl(profile_.get(), command_line_.get()));
}
+ // Returns the collection of default datatypes.
+ static std::vector<syncable::ModelType> DefaultDatatypes() {
+ std::vector<syncable::ModelType> datatypes;
+ datatypes.push_back(syncable::BOOKMARKS);
+ datatypes.push_back(syncable::PREFERENCES);
+ datatypes.push_back(syncable::AUTOFILL);
+ datatypes.push_back(syncable::THEMES);
+ datatypes.push_back(syncable::EXTENSIONS);
+ datatypes.push_back(syncable::APPS);
+ datatypes.push_back(syncable::AUTOFILL_PROFILE);
+ datatypes.push_back(syncable::PASSWORDS);
+ return datatypes;
+ }
+
+ // Returns the number of default datatypes.
+ static size_t DefaultDatatypesCount() {
+ return DefaultDatatypes().size();
+ }
+
+ // Asserts that all the default datatypes are in |map|, except
+ // for |exception_type|, which unless it is UNDEFINED, is asserted to
+ // not be in |map|.
+ static void CheckDefaultDatatypesInMapExcept(
+ DataTypeController::StateMap* map,
+ syncable::ModelType exception_type) {
+ std::vector<syncable::ModelType> defaults = DefaultDatatypes();
+ std::vector<syncable::ModelType>::iterator iter;
+ for (iter = defaults.begin(); iter != defaults.end(); ++iter) {
+ if (exception_type != syncable::UNSPECIFIED && exception_type == *iter)
+ EXPECT_EQ(0U, map->count(*iter))
+ << *iter << " found in dataypes map, shouldn't be there.";
+ else
+ EXPECT_EQ(1U, map->count(*iter))
+ << *iter << " not found in datatypes map";
+ }
+ }
+
+ // Asserts that if you apply the command line switch |cmd_switch|,
+ // all types are enabled except for |type|, which is disabled.
+ void TestSwitchDisablesType(const char* cmd_switch,
+ syncable::ModelType type) {
+ command_line_->AppendSwitch(cmd_switch);
+ scoped_ptr<ProfileSyncService> pss(
+ profile_sync_service_factory_->CreateProfileSyncService(""));
+ DataTypeController::StateMap controller_states;
+ pss->GetDataTypeControllerStates(&controller_states);
+ EXPECT_EQ(DefaultDatatypesCount() - 1, controller_states.size());
+ CheckDefaultDatatypesInMapExcept(&controller_states, type);
+ }
+
MessageLoop message_loop_;
BrowserThread ui_thread_;
scoped_ptr<Profile> profile_;
@@ -38,136 +90,50 @@
};
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDefault) {
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
+ scoped_ptr<ProfileSyncService> pss(
+ profile_sync_service_factory_->CreateProfileSyncService(""));
DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(7U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ pss->GetDataTypeControllerStates(&controller_states);
+ EXPECT_EQ(DefaultDatatypesCount(), controller_states.size());
+ CheckDefaultDatatypesInMapExcept(&controller_states, syncable::UNSPECIFIED);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableAutofill) {
- command_line_->AppendSwitch(switches::kDisableSyncAutofill);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncAutofill,
+ syncable::AUTOFILL);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableBookmarks) {
- command_line_->AppendSwitch(switches::kDisableSyncBookmarks);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncBookmarks,
+ syncable::BOOKMARKS);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisablePreferences) {
- command_line_->AppendSwitch(switches::kDisableSyncPreferences);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncPreferences,
+ syncable::PREFERENCES);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableThemes) {
- command_line_->AppendSwitch(switches::kDisableSyncThemes);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncThemes,
+ syncable::THEMES);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableExtensions) {
- command_line_->AppendSwitch(switches::kDisableSyncExtensions);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncExtensions,
+ syncable::EXTENSIONS);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableApps) {
- command_line_->AppendSwitch(switches::kDisableSyncApps);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncApps,
+ syncable::APPS);
}
TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisableAutofillProfile) {
- command_line_->AppendSwitch(switches::kDisableSyncAutofillProfile);
- scoped_ptr<ProfileSyncService> pss;
- pss.reset(profile_sync_service_factory_->CreateProfileSyncService(""));
- DataTypeController::StateMap controller_states;
- DataTypeController::StateMap* controller_states_ptr = &controller_states;
- pss->GetDataTypeControllerStates(controller_states_ptr);
- EXPECT_EQ(6U, controller_states_ptr->size());
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::BOOKMARKS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::PREFERENCES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::AUTOFILL));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::THEMES));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::EXTENSIONS));
- EXPECT_EQ(1U, controller_states_ptr->count(syncable::APPS));
- EXPECT_EQ(0U, controller_states_ptr->count(syncable::AUTOFILL_PROFILE));
+ TestSwitchDisablesType(switches::kDisableSyncAutofillProfile,
+ syncable::AUTOFILL_PROFILE);
}
+
+TEST_F(ProfileSyncFactoryImplTest, CreatePSSDisablePasswords) {
+ TestSwitchDisablesType(switches::kDisableSyncPasswords,
+ syncable::PASSWORDS);
+}
« no previous file with comments | « chrome/browser/sync/profile_sync_factory_impl.cc ('k') | chrome/browser/sync/profile_sync_service_autofill_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698