Home | History | Annotate | Download | only in sessions
      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 
     32 ACTION_P(SimulateThrottled, throttle) {
     33   SimulateThrottledImpl(arg0, throttle);
     34 }
     35 
     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