Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / test / librbd / mock / MockOperations.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 CEPH_TEST_LIBRBD_MOCK_OPERATIONS_H
5 #define CEPH_TEST_LIBRBD_MOCK_OPERATIONS_H
6
7 #include "cls/rbd/cls_rbd_types.h"
8 #include "include/int_types.h"
9 #include "include/rbd/librbd.hpp"
10 #include "gmock/gmock.h"
11 #include <string>
12
13 class Context;
14
15 namespace librbd {
16
17 struct MockOperations {
18   MOCK_METHOD2(execute_flatten, void(ProgressContext &prog_ctx,
19                                      Context *on_finish));
20   MOCK_METHOD2(execute_rebuild_object_map, void(ProgressContext &prog_ctx,
21                                                 Context *on_finish));
22   MOCK_METHOD2(execute_rename, void(const std::string &dstname,
23                                     Context *on_finish));
24   MOCK_METHOD5(execute_resize, void(uint64_t size, bool allow_shrink,
25                                     ProgressContext &prog_ctx,
26                                     Context *on_finish,
27                                     uint64_t journal_op_tid));
28   MOCK_METHOD3(snap_create, void(const cls::rbd::SnapshotNamespace &snapshot_namespace,
29                                  const std::string &snap_name,
30                                  Context *on_finish));
31   MOCK_METHOD5(execute_snap_create, void(const cls::rbd::SnapshotNamespace &snapshot_namespace,
32                                          const std::string &snap_name,
33                                          Context *on_finish,
34                                          uint64_t journal_op_tid,
35                                          bool skip_object_map));
36   MOCK_METHOD3(snap_remove, void(const cls::rbd::SnapshotNamespace &snap_namespace,
37                                  const std::string &snap_name,
38                                  Context *on_finish));
39   MOCK_METHOD3(execute_snap_remove, void(const cls::rbd::SnapshotNamespace &snap_namespace,
40                                          const std::string &snap_name,
41                                          Context *on_finish));
42   MOCK_METHOD3(execute_snap_rename, void(uint64_t src_snap_id,
43                                          const std::string &snap_name,
44                                          Context *on_finish));
45   MOCK_METHOD4(execute_snap_rollback, void(const cls::rbd::SnapshotNamespace &snap_namespace,
46                                            const std::string &snap_name,
47                                            ProgressContext &prog_ctx,
48                                            Context *on_finish));
49   MOCK_METHOD3(execute_snap_protect, void(const cls::rbd::SnapshotNamespace &snap_namespace,
50                                           const std::string &snap_name,
51                                           Context *on_finish));
52   MOCK_METHOD3(execute_snap_unprotect, void(const cls::rbd::SnapshotNamespace &snap_namespace,
53                                             const std::string &snap_name,
54                                             Context *on_finish));
55   MOCK_METHOD2(execute_snap_set_limit, void(uint64_t limit,
56                                             Context *on_finish));
57   MOCK_METHOD4(execute_update_features, void(uint64_t features, bool enabled,
58                                              Context *on_finish,
59                                              uint64_t journal_op_tid));
60   MOCK_METHOD3(execute_metadata_set, void(const std::string &key,
61                                           const std::string &value,
62                                           Context *on_finish));
63   MOCK_METHOD2(execute_metadata_remove, void(const std::string &key,
64                                              Context *on_finish));
65 };
66
67 } // namespace librbd
68
69 #endif // CEPH_TEST_LIBRBD_MOCK_OPERATIONS_H