Index: chrome/browser/sync/sessions/status_controller_unittest.cc |
diff --git a/chrome/browser/sync/sessions/status_controller_unittest.cc b/chrome/browser/sync/sessions/status_controller_unittest.cc |
deleted file mode 100644 |
index 24827d8c4368c56b80ae2e04df923f70c5eaf5a4..0000000000000000000000000000000000000000 |
--- a/chrome/browser/sync/sessions/status_controller_unittest.cc |
+++ /dev/null |
@@ -1,198 +0,0 @@ |
-// Copyright (c) 2012 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 "chrome/browser/sync/sessions/sync_session.h" |
-#include "chrome/browser/sync/test/engine/test_id_factory.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
- |
-namespace browser_sync { |
-namespace sessions { |
- |
-class StatusControllerTest : public testing::Test { |
- public: |
- virtual void SetUp() { |
- routes_[syncable::BOOKMARKS] = GROUP_UI; |
- } |
- protected: |
- ModelSafeRoutingInfo routes_; |
-}; |
- |
-TEST_F(StatusControllerTest, GetsDirty) { |
- StatusController status(routes_); |
- status.set_num_server_changes_remaining(30); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- |
- status.set_invalid_store(true); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- status.set_invalid_store(false); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- |
- status.increment_num_successful_commits(); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- status.increment_num_successful_commits(); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
- status.mutable_conflict_progress()-> |
- AddSimpleConflictingItemById(syncable::Id()); |
- } |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- |
- std::vector<int64> v; |
- v.push_back(1); |
- status.set_unsynced_handles(v); |
- EXPECT_TRUE(status.TestAndClearIsDirty()); |
- std::vector<int64> v2; |
- v2.push_back(1); |
- status.set_unsynced_handles(v2); |
- EXPECT_FALSE(status.TestAndClearIsDirty()); // Test for deep comparison. |
-} |
- |
-TEST_F(StatusControllerTest, StaysClean) { |
- StatusController status(routes_); |
- status.update_conflicts_resolved(true); |
- EXPECT_FALSE(status.TestAndClearIsDirty()); |
- |
- status.set_items_committed(); |
- EXPECT_FALSE(status.TestAndClearIsDirty()); |
- |
- OrderedCommitSet commits(routes_); |
- commits.AddCommitItem(0, syncable::Id(), syncable::BOOKMARKS); |
- status.set_commit_set(commits); |
- EXPECT_FALSE(status.TestAndClearIsDirty()); |
-} |
- |
-// This test is useful, as simple as it sounds, due to the copy-paste prone |
-// nature of status_controller.cc (we have had bugs in the past where a set_foo |
-// method was actually setting |bar_| instead!). |
-TEST_F(StatusControllerTest, ReadYourWrites) { |
- StatusController status(routes_); |
- status.set_num_server_changes_remaining(13); |
- EXPECT_EQ(13, status.num_server_changes_remaining()); |
- |
- EXPECT_FALSE(status.syncer_status().invalid_store); |
- status.set_invalid_store(true); |
- EXPECT_TRUE(status.syncer_status().invalid_store); |
- |
- EXPECT_FALSE(status.conflicts_resolved()); |
- status.update_conflicts_resolved(true); |
- EXPECT_TRUE(status.conflicts_resolved()); |
- |
- status.set_last_download_updates_result(SYNCER_OK); |
- EXPECT_EQ(SYNCER_OK, status.error().last_download_updates_result); |
- |
- status.set_last_post_commit_result(SYNC_AUTH_ERROR); |
- EXPECT_EQ(SYNC_AUTH_ERROR, status.error().last_post_commit_result); |
- |
- status.set_last_process_commit_response_result(SYNC_SERVER_ERROR); |
- EXPECT_EQ(SYNC_SERVER_ERROR, |
- status.error().last_process_commit_response_result); |
- |
- for (int i = 0; i < 14; i++) |
- status.increment_num_successful_commits(); |
- EXPECT_EQ(14, status.syncer_status().num_successful_commits); |
- |
- std::vector<int64> v; |
- v.push_back(16); |
- status.set_unsynced_handles(v); |
- EXPECT_EQ(16, v[0]); |
-} |
- |
-TEST_F(StatusControllerTest, HasConflictingUpdates) { |
- StatusController status(routes_); |
- EXPECT_FALSE(status.HasConflictingUpdates()); |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
- EXPECT_FALSE(status.update_progress()); |
- status.mutable_update_progress()->AddAppliedUpdate(SUCCESS, |
- syncable::Id()); |
- status.mutable_update_progress()->AddAppliedUpdate(CONFLICT_SIMPLE, |
- syncable::Id()); |
- EXPECT_TRUE(status.update_progress()->HasConflictingUpdates()); |
- } |
- |
- EXPECT_TRUE(status.HasConflictingUpdates()); |
- |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_PASSIVE); |
- EXPECT_FALSE(status.update_progress()); |
- } |
-} |
- |
-TEST_F(StatusControllerTest, HasConflictingUpdates_NonBlockingUpdates) { |
- StatusController status(routes_); |
- EXPECT_FALSE(status.HasConflictingUpdates()); |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
- EXPECT_FALSE(status.update_progress()); |
- status.mutable_update_progress()->AddAppliedUpdate(SUCCESS, |
- syncable::Id()); |
- status.mutable_update_progress()->AddAppliedUpdate(CONFLICT_HIERARCHY, |
- syncable::Id()); |
- EXPECT_TRUE(status.update_progress()->HasConflictingUpdates()); |
- } |
- |
- EXPECT_TRUE(status.HasConflictingUpdates()); |
-} |
- |
-TEST_F(StatusControllerTest, CountUpdates) { |
- StatusController status(routes_); |
- EXPECT_EQ(0, status.CountUpdates()); |
- ClientToServerResponse* response(status.mutable_updates_response()); |
- sync_pb::SyncEntity* entity1 = response->mutable_get_updates()->add_entries(); |
- sync_pb::SyncEntity* entity2 = response->mutable_get_updates()->add_entries(); |
- ASSERT_TRUE(entity1 != NULL && entity2 != NULL); |
- EXPECT_EQ(2, status.CountUpdates()); |
-} |
- |
-// Test TotalNumConflictingItems |
-TEST_F(StatusControllerTest, TotalNumConflictingItems) { |
- StatusController status(routes_); |
- TestIdFactory f; |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
- EXPECT_FALSE(status.conflict_progress()); |
- status.mutable_conflict_progress()-> |
- AddSimpleConflictingItemById(f.NewLocalId()); |
- status.mutable_conflict_progress()-> |
- AddSimpleConflictingItemById(f.NewLocalId()); |
- EXPECT_EQ(2, status.conflict_progress()->SimpleConflictingItemsSize()); |
- } |
- EXPECT_EQ(2, status.TotalNumConflictingItems()); |
- { |
- ScopedModelSafeGroupRestriction r(&status, GROUP_DB); |
- EXPECT_FALSE(status.conflict_progress()); |
- status.mutable_conflict_progress()-> |
- AddSimpleConflictingItemById(f.NewLocalId()); |
- status.mutable_conflict_progress()-> |
- AddSimpleConflictingItemById(f.NewLocalId()); |
- EXPECT_EQ(2, status.conflict_progress()->SimpleConflictingItemsSize()); |
- } |
- EXPECT_EQ(4, status.TotalNumConflictingItems()); |
-} |
- |
-// Basic test that non group-restricted state accessors don't cause violations. |
-TEST_F(StatusControllerTest, Unrestricted) { |
- StatusController status(routes_); |
- const UpdateProgress* progress = |
- status.GetUnrestrictedUpdateProgress(GROUP_UI); |
- EXPECT_FALSE(progress); |
- status.mutable_commit_message(); |
- status.commit_response(); |
- status.mutable_commit_response(); |
- status.updates_response(); |
- status.mutable_updates_response(); |
- status.error(); |
- status.syncer_status(); |
- status.num_server_changes_remaining(); |
- status.commit_ids(); |
- status.HasBookmarkCommitActivity(); |
- status.download_updates_succeeded(); |
- status.ServerSaysNothingMoreToDownload(); |
- status.group_restriction(); |
-} |
- |
-} // namespace sessions |
-} // namespace browser_sync |