]> git.proxmox.com Git - ceph.git/blob - ceph/src/test/immutable_object_cache/MockCacheDaemon.h
import 15.2.0 Octopus source
[ceph.git] / ceph / src / test / immutable_object_cache / MockCacheDaemon.h
1 // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*-
2 // vim: ts=8 sw=2 smarttab
3
4 #ifndef IMMUTABLE_OBJECT_CACHE_MOCK_DAEMON
5 #define IMMUTABLE_OBJECT_CACHE_MOCK_DAEMON
6
7 #include <iostream>
8 #include <unistd.h>
9
10 #include "gmock/gmock.h"
11
12 #include "include/Context.h"
13 #include "tools/immutable_object_cache/CacheClient.h"
14
15 namespace ceph {
16 namespace immutable_obj_cache {
17
18 class MockCacheClient {
19 public:
20 MockCacheClient(const std::string& file, CephContext* ceph_ctx) {}
21 MOCK_METHOD0(run, void());
22 MOCK_METHOD0(is_session_work, bool());
23 MOCK_METHOD0(close, void());
24 MOCK_METHOD0(stop, void());
25 MOCK_METHOD0(connect, int());
26 MOCK_METHOD1(connect, void(Context*));
27 void lookup_object(std::string pool_nspace, uint64_t pool_id, uint64_t snap_id,
28 std::string oid, CacheGenContextURef&& on_finish) {
29 // gmock don't support move
30 internal_lookup(pool_nspace, pool_id, snap_id, oid);
31 };
32 MOCK_METHOD4(internal_lookup, void(std::string pool_nspace,
33 uint64_t pool_id, uint64_t snap_id,
34 std::string oid));
35 MOCK_METHOD1(register_client, int(Context*));
36 };
37
38 class MockCacheServer {
39 public:
40 MockCacheServer(CephContext* cct, const std::string& file,
41 ProcessMsg processmsg) {
42 }
43 MOCK_METHOD0(run, int());
44 MOCK_METHOD0(start_accept, int());
45 MOCK_METHOD0(stop, int());
46 };
47
48 } // namespace immutable_obj_cach3
49 } // namespace ceph
50
51 #endif // IMMUTABLE_OBJECT_CACHE_MOCK_DAEMON