| Index: chrome/test/sync/engine/test_directory_setter_upper.h
|
| ===================================================================
|
| --- chrome/test/sync/engine/test_directory_setter_upper.h (revision 51231)
|
| +++ chrome/test/sync/engine/test_directory_setter_upper.h (working copy)
|
| @@ -34,8 +34,10 @@
|
|
|
| #include "base/scoped_ptr.h"
|
| #include "base/scoped_temp_dir.h"
|
| +#include "chrome/browser/sync/syncable/directory_manager.h"
|
| #include "chrome/browser/sync/syncable/syncable.h"
|
| #include "chrome/browser/sync/util/sync_types.h"
|
| +#include "testing/gmock/include/gmock/gmock.h"
|
|
|
| namespace syncable {
|
| class DirectoryManager;
|
| @@ -65,6 +67,7 @@
|
| // Subclasses may want to use a different directory name.
|
| explicit TestDirectorySetterUpper(const std::string& name);
|
| virtual void Init();
|
| + void reset_directory_manager(syncable::DirectoryManager* d);
|
|
|
| private:
|
| void RunInvariantCheck(const syncable::ScopedDirLookup& dir);
|
| @@ -100,6 +103,33 @@
|
| virtual void TearDown();
|
| };
|
|
|
| +// Use this when you don't want to test the whole stack down to the Directory
|
| +// level, as it installs a google mock Directory implementation.
|
| +class MockDirectorySetterUpper : public TestDirectorySetterUpper {
|
| + public:
|
| + class Manager : public syncable::DirectoryManager {
|
| + public:
|
| + Manager(const FilePath& root_path, syncable::Directory* dir);
|
| + virtual ~Manager() { managed_directory_ = NULL; }
|
| + };
|
| +
|
| + class MockDirectory : public syncable::Directory {
|
| + public:
|
| + explicit MockDirectory(const std::string& name);
|
| + virtual ~MockDirectory() {}
|
| + MOCK_METHOD1(PurgeEntriesWithTypeIn, void(const syncable::ModelTypeSet&));
|
| + };
|
| +
|
| + MockDirectorySetterUpper();
|
| +
|
| + virtual void SetUp();
|
| + virtual void TearDown();
|
| + MockDirectory* directory() { return directory_.get(); }
|
| +
|
| + private:
|
| + scoped_ptr<MockDirectory> directory_;
|
| +};
|
| +
|
| } // namespace browser_sync
|
|
|
| #endif // CHROME_TEST_SYNC_ENGINE_TEST_DIRECTORY_SETTER_UPPER_H_
|
|
|