• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 // Utils to simulate various outcomes of a sync session.
6 #ifndef CHROME_BROWSER_SYNC_SESSIONS_TEST_UTIL_H_
7 #define CHROME_BROWSER_SYNC_SESSIONS_TEST_UTIL_H_
8 #pragma once
9 
10 #include "chrome/browser/sync/engine/syncer.h"
11 #include "chrome/browser/sync/sessions/sync_session.h"
12 #include "testing/gtest/include/gtest/gtest.h"
13 #include "testing/gmock/include/gmock/gmock.h"
14 
15 namespace browser_sync {
16 namespace sessions {
17 namespace test_util {
18 
19 void SimulateHasMoreToSync(sessions::SyncSession* session,
20                            SyncerStep begin, SyncerStep end);
21 void SimulateDownloadUpdatesFailed(sessions::SyncSession* session,
22                                    SyncerStep begin, SyncerStep end);
23 void SimulateCommitFailed(sessions::SyncSession* session,
24                           SyncerStep begin, SyncerStep end);
25 void SimulateSuccess(sessions::SyncSession* session,
26                      SyncerStep begin, SyncerStep end);
27 void SimulateThrottledImpl(sessions::SyncSession* session,
28     const base::TimeDelta& delta);
29 void SimulatePollIntervalUpdateImpl(sessions::SyncSession* session,
30     const base::TimeDelta& new_poll);
31 
ACTION_P(SimulateThrottled,throttle)32 ACTION_P(SimulateThrottled, throttle) {
33   SimulateThrottledImpl(arg0, throttle);
34 }
35 
ACTION_P(SimulatePollIntervalUpdate,poll)36 ACTION_P(SimulatePollIntervalUpdate, poll) {
37   SimulatePollIntervalUpdateImpl(arg0, poll);
38 }
39 
40 }  // namespace test_util
41 }  // namespace sessions
42 }  // namespace browser_sync
43 
44 #endif  // CHROME_BROWSER_SYNC_SESSIONS_TEST_UTIL_H_
45