syncable_mock.h revision 201ade2fbba22bfb27ae029f4d23fca6ded109a0
1201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// Use of this source code is governed by a BSD-style license that can be
3201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch// found in the LICENSE file.
4201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
5201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#ifndef CHROME_BROWSER_SYNC_SYNCABLE_SYNCABLE_MOCK_H_
6201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#define CHROME_BROWSER_SYNC_SYNCABLE_SYNCABLE_MOCK_H_
7201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#pragma once
8201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
9201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#include <string>
10201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
11201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#include "chrome/browser/sync/syncable/syncable.h"
12201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#include "testing/gmock/include/gmock/gmock.h"
13201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#include "testing/gtest/include/gtest/gtest.h"
14201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
15201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdochusing syncable::Directory;
16201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdochusing syncable::EntryKernel;
17201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
18201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdochclass MockDirectory : public Directory {
19201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch public:
20201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  MockDirectory() {
21201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch    init_kernel("myk");
22201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
23201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  MOCK_METHOD1(GetEntryByHandle, syncable::EntryKernel*(int64));
24201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
25201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  MOCK_METHOD2(set_last_downloadstamp, void(syncable::ModelType, int64));
26201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
27201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  MOCK_METHOD1(GetEntryByClientTag,
28201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch               syncable::EntryKernel*(const std::string&));
29201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch};
30201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
31201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdochclass MockSyncableWriteTransaction : public syncable::WriteTransaction {
32201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch public:
33201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  explicit MockSyncableWriteTransaction(Directory *directory) :
34201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch       WriteTransaction(directory, syncable::UNITTEST, "dontcare.cpp", 25) {
35201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch  }
36201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch};
37201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
38201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
39201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch#endif  // CHROME_BROWSER_SYNC_SYNCABLE_SYNCABLE_MOCK_H_
40201ade2fbba22bfb27ae029f4d23fca6ded109a0Ben Murdoch
41