OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/sync/sessions/sync_session.h" | 5 #include "chrome/browser/sync/sessions/sync_session.h" |
6 #include "chrome/browser/sync/test/engine/test_id_factory.h" | 6 #include "chrome/browser/sync/test/engine/test_id_factory.h" |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
8 | 8 |
9 namespace browser_sync { | 9 namespace browser_sync { |
10 namespace sessions { | 10 namespace sessions { |
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
55 status.set_invalid_store(false); | 55 status.set_invalid_store(false); |
56 EXPECT_TRUE(status.TestAndClearIsDirty()); | 56 EXPECT_TRUE(status.TestAndClearIsDirty()); |
57 | 57 |
58 status.increment_num_successful_commits(); | 58 status.increment_num_successful_commits(); |
59 EXPECT_TRUE(status.TestAndClearIsDirty()); | 59 EXPECT_TRUE(status.TestAndClearIsDirty()); |
60 status.increment_num_successful_commits(); | 60 status.increment_num_successful_commits(); |
61 EXPECT_TRUE(status.TestAndClearIsDirty()); | 61 EXPECT_TRUE(status.TestAndClearIsDirty()); |
62 | 62 |
63 { | 63 { |
64 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); | 64 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
65 status.mutable_conflict_progress()->AddConflictingItemById(syncable::Id()); | 65 status.mutable_conflict_progress()-> |
66 AddSimpleConflictingItemById(syncable::Id()); | |
66 } | 67 } |
67 EXPECT_TRUE(status.TestAndClearIsDirty()); | 68 EXPECT_TRUE(status.TestAndClearIsDirty()); |
68 | 69 |
69 std::vector<int64> v; | 70 std::vector<int64> v; |
70 v.push_back(1); | 71 v.push_back(1); |
71 status.set_unsynced_handles(v); | 72 status.set_unsynced_handles(v); |
72 EXPECT_TRUE(status.TestAndClearIsDirty()); | 73 EXPECT_TRUE(status.TestAndClearIsDirty()); |
73 std::vector<int64> v2; | 74 std::vector<int64> v2; |
74 v2.push_back(1); | 75 v2.push_back(1); |
75 status.set_unsynced_handles(v2); | 76 status.set_unsynced_handles(v2); |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
144 } | 145 } |
145 | 146 |
146 TEST_F(StatusControllerTest, HasConflictingUpdates) { | 147 TEST_F(StatusControllerTest, HasConflictingUpdates) { |
147 StatusController status(routes_); | 148 StatusController status(routes_); |
148 EXPECT_FALSE(status.HasConflictingUpdates()); | 149 EXPECT_FALSE(status.HasConflictingUpdates()); |
149 { | 150 { |
150 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); | 151 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
151 EXPECT_FALSE(status.update_progress()); | 152 EXPECT_FALSE(status.update_progress()); |
152 status.mutable_update_progress()->AddAppliedUpdate(SUCCESS, | 153 status.mutable_update_progress()->AddAppliedUpdate(SUCCESS, |
153 syncable::Id()); | 154 syncable::Id()); |
154 status.mutable_update_progress()->AddAppliedUpdate(CONFLICT, | 155 status.mutable_update_progress()->AddAppliedUpdate(CONFLICT_SIMPLE, |
155 syncable::Id()); | 156 syncable::Id()); |
156 EXPECT_TRUE(status.update_progress()->HasConflictingUpdates()); | 157 EXPECT_TRUE(status.update_progress()->HasConflictingUpdates()); |
157 } | 158 } |
158 | 159 |
159 EXPECT_TRUE(status.HasConflictingUpdates()); | 160 EXPECT_TRUE(status.HasConflictingUpdates()); |
160 | 161 |
161 { | 162 { |
162 ScopedModelSafeGroupRestriction r(&status, GROUP_PASSIVE); | 163 ScopedModelSafeGroupRestriction r(&status, GROUP_PASSIVE); |
163 EXPECT_FALSE(status.update_progress()); | 164 EXPECT_FALSE(status.update_progress()); |
164 } | 165 } |
165 } | 166 } |
166 | 167 |
168 TEST_F(StatusControllerTest, HasConflictingUpdates_NonBlockingUpdates) { | |
akalin
2012/02/10 23:11:54
comment this test
| |
169 StatusController status(routes_); | |
170 EXPECT_FALSE(status.HasConflictingUpdates()); | |
171 { | |
172 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); | |
173 EXPECT_FALSE(status.update_progress()); | |
174 status.mutable_update_progress()->AddAppliedUpdate(SUCCESS, | |
175 syncable::Id()); | |
176 status.mutable_update_progress()->AddAppliedUpdate(CONFLICT_HIERARCHY, | |
177 syncable::Id()); | |
178 EXPECT_TRUE(status.update_progress()->HasConflictingUpdates()); | |
179 } | |
180 | |
181 EXPECT_TRUE(status.HasConflictingUpdates()); | |
182 } | |
183 | |
167 TEST_F(StatusControllerTest, CountUpdates) { | 184 TEST_F(StatusControllerTest, CountUpdates) { |
168 StatusController status(routes_); | 185 StatusController status(routes_); |
169 EXPECT_EQ(0, status.CountUpdates()); | 186 EXPECT_EQ(0, status.CountUpdates()); |
170 ClientToServerResponse* response(status.mutable_updates_response()); | 187 ClientToServerResponse* response(status.mutable_updates_response()); |
171 sync_pb::SyncEntity* entity1 = response->mutable_get_updates()->add_entries(); | 188 sync_pb::SyncEntity* entity1 = response->mutable_get_updates()->add_entries(); |
172 sync_pb::SyncEntity* entity2 = response->mutable_get_updates()->add_entries(); | 189 sync_pb::SyncEntity* entity2 = response->mutable_get_updates()->add_entries(); |
173 ASSERT_TRUE(entity1 != NULL && entity2 != NULL); | 190 ASSERT_TRUE(entity1 != NULL && entity2 != NULL); |
174 EXPECT_EQ(2, status.CountUpdates()); | 191 EXPECT_EQ(2, status.CountUpdates()); |
175 } | 192 } |
176 | 193 |
177 // Test TotalNumConflictingItems | 194 // Test TotalNumConflictingItems |
178 TEST_F(StatusControllerTest, TotalNumConflictingItems) { | 195 TEST_F(StatusControllerTest, TotalNumConflictingItems) { |
179 StatusController status(routes_); | 196 StatusController status(routes_); |
180 TestIdFactory f; | 197 TestIdFactory f; |
181 { | 198 { |
182 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); | 199 ScopedModelSafeGroupRestriction r(&status, GROUP_UI); |
183 EXPECT_FALSE(status.conflict_progress()); | 200 EXPECT_FALSE(status.conflict_progress()); |
184 status.mutable_conflict_progress()->AddConflictingItemById(f.NewLocalId()); | 201 status.mutable_conflict_progress()-> |
185 status.mutable_conflict_progress()->AddConflictingItemById(f.NewLocalId()); | 202 AddSimpleConflictingItemById(f.NewLocalId()); |
186 EXPECT_EQ(2, status.conflict_progress()->ConflictingItemsSize()); | 203 status.mutable_conflict_progress()-> |
204 AddSimpleConflictingItemById(f.NewLocalId()); | |
205 EXPECT_EQ(2, status.conflict_progress()->SimpleConflictingItemsSize()); | |
187 } | 206 } |
188 EXPECT_EQ(2, status.TotalNumConflictingItems()); | 207 EXPECT_EQ(2, status.TotalNumConflictingItems()); |
189 { | 208 { |
190 ScopedModelSafeGroupRestriction r(&status, GROUP_DB); | 209 ScopedModelSafeGroupRestriction r(&status, GROUP_DB); |
191 EXPECT_FALSE(status.conflict_progress()); | 210 EXPECT_FALSE(status.conflict_progress()); |
192 status.mutable_conflict_progress()->AddConflictingItemById(f.NewLocalId()); | 211 status.mutable_conflict_progress()-> |
193 status.mutable_conflict_progress()->AddConflictingItemById(f.NewLocalId()); | 212 AddSimpleConflictingItemById(f.NewLocalId()); |
194 EXPECT_EQ(2, status.conflict_progress()->ConflictingItemsSize()); | 213 status.mutable_conflict_progress()-> |
214 AddSimpleConflictingItemById(f.NewLocalId()); | |
215 EXPECT_EQ(2, status.conflict_progress()->SimpleConflictingItemsSize()); | |
195 } | 216 } |
196 EXPECT_EQ(4, status.TotalNumConflictingItems()); | 217 EXPECT_EQ(4, status.TotalNumConflictingItems()); |
197 } | 218 } |
198 | 219 |
199 // Basic test that non group-restricted state accessors don't cause violations. | 220 // Basic test that non group-restricted state accessors don't cause violations. |
200 TEST_F(StatusControllerTest, Unrestricted) { | 221 TEST_F(StatusControllerTest, Unrestricted) { |
201 StatusController status(routes_); | 222 StatusController status(routes_); |
202 const UpdateProgress* progress = | 223 const UpdateProgress* progress = |
203 status.GetUnrestrictedUpdateProgress(GROUP_UI); | 224 status.GetUnrestrictedUpdateProgress(GROUP_UI); |
204 EXPECT_FALSE(progress); | 225 EXPECT_FALSE(progress); |
205 status.mutable_commit_message(); | 226 status.mutable_commit_message(); |
206 status.commit_response(); | 227 status.commit_response(); |
207 status.mutable_commit_response(); | 228 status.mutable_commit_response(); |
208 status.updates_response(); | 229 status.updates_response(); |
209 status.mutable_updates_response(); | 230 status.mutable_updates_response(); |
210 status.error(); | 231 status.error(); |
211 status.syncer_status(); | 232 status.syncer_status(); |
212 status.num_server_changes_remaining(); | 233 status.num_server_changes_remaining(); |
213 status.commit_ids(); | 234 status.commit_ids(); |
214 status.HasBookmarkCommitActivity(); | 235 status.HasBookmarkCommitActivity(); |
215 status.download_updates_succeeded(); | 236 status.download_updates_succeeded(); |
216 status.ServerSaysNothingMoreToDownload(); | 237 status.ServerSaysNothingMoreToDownload(); |
217 status.group_restriction(); | 238 status.group_restriction(); |
218 } | 239 } |
219 | 240 |
220 } // namespace sessions | 241 } // namespace sessions |
221 } // namespace browser_sync | 242 } // namespace browser_sync |
OLD | NEW |