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

Side by Side Diff: sync/engine/download_updates_command_unittest.cc

Issue 14963002: sync: Report GetUpdate triggers to the server (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix handling of NEW_CLIENT GU source Created 7 years, 7 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 unified diff | Download patch
« no previous file with comments | « sync/engine/download_updates_command.cc ('k') | sync/engine/sync_scheduler.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "sync/engine/download_updates_command.h" 5 #include "sync/engine/download_updates_command.h"
6 #include "sync/protocol/autofill_specifics.pb.h"
7 #include "sync/protocol/bookmark_specifics.pb.h"
8 #include "sync/protocol/preference_specifics.pb.h"
9 #include "sync/protocol/sync.pb.h" 6 #include "sync/protocol/sync.pb.h"
7 #include "sync/sessions/nudge_tracker.h"
10 #include "sync/test/engine/fake_model_worker.h" 8 #include "sync/test/engine/fake_model_worker.h"
11 #include "sync/test/engine/syncer_command_test.h" 9 #include "sync/test/engine/syncer_command_test.h"
12 10
13 using ::testing::_; 11 using ::testing::_;
14 12
15 namespace syncer { 13 namespace syncer {
16 14
17 // A test fixture for tests exercising DownloadUpdatesCommandTest. 15 // A test fixture for tests exercising DownloadUpdatesCommandTest.
18 class DownloadUpdatesCommandTest : public SyncerCommandTest { 16 class DownloadUpdatesCommandTest : public SyncerCommandTest {
19 protected: 17 protected:
(...skipping 14 matching lines...) Expand all
34 } 32 }
35 33
36 DownloadUpdatesCommand command_; 34 DownloadUpdatesCommand command_;
37 35
38 private: 36 private:
39 DISALLOW_COPY_AND_ASSIGN(DownloadUpdatesCommandTest); 37 DISALLOW_COPY_AND_ASSIGN(DownloadUpdatesCommandTest);
40 }; 38 };
41 39
42 TEST_F(DownloadUpdatesCommandTest, ExecuteNoStates) { 40 TEST_F(DownloadUpdatesCommandTest, ExecuteNoStates) {
43 ConfigureMockServerConnection(); 41 ConfigureMockServerConnection();
42
43 sessions::NudgeTracker nudge_tracker;
44 nudge_tracker.RecordLocalChange(ModelTypeSet(BOOKMARKS));
45
44 mock_server()->ExpectGetUpdatesRequestTypes( 46 mock_server()->ExpectGetUpdatesRequestTypes(
45 GetRoutingInfoTypes(routing_info())); 47 GetRoutingInfoTypes(routing_info()));
46 command_.ExecuteImpl(session()); 48 command_.ExecuteImpl(
49 sessions::SyncSession::BuildForNudge(context(),
50 delegate(),
51 nudge_tracker.GetSourceInfo(),
52 &nudge_tracker));
47 } 53 }
48 54
49 TEST_F(DownloadUpdatesCommandTest, ExecuteWithStates) { 55 TEST_F(DownloadUpdatesCommandTest, ExecuteWithStates) {
50 ConfigureMockServerConnection(); 56 ConfigureMockServerConnection();
51 sessions::SyncSourceInfo source; 57
52 source.types[AUTOFILL].payload = "autofill_payload"; 58 sessions::NudgeTracker nudge_tracker;
53 source.types[BOOKMARKS].payload = "bookmark_payload"; 59 nudge_tracker.RecordRemoteInvalidation(
54 source.types[PREFERENCES].payload = "preferences_payload"; 60 ModelTypeSetToInvalidationMap(ModelTypeSet(AUTOFILL),
61 "autofill_payload"));
62 nudge_tracker.RecordRemoteInvalidation(
63 ModelTypeSetToInvalidationMap(ModelTypeSet(BOOKMARKS),
64 "bookmark_payload"));
65 nudge_tracker.RecordRemoteInvalidation(
66 ModelTypeSetToInvalidationMap(ModelTypeSet(PREFERENCES),
67 "preferences_payload"));
68
55 mock_server()->ExpectGetUpdatesRequestTypes( 69 mock_server()->ExpectGetUpdatesRequestTypes(
56 GetRoutingInfoTypes(routing_info())); 70 GetRoutingInfoTypes(routing_info()));
57 mock_server()->ExpectGetUpdatesRequestStates(source.types); 71 mock_server()->ExpectGetUpdatesRequestStates(
58 command_.ExecuteImpl(session(source)); 72 nudge_tracker.GetSourceInfo().types);
73 command_.ExecuteImpl(
74 sessions::SyncSession::BuildForNudge(context(),
75 delegate(),
76 nudge_tracker.GetSourceInfo(),
77 &nudge_tracker));
59 } 78 }
60 79
61 TEST_F(DownloadUpdatesCommandTest, VerifyAppendDebugInfo) { 80 TEST_F(DownloadUpdatesCommandTest, VerifyAppendDebugInfo) {
62 sync_pb::DebugInfo debug_info; 81 sync_pb::DebugInfo debug_info;
63 EXPECT_CALL(*(mock_debug_info_getter()), GetAndClearDebugInfo(_)) 82 EXPECT_CALL(*(mock_debug_info_getter()), GetAndClearDebugInfo(_))
64 .Times(1); 83 .Times(1);
65 command_.AppendClientDebugInfoIfNeeded(session(), &debug_info); 84 command_.AppendClientDebugInfoIfNeeded(session(), &debug_info);
66 85
67 // Now try to add it once more and make sure |GetAndClearDebugInfo| is not 86 // Now try to add it once more and make sure |GetAndClearDebugInfo| is not
68 // called. 87 // called.
69 command_.AppendClientDebugInfoIfNeeded(session(), &debug_info); 88 command_.AppendClientDebugInfoIfNeeded(session(), &debug_info);
70 } 89 }
71 90
72 } // namespace syncer 91 } // namespace syncer
OLDNEW
« no previous file with comments | « sync/engine/download_updates_command.cc ('k') | sync/engine/sync_scheduler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698