]>
Commit | Line | Data |
---|---|---|
f67539c2 TL |
1 | // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- |
2 | // vim: ts=8 sw=2 smarttab | |
3 | ||
4 | #ifndef CEPH_TEST_LIBRBD_MOCK_IO_IMAGE_DISPATCHER_H | |
5 | #define CEPH_TEST_LIBRBD_MOCK_IO_IMAGE_DISPATCHER_H | |
6 | ||
7 | #include "gmock/gmock.h" | |
8 | #include "include/Context.h" | |
9 | #include "librbd/io/ImageDispatcher.h" | |
10 | #include "librbd/io/ImageDispatchSpec.h" | |
11 | #include "librbd/io/Types.h" | |
12 | ||
13 | class Context; | |
14 | ||
15 | namespace librbd { | |
16 | namespace io { | |
17 | ||
18 | struct ImageDispatchInterface; | |
19 | ||
20 | struct MockImageDispatcher : public ImageDispatcherInterface { | |
21 | public: | |
22 | MOCK_METHOD1(shut_down, void(Context*)); | |
23 | ||
24 | MOCK_METHOD1(register_dispatch, void(ImageDispatchInterface*)); | |
25 | MOCK_METHOD1(exists, bool(ImageDispatchLayer)); | |
26 | MOCK_METHOD2(shut_down_dispatch, void(ImageDispatchLayer, Context*)); | |
27 | MOCK_METHOD1(invalidate_cache, void(Context *)); | |
28 | ||
29 | MOCK_METHOD1(send, void(ImageDispatchSpec*)); | |
30 | MOCK_METHOD3(finish, void(int r, ImageDispatchLayer, uint64_t)); | |
31 | ||
32 | MOCK_METHOD1(apply_qos_schedule_tick_min, void(uint64_t)); | |
33 | MOCK_METHOD4(apply_qos_limit, void(uint64_t, uint64_t, uint64_t, uint64_t)); | |
20effc67 | 34 | MOCK_METHOD1(apply_qos_exclude_ops, void(uint64_t)); |
f67539c2 TL |
35 | |
36 | MOCK_CONST_METHOD0(writes_blocked, bool()); | |
37 | MOCK_METHOD0(block_writes, int()); | |
38 | MOCK_METHOD1(block_writes, void(Context*)); | |
39 | ||
40 | MOCK_METHOD0(unblock_writes, void()); | |
41 | MOCK_METHOD1(wait_on_writes_unblocked, void(Context*)); | |
42 | ||
43 | MOCK_METHOD2(remap_extents, void(Extents&, ImageExtentsMapType)); | |
44 | }; | |
45 | ||
46 | } // namespace io | |
47 | } // namespace librbd | |
48 | ||
49 | #endif // CEPH_TEST_LIBRBD_MOCK_IO_IMAGE_DISPATCHER_H |