Index: chrome/browser/sync/test/engine/syncer_command_test.h |
diff --git a/chrome/browser/sync/test/engine/syncer_command_test.h b/chrome/browser/sync/test/engine/syncer_command_test.h |
deleted file mode 100644 |
index 55913335756fb3b4ef73939fe145d7a93b45b5de..0000000000000000000000000000000000000000 |
--- a/chrome/browser/sync/test/engine/syncer_command_test.h |
+++ /dev/null |
@@ -1,233 +0,0 @@ |
-// 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 CHROME_BROWSER_SYNC_TEST_ENGINE_SYNCER_COMMAND_TEST_H_ |
-#define CHROME_BROWSER_SYNC_TEST_ENGINE_SYNCER_COMMAND_TEST_H_ |
-#pragma once |
- |
-#include <algorithm> |
-#include <string> |
-#include <vector> |
- |
-#include "base/compiler_specific.h" |
-#include "base/memory/ref_counted.h" |
-#include "base/message_loop.h" |
-#include "chrome/browser/sync/engine/model_changing_syncer_command.h" |
-#include "chrome/browser/sync/engine/model_safe_worker.h" |
-#include "chrome/browser/sync/sessions/debug_info_getter.h" |
-#include "chrome/browser/sync/sessions/sync_session.h" |
-#include "chrome/browser/sync/sessions/sync_session_context.h" |
-#include "chrome/browser/sync/syncable/syncable_mock.h" |
-#include "chrome/browser/sync/test/engine/mock_connection_manager.h" |
-#include "chrome/browser/sync/test/engine/fake_model_worker.h" |
-#include "chrome/browser/sync/test/engine/test_directory_setter_upper.h" |
-#include "chrome/browser/sync/test/fake_extensions_activity_monitor.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
-#include "testing/gmock/include/gmock/gmock.h" |
- |
-using ::testing::NiceMock; |
- |
-namespace browser_sync { |
- |
-class MockDebugInfoGetter : public browser_sync::sessions::DebugInfoGetter { |
- public: |
- MockDebugInfoGetter(); |
- virtual ~MockDebugInfoGetter(); |
- MOCK_METHOD1(GetAndClearDebugInfo, void(sync_pb::DebugInfo* debug_info)); |
-}; |
- |
-// A test fixture that simplifies writing unit tests for individual |
-// SyncerCommands, providing convenient access to a test directory |
-// and a syncer session. |
-class SyncerCommandTestBase : public testing::Test, |
- public sessions::SyncSession::Delegate, |
- public ModelSafeWorkerRegistrar { |
- public: |
- enum UseMockDirectory { |
- USE_MOCK_DIRECTORY |
- }; |
- |
- // SyncSession::Delegate implementation. |
- virtual void OnSilencedUntil( |
- const base::TimeTicks& silenced_until) OVERRIDE { |
- FAIL() << "Should not get silenced."; |
- } |
- virtual bool IsSyncingCurrentlySilenced() OVERRIDE { |
- return false; |
- } |
- virtual void OnReceivedLongPollIntervalUpdate( |
- const base::TimeDelta& new_interval) OVERRIDE { |
- FAIL() << "Should not get poll interval update."; |
- } |
- virtual void OnReceivedShortPollIntervalUpdate( |
- const base::TimeDelta& new_interval) OVERRIDE { |
- FAIL() << "Should not get poll interval update."; |
- } |
- virtual void OnReceivedSessionsCommitDelay( |
- const base::TimeDelta& new_delay) OVERRIDE { |
- FAIL() << "Should not get sessions commit delay."; |
- } |
- virtual void OnShouldStopSyncingPermanently() OVERRIDE { |
- FAIL() << "Shouldn't be called."; |
- } |
- virtual void OnSyncProtocolError( |
- const sessions::SyncSessionSnapshot& session) OVERRIDE { |
- return; |
- } |
- |
- // ModelSafeWorkerRegistrar implementation. |
- virtual void GetWorkers(std::vector<ModelSafeWorker*>* out) OVERRIDE { |
- std::vector<scoped_refptr<ModelSafeWorker> >::iterator it; |
- for (it = workers_.begin(); it != workers_.end(); ++it) |
- out->push_back(*it); |
- } |
- virtual void GetModelSafeRoutingInfo(ModelSafeRoutingInfo* out) OVERRIDE { |
- ModelSafeRoutingInfo copy(routing_info_); |
- out->swap(copy); |
- } |
- |
- protected: |
- SyncerCommandTestBase(); |
- |
- virtual ~SyncerCommandTestBase(); |
- virtual void SetUp(); |
- virtual void TearDown(); |
- |
- sessions::SyncSessionContext* context() const { return context_.get(); } |
- sessions::SyncSession::Delegate* delegate() { return this; } |
- ModelSafeWorkerRegistrar* registrar() { return this; } |
- |
- // Lazily create a session requesting all datatypes with no payload. |
- sessions::SyncSession* session() { |
- syncable::ModelTypePayloadMap types = |
- syncable::ModelTypePayloadMapFromRoutingInfo(routing_info_, |
- std::string()); |
- return session(sessions::SyncSourceInfo(types)); |
- } |
- |
- // Create a session with the provided source. |
- sessions::SyncSession* session(const sessions::SyncSourceInfo& source) { |
- if (!session_.get()) { |
- std::vector<ModelSafeWorker*> workers; |
- GetWorkers(&workers); |
- session_.reset(new sessions::SyncSession(context(), delegate(), source, |
- routing_info_, workers)); |
- } |
- return session_.get(); |
- } |
- |
- void ClearSession() { |
- session_.reset(); |
- } |
- |
- void ResetContext() { |
- context_.reset(new sessions::SyncSessionContext( |
- mock_server_.get(), directory(), |
- registrar(), &extensions_activity_monitor_, |
- std::vector<SyncEngineEventListener*>(), |
- &mock_debug_info_getter_)); |
- context_->set_account_name(directory()->name()); |
- ClearSession(); |
- } |
- |
- // Install a MockServerConnection. Resets the context. By default, |
- // the context does not have a MockServerConnection attached. |
- void ConfigureMockServerConnection() { |
- mock_server_.reset(new MockConnectionManager(directory())); |
- ResetContext(); |
- } |
- |
- virtual syncable::Directory* directory() = 0; |
- |
- std::vector<scoped_refptr<ModelSafeWorker> >* workers() { |
- return &workers_; |
- } |
- |
- const ModelSafeRoutingInfo& routing_info() { return routing_info_; } |
- ModelSafeRoutingInfo* mutable_routing_info() { return &routing_info_; } |
- |
- MockConnectionManager* mock_server() { |
- return mock_server_.get(); |
- } |
- |
- MockDebugInfoGetter* mock_debug_info_getter() { |
- return &mock_debug_info_getter_; |
- } |
- |
- // Helper functions to check command.GetGroupsToChange(). |
- |
- void ExpectNoGroupsToChange(const ModelChangingSyncerCommand& command) { |
- EXPECT_TRUE(command.GetGroupsToChangeForTest(*session()).empty()); |
- } |
- |
- void ExpectGroupToChange( |
- const ModelChangingSyncerCommand& command, ModelSafeGroup group) { |
- std::set<ModelSafeGroup> expected_groups_to_change; |
- expected_groups_to_change.insert(group); |
- EXPECT_EQ(expected_groups_to_change, |
- command.GetGroupsToChangeForTest(*session())); |
- } |
- |
- void ExpectGroupsToChange( |
- const ModelChangingSyncerCommand& command, |
- ModelSafeGroup group1, ModelSafeGroup group2) { |
- std::set<ModelSafeGroup> expected_groups_to_change; |
- expected_groups_to_change.insert(group1); |
- expected_groups_to_change.insert(group2); |
- EXPECT_EQ(expected_groups_to_change, |
- command.GetGroupsToChangeForTest(*session())); |
- } |
- |
- void ExpectGroupsToChange( |
- const ModelChangingSyncerCommand& command, |
- ModelSafeGroup group1, ModelSafeGroup group2, ModelSafeGroup group3) { |
- std::set<ModelSafeGroup> expected_groups_to_change; |
- expected_groups_to_change.insert(group1); |
- expected_groups_to_change.insert(group2); |
- expected_groups_to_change.insert(group3); |
- EXPECT_EQ(expected_groups_to_change, |
- command.GetGroupsToChangeForTest(*session())); |
- } |
- |
- private: |
- MessageLoop message_loop_; |
- scoped_ptr<sessions::SyncSessionContext> context_; |
- scoped_ptr<MockConnectionManager> mock_server_; |
- scoped_ptr<sessions::SyncSession> session_; |
- std::vector<scoped_refptr<ModelSafeWorker> > workers_; |
- ModelSafeRoutingInfo routing_info_; |
- NiceMock<MockDebugInfoGetter> mock_debug_info_getter_; |
- FakeExtensionsActivityMonitor extensions_activity_monitor_; |
- DISALLOW_COPY_AND_ASSIGN(SyncerCommandTestBase); |
-}; |
- |
-class SyncerCommandTest : public SyncerCommandTestBase { |
- public: |
- virtual void SetUp() OVERRIDE; |
- virtual void TearDown() OVERRIDE; |
- virtual Directory* directory() OVERRIDE; |
- |
- private: |
- TestDirectorySetterUpper dir_maker_; |
-}; |
- |
-class MockDirectorySyncerCommandTest : public SyncerCommandTestBase { |
- public: |
- MockDirectorySyncerCommandTest(); |
- virtual ~MockDirectorySyncerCommandTest(); |
- virtual Directory* directory() OVERRIDE; |
- |
- MockDirectory* mock_directory() { |
- return static_cast<MockDirectory*>(directory()); |
- } |
- |
- virtual void SetUp() OVERRIDE; |
- |
- TestUnrecoverableErrorHandler handler_; |
- MockDirectory mock_directory_; |
-}; |
- |
-} // namespace browser_sync |
- |
-#endif // CHROME_BROWSER_SYNC_TEST_ENGINE_SYNCER_COMMAND_TEST_H_ |