Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(222)

Unified Diff: sync/test/engine/mock_non_blocking_type_processor.h

Issue 351523003: sync: Mass rename of non-blocking sync classes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: const ref some smart pointers Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: sync/test/engine/mock_non_blocking_type_processor.h
diff --git a/sync/test/engine/mock_non_blocking_type_processor.h b/sync/test/engine/mock_non_blocking_type_processor.h
deleted file mode 100644
index 30e7670507673268c838120566b0adbf26988db1..0000000000000000000000000000000000000000
--- a/sync/test/engine/mock_non_blocking_type_processor.h
+++ /dev/null
@@ -1,136 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef SYNC_TEST_ENGINE_MOCK_NON_BLOCKING_TYPE_PROCESSOR_H_
-#define SYNC_TEST_ENGINE_MOCK_NON_BLOCKING_TYPE_PROCESSOR_H_
-
-#include <vector>
-
-#include "base/callback.h"
-#include "base/macros.h"
-#include "sync/engine/non_blocking_sync_common.h"
-#include "sync/engine/non_blocking_type_processor_interface.h"
-
-namespace syncer {
-
-// Mocks the NonBlockingTypeProcessor.
-//
-// This mock is made simpler by not using any threads. It does still have the
-// ability to defer execution if we need to test race conditions, though.
-//
-// It maintains some state to try to make its behavior more realistic. It
-// updates this state as it creates commit requests or receives update and
-// commit responses.
-//
-// It keeps a log of all received messages so tests can make assertions based
-// on their value.
-class MockNonBlockingTypeProcessor : public NonBlockingTypeProcessorInterface {
- public:
- MockNonBlockingTypeProcessor();
- virtual ~MockNonBlockingTypeProcessor();
-
- // Implementation of NonBlockingTypeProcessorInterface.
- virtual void ReceiveCommitResponse(
- const DataTypeState& type_state,
- const CommitResponseDataList& response_list) OVERRIDE;
- virtual void ReceiveUpdateResponse(
- const DataTypeState& type_state,
- const UpdateResponseDataList& response_list) OVERRIDE;
-
- // By default, this object behaves as if all messages are processed
- // immediately. Sometimes it is useful to defer work until later, as might
- // happen in the real world if the model thread's task queue gets backed up.
- void SetSynchronousExecution(bool is_synchronous);
-
- // Runs any work that was deferred while this class was in asynchronous mode.
- //
- // This function is not useful unless this object is set to synchronous
- // execution mode, which is the default.
- void RunQueuedTasks();
-
- // Generate commit or deletion requests to be sent to the server.
- // These functions update local state to keep sequence numbers consistent.
- //
- // A real NonBlockingTypeProcessor would forward these kinds of messages
- // directly to its attached NonBlockingTypeProcessorCore. These methods
- // return the value to the caller so the test framework can handle them as it
- // sees fit.
- CommitRequestData CommitRequest(const std::string& tag_hash,
- const sync_pb::EntitySpecifics& specifics);
- CommitRequestData DeleteRequest(const std::string& tag_hash);
-
- // Getters to access the log of received update responses.
- //
- // Does not includes repsonses that are in pending tasks.
- size_t GetNumUpdateResponses() const;
- UpdateResponseDataList GetNthUpdateResponse(size_t n) const;
- DataTypeState GetNthTypeStateReceivedInUpdateResponse(size_t n) const;
-
- // Getters to access the log of received commit responses.
- //
- // Does not includes repsonses that are in pending tasks.
- size_t GetNumCommitResponses() const;
- CommitResponseDataList GetNthCommitResponse(size_t n) const;
- DataTypeState GetNthTypeStateReceivedInCommitResponse(size_t n) const;
-
- // Getters to access the lastest update response for a given tag_hash.
- bool HasUpdateResponse(const std::string& tag_hash) const;
- UpdateResponseData GetUpdateResponse(const std::string& tag_hash) const;
-
- // Getters to access the lastest commit response for a given tag_hash.
- bool HasCommitResponse(const std::string& tag_hash) const;
- CommitResponseData GetCommitResponse(const std::string& tag_hash) const;
-
- private:
- // Process a received commit response.
- //
- // Implemented as an Impl method so we can defer its execution in some cases.
- void ReceiveCommitResponseImpl(const DataTypeState& type_state,
- const CommitResponseDataList& response_list);
-
- // Process a received update response.
- //
- // Implemented as an Impl method so we can defer its execution in some cases.
- void ReceiveUpdateResponseImpl(const DataTypeState& type_state,
- const UpdateResponseDataList& response_list);
-
- // Getter and setter for per-item sequence number tracking.
- int64 GetCurrentSequenceNumber(const std::string& tag_hash) const;
- int64 GetNextSequenceNumber(const std::string& tag_hash);
-
- // Getter and setter for per-item base version tracking.
- int64 GetBaseVersion(const std::string& tag_hash) const;
- void SetBaseVersion(const std::string& tag_hash, int64 version);
-
- // Getters and setter for server-assigned ID values.
- bool HasServerAssignedId(const std::string& tag_hash) const;
- const std::string& GetServerAssignedId(const std::string& tag_hash) const;
- void SetServerAssignedId(const std::string& tag_hash, const std::string& id);
-
- // State related to the implementation of deferred work.
- // See SetSynchronousExecution() for details.
- bool is_synchronous_;
- std::vector<base::Closure> pending_tasks_;
-
- // A log of messages received by this object.
- std::vector<CommitResponseDataList> received_commit_responses_;
- std::vector<UpdateResponseDataList> received_update_responses_;
- std::vector<DataTypeState> type_states_received_on_update_;
- std::vector<DataTypeState> type_states_received_on_commit_;
-
- // Latest responses received, indexed by tag_hash.
- std::map<const std::string, CommitResponseData> commit_response_items_;
- std::map<const std::string, UpdateResponseData> update_response_items_;
-
- // The per-item state maps.
- std::map<const std::string, int64> sequence_numbers_;
- std::map<const std::string, int64> base_versions_;
- std::map<const std::string, std::string> assigned_ids_;
-
- DISALLOW_COPY_AND_ASSIGN(MockNonBlockingTypeProcessor);
-};
-
-} // namespace syncer
-
-#endif // SYNC_TEST_ENGINE_MOCK_NON_BLOCKING_TYPE_PROCESSOR_H_
« no previous file with comments | « sync/test/engine/mock_model_type_sync_worker.cc ('k') | sync/test/engine/mock_non_blocking_type_processor.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698