| Index: sync/test/mock_transaction_observer.h
|
| diff --git a/sync/test/mock_transaction_observer.h b/sync/test/mock_transaction_observer.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3e943d806eed65cd36a6c6b27df42d3614f2c87d
|
| --- /dev/null
|
| +++ b/sync/test/mock_transaction_observer.h
|
| @@ -0,0 +1,45 @@
|
| +// Copyright (c) 2012 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_MOCK_TRANSACTION_OBSERVER_H_
|
| +#define SYNC_TEST_MOCK_TRANSACTION_OBSERVER_H_
|
| +
|
| +#include "base/memory/weak_ptr.h"
|
| +#include "sync/internal_api/public/base/model_type.h"
|
| +#include "sync/syncable/transaction_observer.h"
|
| +#include "sync/syncable/write_transaction_info.h"
|
| +
|
| +namespace syncer {
|
| +namespace syncable {
|
| +
|
| +// This class acts as a TransactionObserver for the syncable::Directory.
|
| +// It gathers information that is useful for writing test assertions.
|
| +class MockTransactionObserver :
|
| + public base::SupportsWeakPtr<MockTransactionObserver>,
|
| + public TransactionObserver {
|
| + public:
|
| + MockTransactionObserver();
|
| + virtual ~MockTransactionObserver();
|
| + virtual void OnTransactionWrite(
|
| + const ImmutableWriteTransactionInfo& write_transaction_info,
|
| + ModelTypeSet models_with_changes) OVERRIDE;
|
| +
|
| + // Returns the number of transactions observed.
|
| + //
|
| + // Transactions are generated only when meaningful changes are made. For most
|
| + // testing purposes, you may assume that this counts the number of syncer
|
| + // nudges generated.
|
| + int transactions_observed();
|
| +
|
| + private:
|
| + DISALLOW_COPY_AND_ASSIGN(MockTransactionObserver);
|
| +
|
| + int transactions_observed_;
|
| +};
|
| +
|
| +} // namespace syncable
|
| +} // namespace syncer
|
| +
|
| +
|
| +#endif // SYNC_TEST_MOCK_TRANSACTION_OBSERVER_H_
|
|
|