• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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_TEST_ENGINE_MOCK_UPDATE_HANDLER_H_
6 #define SYNC_TEST_ENGINE_MOCK_UPDATE_HANDLER_H_
7 
8 #include "base/compiler_specific.h"
9 #include "sync/engine/update_handler.h"
10 #include "sync/internal_api/public/base/model_type.h"
11 #include "sync/protocol/sync.pb.h"
12 
13 namespace syncer {
14 
15 class MockUpdateHandler : public UpdateHandler {
16  public:
17   explicit MockUpdateHandler(ModelType type);
18   virtual ~MockUpdateHandler();
19 
20   // UpdateHandler implementation.
21   virtual void GetDownloadProgress(
22       sync_pb::DataTypeProgressMarker* progress_marker) const OVERRIDE;
23   virtual void GetDataTypeContext(sync_pb::DataTypeContext* context) const
24       OVERRIDE;
25   virtual SyncerError ProcessGetUpdatesResponse(
26       const sync_pb::DataTypeProgressMarker& progress_marker,
27       const sync_pb::DataTypeContext& mutated_context,
28       const SyncEntityList& applicable_updates,
29       sessions::StatusController* status) OVERRIDE;
30   virtual void ApplyUpdates(sessions::StatusController* status) OVERRIDE;
31   virtual void PassiveApplyUpdates(sessions::StatusController* status) OVERRIDE;
32 
33   // Returns the number of times ApplyUpdates() was invoked.
34   int GetApplyUpdatesCount();
35 
36   // Returns the number of times PassiveApplyUpdates() was invoked.
37   int GetPassiveApplyUpdatesCount();
38 
39  private:
40   sync_pb::DataTypeProgressMarker progress_marker_;
41 
42   int apply_updates_count_;
43   int passive_apply_updates_count_;
44 };
45 
46 }  // namespace syncer
47 
48 #endif  // SYNC_TEST_ENGINE_MOCK_UPDATE_HANDLER_H_
49