• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #include "sync/sessions/test_util.h"
6 
7 namespace syncer {
8 namespace sessions {
9 namespace test_util {
10 
SimulateGetEncryptionKeyFailed(ModelTypeSet requsted_types,sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,sessions::SyncSession * session)11 void SimulateGetEncryptionKeyFailed(
12     ModelTypeSet requsted_types,
13     sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,
14     sessions::SyncSession* session) {
15   session->mutable_status_controller()->set_last_get_key_result(
16       SERVER_RESPONSE_VALIDATION_FAILED);
17   session->mutable_status_controller()->set_last_download_updates_result(
18       SYNCER_OK);
19 }
20 
SimulateConfigureSuccess(ModelTypeSet requsted_types,sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,sessions::SyncSession * session)21 void SimulateConfigureSuccess(
22     ModelTypeSet requsted_types,
23     sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,
24     sessions::SyncSession* session) {
25   ASSERT_EQ(0U, session->status_controller().num_server_changes_remaining());
26   session->mutable_status_controller()->set_last_get_key_result(SYNCER_OK);
27   session->mutable_status_controller()->set_last_download_updates_result(
28       SYNCER_OK);
29 }
30 
SimulateConfigureFailed(ModelTypeSet requsted_types,sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,sessions::SyncSession * session)31 void SimulateConfigureFailed(
32     ModelTypeSet requsted_types,
33     sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,
34     sessions::SyncSession* session) {
35   session->mutable_status_controller()->set_last_get_key_result(SYNCER_OK);
36   session->mutable_status_controller()->set_last_download_updates_result(
37       SERVER_RETURN_TRANSIENT_ERROR);
38 }
39 
SimulateConfigureConnectionFailure(ModelTypeSet requsted_types,sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,sessions::SyncSession * session)40 void SimulateConfigureConnectionFailure(
41     ModelTypeSet requsted_types,
42     sync_pb::GetUpdatesCallerInfo::GetUpdatesSource source,
43     sessions::SyncSession* session) {
44   session->mutable_status_controller()->set_last_get_key_result(SYNCER_OK);
45   session->mutable_status_controller()->set_last_download_updates_result(
46       NETWORK_CONNECTION_UNAVAILABLE);
47 }
48 
SimulateNormalSuccess(ModelTypeSet requested_types,const sessions::NudgeTracker & nudge_tracker,sessions::SyncSession * session)49 void SimulateNormalSuccess(ModelTypeSet requested_types,
50                            const sessions::NudgeTracker& nudge_tracker,
51                            sessions::SyncSession* session) {
52   ASSERT_EQ(0U, session->status_controller().num_server_changes_remaining());
53   session->mutable_status_controller()->set_commit_result(SYNCER_OK);
54   session->mutable_status_controller()->set_last_download_updates_result(
55       SYNCER_OK);
56 }
57 
SimulateDownloadUpdatesFailed(ModelTypeSet requested_types,const sessions::NudgeTracker & nudge_tracker,sessions::SyncSession * session)58 void SimulateDownloadUpdatesFailed(
59     ModelTypeSet requested_types,
60     const sessions::NudgeTracker& nudge_tracker,
61     sessions::SyncSession* session) {
62   session->mutable_status_controller()->set_last_download_updates_result(
63       SERVER_RETURN_TRANSIENT_ERROR);
64 }
65 
SimulateCommitFailed(ModelTypeSet requested_types,const sessions::NudgeTracker & nudge_tracker,sessions::SyncSession * session)66 void SimulateCommitFailed(ModelTypeSet requested_types,
67                           const sessions::NudgeTracker& nudge_tracker,
68                           sessions::SyncSession* session) {
69   session->mutable_status_controller()->set_last_get_key_result(SYNCER_OK);
70   session->mutable_status_controller()->set_last_download_updates_result(
71       SYNCER_OK);
72   session->mutable_status_controller()->set_commit_result(
73       SERVER_RETURN_TRANSIENT_ERROR);
74 }
75 
SimulateConnectionFailure(ModelTypeSet requested_types,const sessions::NudgeTracker & nudge_tracker,sessions::SyncSession * session)76 void SimulateConnectionFailure(
77                            ModelTypeSet requested_types,
78                            const sessions::NudgeTracker& nudge_tracker,
79                            sessions::SyncSession* session) {
80   session->mutable_status_controller()->set_last_download_updates_result(
81       NETWORK_CONNECTION_UNAVAILABLE);
82 }
83 
SimulatePollSuccess(ModelTypeSet requested_types,sessions::SyncSession * session)84 void SimulatePollSuccess(ModelTypeSet requested_types,
85                          sessions::SyncSession* session) {
86   ASSERT_EQ(0U, session->status_controller().num_server_changes_remaining());
87   session->mutable_status_controller()->set_last_download_updates_result(
88       SYNCER_OK);
89 }
90 
SimulatePollFailed(ModelTypeSet requested_types,sessions::SyncSession * session)91 void SimulatePollFailed(ModelTypeSet requested_types,
92                         sessions::SyncSession* session) {
93   ASSERT_EQ(0U, session->status_controller().num_server_changes_remaining());
94   session->mutable_status_controller()->set_last_download_updates_result(
95       SERVER_RETURN_TRANSIENT_ERROR);
96 }
97 
SimulateThrottledImpl(sessions::SyncSession * session,const base::TimeDelta & delta)98 void SimulateThrottledImpl(
99     sessions::SyncSession* session,
100     const base::TimeDelta& delta) {
101   session->mutable_status_controller()->set_last_download_updates_result(
102       SERVER_RETURN_THROTTLED);
103   session->delegate()->OnThrottled(delta);
104 }
105 
SimulateTypesThrottledImpl(sessions::SyncSession * session,ModelTypeSet types,const base::TimeDelta & delta)106 void SimulateTypesThrottledImpl(
107     sessions::SyncSession* session,
108     ModelTypeSet types,
109     const base::TimeDelta& delta) {
110   session->mutable_status_controller()->set_last_download_updates_result(
111       SERVER_RETURN_THROTTLED);
112   session->delegate()->OnTypesThrottled(types, delta);
113 }
114 
SimulatePollIntervalUpdateImpl(ModelTypeSet requested_types,sessions::SyncSession * session,const base::TimeDelta & new_poll)115 void SimulatePollIntervalUpdateImpl(
116     ModelTypeSet requested_types,
117     sessions::SyncSession* session,
118     const base::TimeDelta& new_poll) {
119   SimulatePollSuccess(requested_types, session);
120   session->delegate()->OnReceivedLongPollIntervalUpdate(new_poll);
121 }
122 
SimulateSessionsCommitDelayUpdateImpl(ModelTypeSet requested_types,const sessions::NudgeTracker & nudge_tracker,sessions::SyncSession * session,const base::TimeDelta & new_delay)123 void SimulateSessionsCommitDelayUpdateImpl(
124     ModelTypeSet requested_types,
125     const sessions::NudgeTracker& nudge_tracker,
126     sessions::SyncSession* session,
127     const base::TimeDelta& new_delay) {
128   SimulateNormalSuccess(requested_types, nudge_tracker, session);
129   session->delegate()->OnReceivedSessionsCommitDelay(new_delay);
130 }
131 
132 }  // namespace test_util
133 }  // namespace sessions
134 }  // namespace syncer
135