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