Roll WebRTC 9846:9854, Libjingle 9845:9853
[chromium-blink-merge.git] / sync / api / sync_change_processor_wrapper_for_test.h
blobd7ca77a7874d6ed3b732735629d8555c682b9008
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.
5 #ifndef SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_
6 #define SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_
8 #include "sync/api/sync_change_processor.h"
10 namespace syncer {
12 // A wrapper class for use in tests.
13 class SyncChangeProcessorWrapperForTest : public SyncChangeProcessor {
14 public:
15 // Create a SyncChangeProcessorWrapperForTest.
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 ~SyncChangeProcessorWrapperForTest() override;
23 // SyncChangeProcessor implementation.
24 syncer::SyncError ProcessSyncChanges(
25 const tracked_objects::Location& from_here,
26 const syncer::SyncChangeList& change_list) override;
27 syncer::SyncDataList GetAllSyncData(syncer::ModelType type) const override;
29 private:
30 syncer::SyncChangeProcessor* const wrapped_;
32 DISALLOW_COPY_AND_ASSIGN(SyncChangeProcessorWrapperForTest);
35 } // namespace syncer
37 #endif // SYNC_API_SYNC_CHANGE_PROCESSOR_WRAPPER_FOR_TEST_H_