Index: chrome/browser/invalidation/fake_invalidation_service.h |
diff --git a/chrome/browser/invalidation/fake_invalidation_service.h b/chrome/browser/invalidation/fake_invalidation_service.h |
index 4b296ae3face0f8c52a963be9a79392a4472e534..b52b33bbf9151a2515b5133a0b06d71082f33db7 100644 |
--- a/chrome/browser/invalidation/fake_invalidation_service.h |
+++ b/chrome/browser/invalidation/fake_invalidation_service.h |
@@ -5,6 +5,9 @@ |
#ifndef CHROME_BROWSER_INVALIDATION_FAKE_INVALIDATION_SERVICE_H_ |
#define CHROME_BROWSER_INVALIDATION_FAKE_INVALIDATION_SERVICE_H_ |
+#include <list> |
+#include <utility> |
+ |
#include "base/basictypes.h" |
#include "chrome/browser/invalidation/invalidation_service.h" |
#include "sync/notifier/invalidator_registrar.h" |
@@ -33,14 +36,33 @@ class FakeInvalidationService : public InvalidationService { |
virtual syncer::InvalidatorState GetInvalidatorState() const OVERRIDE; |
virtual std::string GetInvalidatorClientId() const OVERRIDE; |
- void EmitInvalidationForTest( |
+ void SetInvalidatorState(syncer::InvalidatorState state); |
+ |
+ const syncer::InvalidatorRegistrar& invalidator_registrar() const { |
+ return invalidator_registrar_; |
+ } |
+ syncer::AckHandle EmitInvalidationForTest( |
const invalidation::ObjectId& object_id, |
int64 version, |
const std::string& payload); |
+ // Determines if the given AckHandle has been acknowledged. |
+ bool IsInvalidationAcknowledged(const syncer::AckHandle& ack_handle) const; |
+ |
+ // Determines if AcknowledgeInvalidation was ever called with an invalid |
+ // ObjectId/AckHandle pair. |
+ bool ReceivedInvalidAcknowledgement() { |
+ return received_invalid_acknowledgement_; |
+ } |
+ |
private: |
std::string client_id_; |
syncer::InvalidatorRegistrar invalidator_registrar_; |
+ typedef std::list<std::pair<syncer::AckHandle, invalidation::ObjectId> > |
+ AckHandleList; |
+ AckHandleList unacknowledged_handles_; |
+ AckHandleList acknowledged_handles_; |
+ bool received_invalid_acknowledgement_; |
DISALLOW_COPY_AND_ASSIGN(FakeInvalidationService); |
}; |