1 // Copyright 2014 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 #ifndef SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_ 6 #define SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_ 7 8 #include "sync/api/sync_change_processor.h" 9 10 namespace syncer { 11 12 // A wrapper class for use in tests. 13 class SyncChangeProcessorWrapperForTest : public SyncChangeProcessor { 14 public: 15 // Create a SyncChangeProcessorWrapperForTest. 16 // 17 // All method calls are forwarded to |wrapped|. Caller maintains ownership 18 // of |wrapped| and is responsible for ensuring it outlives this object. 19 explicit SyncChangeProcessorWrapperForTest( 20 syncer::SyncChangeProcessor* wrapped); 21 virtual ~SyncChangeProcessorWrapperForTest(); 22 23 // SyncChangeProcessor implementation. 24 virtual syncer::SyncError ProcessSyncChanges( 25 const tracked_objects::Location& from_here, 26 const syncer::SyncChangeList& change_list) OVERRIDE; 27 virtual syncer::SyncDataList GetAllSyncData(syncer::ModelType type) 28 const OVERRIDE; 29 30 private: 31 syncer::SyncChangeProcessor* const wrapped_; 32 33 DISALLOW_COPY_AND_ASSIGN(SyncChangeProcessorWrapperForTest); 34 }; 35 36 } // namespace syncer 37 38 #endif // SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_ 39