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