From: Alex Ainscow Date: Mon, 24 Nov 2025 16:49:36 +0000 (+0000) Subject: test: Fix up librados/neorados tests X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=0b447f77082715a04fcd3b2cd3ac83d626325d6d;p=ceph-ci.git test: Fix up librados/neorados tests There much mocking of exec going on in these tests. An extensive search and replace was required to find them all. Note that the failure looks like memory corruption when manipulating the ops array - but the actually issue is the mocking not intercepting the exec_impl call (and similar) correctly. Signed-off-by: Alex Ainscow --- diff --git a/src/test/cls_hello/test_cls_hello.cc b/src/test/cls_hello/test_cls_hello.cc index 667b67ee8f9..7e94ead180f 100644 --- a/src/test/cls_hello/test_cls_hello.cc +++ b/src/test/cls_hello/test_cls_hello.cc @@ -63,13 +63,38 @@ TEST(ClsHello, RecordHello) { cluster.ioctx_create(pool_name.c_str(), ioctx); bufferlist in, out; - ASSERT_EQ(0, ioctx.exec("myobject", method::record_hello, in, out)); - ASSERT_EQ(-EEXIST, ioctx.exec("myobject", method::record_hello, in, out)); + { + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::record_hello, in, &out, &rval); + ASSERT_EQ(0, ioctx.operate("myobject", &write_operation)); + ASSERT_EQ(0, rval); + } + { + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::record_hello, in, &out, &rval); + ASSERT_EQ(-EEXIST, ioctx.operate("myobject", &write_operation)); + ASSERT_EQ(-EEXIST, rval); + } in.append("Tester"); - ASSERT_EQ(0, ioctx.exec("myobject2", method::record_hello, in, out)); - ASSERT_EQ(-EEXIST, ioctx.exec("myobject2", method::record_hello, in, out)); - ASSERT_EQ(0u, out.length()); + { + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::record_hello, in, &out, &rval); + ASSERT_EQ(0, ioctx.operate("myobject2", &write_operation)); + ASSERT_EQ(0, rval); + } + + { + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::record_hello, in, &out, &rval); + ASSERT_EQ(-EEXIST, ioctx.operate("myobject2", &write_operation)); + ASSERT_EQ(-EEXIST, rval); + ASSERT_EQ(0u, out.length()); + } in.clear(); out.clear(); @@ -122,7 +147,11 @@ TEST(ClsHello, WriteReturnData) { // this will return nothing -- no flag is set bufferlist in, out; - ASSERT_EQ(0, ioctx.exec("myobject", method::write_return_data, in, out)); + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::write_return_data, in, &out, &rval); + ASSERT_EQ(0, ioctx.operate("myobject", &write_operation)); + ASSERT_EQ(42, rval); // Returned by method. ASSERT_EQ(std::string(), std::string(out.c_str(), out.length())); // this will return an error due to unexpected input. @@ -206,11 +235,20 @@ TEST(ClsHello, Loud) { cluster.ioctx_create(pool_name.c_str(), ioctx); bufferlist in, out; - ASSERT_EQ(0, ioctx.exec("myobject", method::record_hello, in, out)); + int rval; + { + ObjectWriteOperation write_operation; + write_operation.exec(method::record_hello, in, &out, &rval); + ASSERT_EQ(0, ioctx.operate("myobject", &write_operation)); + } ASSERT_EQ(0, ioctx.exec("myobject", method::replay, in, out)); ASSERT_EQ(std::string("Hello, world!"), std::string(out.c_str(), out.length())); - ASSERT_EQ(0, ioctx.exec("myobject", method::turn_it_to_11, in, out)); + { + ObjectWriteOperation write_operation; + write_operation.exec(method::turn_it_to_11, in, &out, &rval); + ASSERT_EQ(0, ioctx.operate("myobject", &write_operation)); + } ASSERT_EQ(0, ioctx.exec("myobject", method::replay, in, out)); ASSERT_EQ(std::string("HELLO, WORLD!"), std::string(out.c_str(), out.length())); @@ -227,7 +265,10 @@ TEST(ClsHello, BadMethods) { bufferlist in, out; ASSERT_EQ(0, ioctx.write_full("myobject", in)); - ASSERT_EQ(-EIO, ioctx.exec("myobject", method::bad_reader, in, out)); + ObjectWriteOperation write_operation; + int rval; + write_operation.exec(method::bad_reader, in, &out, &rval); + ASSERT_EQ(-EIO, ioctx.operate("myobject", &write_operation)); ASSERT_EQ(-EIO, ioctx.exec("myobject", method::bad_writer, in, out)); ASSERT_EQ(0, destroy_one_pool_pp(pool_name, cluster)); diff --git a/src/test/cls_numops/test_cls_numops.cc b/src/test/cls_numops/test_cls_numops.cc index 09848ecd40a..241d4cd1e50 100644 --- a/src/test/cls_numops/test_cls_numops.cc +++ b/src/test/cls_numops/test_cls_numops.cc @@ -37,7 +37,10 @@ TEST(ClsNumOps, Add) { bufferlist in, out; - ASSERT_EQ(-EINVAL, ioctx.exec("myobject", method::add, in, out)); + int rval; + ObjectWriteOperation write_operation; + write_operation.exec(method::add, in, &out, &rval); + ASSERT_EQ(-EINVAL, ioctx.operate("myobject", &write_operation)); // add a number to a non-existing key @@ -221,7 +224,10 @@ TEST(ClsNumOps, Mul) { bufferlist in, out; - ASSERT_EQ(-EINVAL, ioctx.exec("myobject", method::mul, in, out)); + int rval; + ObjectWriteOperation write_operation; + write_operation.exec(method::mul, in, &out, &rval); + ASSERT_EQ(-EINVAL, ioctx.operate("myobject", &write_operation)); // multiply a number to a non-existing key diff --git a/src/test/cls_rbd/test_cls_rbd.cc b/src/test/cls_rbd/test_cls_rbd.cc index b77c5dde3ea..c478b2d3674 100644 --- a/src/test/cls_rbd/test_cls_rbd.cc +++ b/src/test/cls_rbd/test_cls_rbd.cc @@ -478,7 +478,10 @@ TEST_F(TestClsRbd, create) 123)); bufferlist inbl, outbl; - ASSERT_EQ(-EINVAL, ioctx.exec(oid, cls::rbd::method::create, inbl, outbl)); + int rval; + librados::ObjectWriteOperation write_operation; + write_operation.exec(cls::rbd::method::create, inbl, &outbl, &rval); + ASSERT_EQ(-EINVAL, ioctx.operate("myobject", &write_operation)); ioctx.close(); } diff --git a/src/test/librados/aio_cxx.cc b/src/test/librados/aio_cxx.cc index 79b01e7d54b..179098c509e 100644 --- a/src/test/librados/aio_cxx.cc +++ b/src/test/librados/aio_cxx.cc @@ -25,6 +25,8 @@ #include "test_cxx.h" #include "crimson_utils.h" +#include "cls/hello/cls_hello_ops.h" + using namespace std; using namespace librados; @@ -1061,7 +1063,7 @@ TEST(LibRadosAio, ExecuteClassPP) { ASSERT_TRUE(my_completion2); bufferlist in, out; ASSERT_EQ(0, test_data.m_ioctx.aio_exec(test_data.m_oid, my_completion2.get(), - "hello", "say_hello", in, &out)); + cls::hello::method::say_hello, in, &out)); { TestAlarm alarm; ASSERT_EQ(0, my_completion2->wait_for_complete()); @@ -2080,7 +2082,7 @@ TEST(LibRadosAioEC, ExecuteClassPP) { ASSERT_TRUE(my_completion2); bufferlist in, out; ASSERT_EQ(0, test_data.m_ioctx.aio_exec(test_data.m_oid, my_completion2.get(), - "hello", "say_hello", in, &out)); + cls::hello::method::say_hello, in, &out)); { TestAlarm alarm; ASSERT_EQ(0, my_completion2->wait_for_complete()); diff --git a/src/test/librados/cls.cc b/src/test/librados/cls.cc index c4f24954dbe..e24ff46f314 100644 --- a/src/test/librados/cls.cc +++ b/src/test/librados/cls.cc @@ -13,6 +13,23 @@ using std::map; using std::ostringstream; using std::string; +namespace cls::bogus_classes { +struct ClassId { + static constexpr auto name = "doesnotexistasdfasdf"; +}; +struct ClassIdLock { // This is a real class. We are adding a bogus method. + static constexpr auto name = "doesnotexistasdfasdf"; +}; +namespace method { +constexpr auto bogus_class = ClsMethod("method"); +constexpr auto bogus_method = ClsMethod("doesnotexistasdfasdfasdf"); +} +} + +using namespace cls::bogus_classes; + +// Ignore use of legacy interface, which allows specifying cls methods which do +// not exist. TEST(LibRadosCls, DNE) { Rados cluster; std::string pool_name = get_temp_pool_name(); @@ -26,11 +43,11 @@ TEST(LibRadosCls, DNE) { ASSERT_EQ(0, ioctx.write(oid, bl, bl.length(), 0)); // call a bogus class - ASSERT_EQ(-EOPNOTSUPP, ioctx.exec(oid, "doesnotexistasdfasdf", "method", bl, bl)); + ASSERT_EQ(-EOPNOTSUPP, ioctx.exec(oid, method::bogus_class, bl, bl)); // call a bogus method on existent class - ASSERT_EQ(-EOPNOTSUPP, ioctx.exec(oid, "lock", "doesnotexistasdfasdfasdf", bl, bl)); + ASSERT_EQ(-EOPNOTSUPP, ioctx.exec(oid, method::bogus_method, bl, bl)); ioctx.close(); ASSERT_EQ(0, destroy_one_pool_pp(pool_name, cluster)); -} +} \ No newline at end of file diff --git a/src/test/librados/misc_cxx.cc b/src/test/librados/misc_cxx.cc index aa0db24a5dc..753e6762f6d 100644 --- a/src/test/librados/misc_cxx.cc +++ b/src/test/librados/misc_cxx.cc @@ -22,6 +22,8 @@ #include "global/global_context.h" #include "test/librados/testcase_cxx.h" #include "test/librados/test_cxx.h" +#include "cls/version/cls_version_ops.h" +#include "cls/rbd/cls_rbd_types.h" #include "crimson_utils.h" @@ -149,7 +151,7 @@ TEST_F(LibRadosMiscPP, ExecPP) { bufferlist bl; ASSERT_EQ(0, ioctx.write("foo", bl, 0, 0)); bufferlist bl2, out; - int r = ioctx.exec("foo", "rbd", "get_all_features", bl2, out); + int r = ioctx.exec("foo", cls::rbd::method::get_all_features, bl2, out); ASSERT_EQ(0, r); auto iter = out.cbegin(); uint64_t all_features; diff --git a/src/test/librados_test_stub/LibradosTestStub.cc b/src/test/librados_test_stub/LibradosTestStub.cc index 18c2a619896..af0c407cce9 100644 --- a/src/test/librados_test_stub/LibradosTestStub.cc +++ b/src/test/librados_test_stub/LibradosTestStub.cc @@ -525,11 +525,11 @@ void IoCtx::dup(const IoCtx& rhs) { io_ctx_impl = reinterpret_cast(ctx->clone()); } -int IoCtx::exec(const std::string& oid, const char *cls, const char *method, +int IoCtx::exec_impl(const std::string& oid, const char *cls, const char *method, bufferlist& inbl, bufferlist& outbl) { TestIoCtxImpl *ctx = reinterpret_cast(io_ctx_impl); return ctx->execute_operation( - oid, std::bind(&TestIoCtxImpl::exec, _1, _2, + oid, std::bind(&TestIoCtxImpl::exec_internal, _1, _2, librados_test_stub::get_class_handler(), cls, method, inbl, &outbl, ctx->get_snap_read(), ctx->get_snap_context())); @@ -836,10 +836,10 @@ void ObjectOperation::assert_version(uint64_t ver) { o->ops.push_back(std::bind(&TestIoCtxImpl::assert_version, _1, _2, ver)); } -void ObjectOperation::exec(const char *cls, const char *method, +void ObjectOperation::exec_impl(const char *cls, const char *method, bufferlist& inbl) { TestObjectOperationImpl *o = reinterpret_cast(impl); - o->ops.push_back(std::bind(&TestIoCtxImpl::exec, _1, _2, + o->ops.push_back(std::bind(&TestIoCtxImpl::exec_internal, _1, _2, librados_test_stub::get_class_handler(), cls, method, inbl, _3, _4, _5)); } @@ -1521,7 +1521,7 @@ int cls_register(const char *name, cls_handle_t *handle) { return cls->create(name, handle); } -int cls_register_cxx_method(cls_handle_t hclass, const char *method, +int detail::cls_register_cxx_method_impl(cls_handle_t hclass, const char *method, int flags, cls_method_cxx_call_t class_call, cls_method_handle_t *handle) { diff --git a/src/test/librados_test_stub/MockTestMemIoCtxImpl.h b/src/test/librados_test_stub/MockTestMemIoCtxImpl.h index 2f90297e40a..20fcfe8e8ab 100644 --- a/src/test/librados_test_stub/MockTestMemIoCtxImpl.h +++ b/src/test/librados_test_stub/MockTestMemIoCtxImpl.h @@ -88,7 +88,7 @@ public: return TestMemIoCtxImpl::cmpext(oid, off, cmp_bl, snap_id); } - MOCK_METHOD8(exec, int(const std::string& oid, + MOCK_METHOD8(exec_internal, int(const std::string& oid, TestClassHandler *handler, const char *cls, const char *method, @@ -99,7 +99,7 @@ public: int do_exec(const std::string& oid, TestClassHandler *handler, const char *cls, const char *method, bufferlist& inbl, bufferlist* outbl, uint64_t snap_id, const SnapContext &snapc) { - return TestMemIoCtxImpl::exec(oid, handler, cls, method, inbl, outbl, + return TestMemIoCtxImpl::exec_internal(oid, handler, cls, method, inbl, outbl, snap_id, snapc); } @@ -223,7 +223,7 @@ public: ON_CALL(*this, assert_version(_, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_assert_version)); ON_CALL(*this, create(_, _, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_create)); ON_CALL(*this, cmpext(_, _, _, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_cmpext)); - ON_CALL(*this, exec(_, _, _, _, _, _, _, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_exec)); + ON_CALL(*this, exec_internal(_, _, _, _, _, _, _, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_exec)); ON_CALL(*this, get_instance_id()).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_get_instance_id)); ON_CALL(*this, list_snaps(_, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_list_snaps)); ON_CALL(*this, list_watchers(_, _)).WillByDefault(Invoke(this, &MockTestMemIoCtxImpl::do_list_watchers)); diff --git a/src/test/librados_test_stub/NeoradosTestStub.cc b/src/test/librados_test_stub/NeoradosTestStub.cc index 3b7f65b25ed..bc8e711a278 100644 --- a/src/test/librados_test_stub/NeoradosTestStub.cc +++ b/src/test/librados_test_stub/NeoradosTestStub.cc @@ -375,7 +375,7 @@ void Op::localize_reads() { // no-op } -void Op::exec(std::string_view cls, std::string_view method, +void Op::exec_impl(std::string_view cls, std::string_view method, const ceph::buffer::list& inbl, ceph::buffer::list* out, boost::system::error_code* ec) { @@ -386,7 +386,7 @@ void Op::exec(std::string_view cls, std::string_view method, [cls_handler, cls, method, inbl = const_cast(inbl), out] (librados::TestIoCtxImpl* io_ctx, const std::string& oid, bufferlist* outbl, uint64_t snap_id, const SnapContext& snapc, uint64_t*) mutable -> int { - return io_ctx->exec( + return io_ctx->exec_internal( oid, cls_handler, std::string(cls).c_str(), std::string(method).c_str(), inbl, (out != nullptr ? out : outbl), snap_id, snapc); @@ -398,7 +398,7 @@ void Op::exec(std::string_view cls, std::string_view method, o->ops.push_back(op); } -void Op::exec(std::string_view cls, std::string_view method, +void Op::exec_impl(std::string_view cls, std::string_view method, const ceph::buffer::list& inbl, boost::system::error_code* ec) { auto o = *reinterpret_cast(&impl); @@ -408,7 +408,7 @@ void Op::exec(std::string_view cls, std::string_view method, [cls_handler, cls, method, inbl = const_cast(inbl)] (librados::TestIoCtxImpl* io_ctx, const std::string& oid, bufferlist* outbl, uint64_t snap_id, const SnapContext& snapc, uint64_t*) mutable -> int { - return io_ctx->exec( + return io_ctx->exec_internal( oid, cls_handler, std::string(cls).c_str(), std::string(method).c_str(), inbl, outbl, snap_id, snapc); }; diff --git a/src/test/librados_test_stub/TestIoCtxImpl.cc b/src/test/librados_test_stub/TestIoCtxImpl.cc index 55694ec9462..94a3db8b326 100644 --- a/src/test/librados_test_stub/TestIoCtxImpl.cc +++ b/src/test/librados_test_stub/TestIoCtxImpl.cc @@ -160,7 +160,7 @@ int TestIoCtxImpl::aio_unwatch(uint64_t handle, AioCompletionImpl *c) { return 0; } -int TestIoCtxImpl::exec(const std::string& oid, TestClassHandler *handler, +int TestIoCtxImpl::exec_internal(const std::string& oid, TestClassHandler *handler, const char *cls, const char *method, bufferlist& inbl, bufferlist* outbl, uint64_t snap_id, const SnapContext &snapc) { diff --git a/src/test/librados_test_stub/TestIoCtxImpl.h b/src/test/librados_test_stub/TestIoCtxImpl.h index d15289b8185..70d60e21847 100644 --- a/src/test/librados_test_stub/TestIoCtxImpl.h +++ b/src/test/librados_test_stub/TestIoCtxImpl.h @@ -105,7 +105,7 @@ public: virtual int create(const std::string& oid, bool exclusive, const SnapContext &snapc) = 0; - virtual int exec(const std::string& oid, TestClassHandler *handler, + virtual int exec_internal(const std::string& oid, TestClassHandler *handler, const char *cls, const char *method, bufferlist& inbl, bufferlist* outbl, uint64_t snap_id, const SnapContext &snapc); diff --git a/src/test/librbd/deep_copy/test_mock_MetadataCopyRequest.cc b/src/test/librbd/deep_copy/test_mock_MetadataCopyRequest.cc index 6e475f07f19..991c41f8c99 100644 --- a/src/test/librbd/deep_copy/test_mock_MetadataCopyRequest.cc +++ b/src/test/librbd/deep_copy/test_mock_MetadataCopyRequest.cc @@ -114,7 +114,7 @@ public: encode(metadata, in_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("metadata_set"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/deep_copy/test_mock_SetHeadRequest.cc b/src/test/librbd/deep_copy/test_mock_SetHeadRequest.cc index 6852cbb2e5e..2afce43e82b 100644 --- a/src/test/librbd/deep_copy/test_mock_SetHeadRequest.cc +++ b/src/test/librbd/deep_copy/test_mock_SetHeadRequest.cc @@ -124,7 +124,7 @@ public: void expect_set_size(librbd::MockTestImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("set_size"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/deep_copy/test_mock_SnapshotCreateRequest.cc b/src/test/librbd/deep_copy/test_mock_SnapshotCreateRequest.cc index 08ef52b905a..dc51c5d7385 100644 --- a/src/test/librbd/deep_copy/test_mock_SnapshotCreateRequest.cc +++ b/src/test/librbd/deep_copy/test_mock_SnapshotCreateRequest.cc @@ -127,7 +127,7 @@ public: std::string oid(librbd::ObjectMap<>::object_map_name(mock_image_ctx.id, snap_id)); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, _, + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/image/test_mock_AttachChildRequest.cc b/src/test/librbd/image/test_mock_AttachChildRequest.cc index fc80a02755c..91a727d255b 100644 --- a/src/test/librbd/image/test_mock_AttachChildRequest.cc +++ b/src/test/librbd/image/test_mock_AttachChildRequest.cc @@ -92,7 +92,7 @@ public: void expect_add_child(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_CHILDREN, _, StrEq("rbd"), StrEq("add_child"), _, _, _, + exec_internal(RBD_CHILDREN, _, StrEq("rbd"), StrEq("add_child"), _, _, _, _)) .WillOnce(Return(r)); } @@ -119,7 +119,7 @@ public: encode(static_cast(RBD_OPERATION_FEATURE_CLONE_CHILD), bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(util::header_name(mock_image_ctx.id), _, StrEq("rbd"), + exec_internal(util::header_name(mock_image_ctx.id), _, StrEq("rbd"), StrEq("op_features_set"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } @@ -131,7 +131,7 @@ public: bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("child_attach"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/image/test_mock_AttachParentRequest.cc b/src/test/librbd/image/test_mock_AttachParentRequest.cc index b6dc7d35826..9633bae9704 100644 --- a/src/test/librbd/image/test_mock_AttachParentRequest.cc +++ b/src/test/librbd/image/test_mock_AttachParentRequest.cc @@ -44,14 +44,14 @@ public: void expect_parent_attach(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("parent_attach"), _, _, _, _)) .WillOnce(Return(r)); } void expect_set_parent(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("set_parent"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/image/test_mock_CloneRequest.cc b/src/test/librbd/image/test_mock_CloneRequest.cc index 968b9f7e143..44446f6f83f 100644 --- a/src/test/librbd/image/test_mock_CloneRequest.cc +++ b/src/test/librbd/image/test_mock_CloneRequest.cc @@ -328,7 +328,7 @@ public: encode(static_cast(mirror_mode), out_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_mode_get"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_mode_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([out_bl, r](bufferlist* out) { *out = out_bl; diff --git a/src/test/librbd/image/test_mock_DetachChildRequest.cc b/src/test/librbd/image/test_mock_DetachChildRequest.cc index 70448176b54..790f3016c5e 100644 --- a/src/test/librbd/image/test_mock_DetachChildRequest.cc +++ b/src/test/librbd/image/test_mock_DetachChildRequest.cc @@ -128,7 +128,7 @@ public: mock_image_ctx.id}, bl); EXPECT_CALL(mock_io_ctx_impl, - exec(util::header_name(parent_spec.image_id), + exec_internal(util::header_name(parent_spec.image_id), _, StrEq("rbd"), StrEq("child_detach"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); @@ -136,7 +136,7 @@ public: void expect_remove_child(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_CHILDREN, _, StrEq("rbd"), StrEq("remove_child"), _, + exec_internal(RBD_CHILDREN, _, StrEq("rbd"), StrEq("remove_child"), _, _, _, _)) .WillOnce(Return(r)); } @@ -148,7 +148,7 @@ public: using ceph::encode; EXPECT_CALL(mock_io_ctx_impl, - exec(parent_header_name, _, StrEq("rbd"), + exec_internal(parent_header_name, _, StrEq("rbd"), StrEq("snapshot_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([snap_info, r](bufferlist* bl) { encode(snap_info, *bl); @@ -192,7 +192,7 @@ public: int r) { using ceph::encode; EXPECT_CALL(mock_io_ctx_impl, - exec(RBD_TRASH, _, StrEq("rbd"), + exec_internal(RBD_TRASH, _, StrEq("rbd"), StrEq("trash_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([trash_spec, r](bufferlist* bl) { encode(trash_spec, *bl); diff --git a/src/test/librbd/image/test_mock_DetachParentRequest.cc b/src/test/librbd/image/test_mock_DetachParentRequest.cc index 792327f11f9..cd35fd943c6 100644 --- a/src/test/librbd/image/test_mock_DetachParentRequest.cc +++ b/src/test/librbd/image/test_mock_DetachParentRequest.cc @@ -44,14 +44,14 @@ public: void expect_parent_detach(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("parent_detach"), _, _, _, _)) .WillOnce(Return(r)); } void expect_remove_parent(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("remove_parent"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/image/test_mock_PreRemoveRequest.cc b/src/test/librbd/image/test_mock_PreRemoveRequest.cc index b297ed1d932..626799c4520 100644 --- a/src/test/librbd/image/test_mock_PreRemoveRequest.cc +++ b/src/test/librbd/image/test_mock_PreRemoveRequest.cc @@ -193,7 +193,7 @@ public: } auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("image_group_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); diff --git a/src/test/librbd/image/test_mock_RefreshRequest.cc b/src/test/librbd/image/test_mock_RefreshRequest.cc index 01d21edc083..1c187ca8b65 100644 --- a/src/test/librbd/image/test_mock_RefreshRequest.cc +++ b/src/test/librbd/image/test_mock_RefreshRequest.cc @@ -184,7 +184,7 @@ public: void expect_v1_get_snapshots(MockRefreshImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("snap_list"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -195,7 +195,7 @@ public: void expect_v1_get_locks(MockRefreshImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("get_info"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -207,7 +207,7 @@ public: void expect_get_mutable_metadata(MockRefreshImageCtx &mock_image_ctx, uint64_t features, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_size"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -218,7 +218,7 @@ public: expect.WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_features"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([features, incompatible](bufferlist* out_bl) { encode(features, *out_bl); @@ -227,11 +227,11 @@ public: }))); expect_get_flags(mock_image_ctx, 0); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_snapcontext"), _, _, _, _)) .WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("get_info"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -239,7 +239,7 @@ public: void expect_parent_overlap_get(MockRefreshImageCtx &mock_image_ctx, int r) { auto& expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("parent_overlap_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -250,7 +250,7 @@ public: void expect_get_parent(MockRefreshImageCtx &mock_image_ctx, int r) { auto& expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("parent_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -262,7 +262,7 @@ public: void expect_get_parent_legacy(MockRefreshImageCtx &mock_image_ctx, int r) { auto& expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_parent"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -273,7 +273,7 @@ public: void expect_get_migration_header(MockRefreshImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("migration_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -297,7 +297,7 @@ public: void expect_get_flags(MockRefreshImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_flags"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -309,7 +309,7 @@ public: void expect_get_op_features(MockRefreshImageCtx &mock_image_ctx, uint64_t op_features, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("op_features_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([op_features, r](bufferlist* out_bl) { encode(op_features, *out_bl); @@ -319,7 +319,7 @@ public: void expect_get_group(MockRefreshImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("image_group_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -331,7 +331,7 @@ public: void expect_get_snapshots(MockRefreshImageCtx &mock_image_ctx, bool legacy_parent, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("snapshot_get"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -339,7 +339,7 @@ public: expect.WillOnce(DoDefault()); if (legacy_parent) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_parent"), _, _, _, _)) .WillOnce(DoDefault()); } else { @@ -347,7 +347,7 @@ public: } expect_get_flags(mock_image_ctx, 0); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_protection_status"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -356,29 +356,29 @@ public: void expect_get_snapshots_legacy(MockRefreshImageCtx &mock_image_ctx, bool include_timestamp, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_snapshot_name"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); } else { expect.WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_size"), _, _, _, _)) .WillOnce(DoDefault()); if (include_timestamp) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_snapshot_timestamp"), _, _, _, _)) .WillOnce(DoDefault()); } EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_parent"), _, _, _, _)) .WillOnce(DoDefault()); expect_get_flags(mock_image_ctx, 0); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("get_protection_status"), _, _, _, _)) .WillOnce(DoDefault()); } diff --git a/src/test/librbd/image/test_mock_RemoveRequest.cc b/src/test/librbd/image/test_mock_RemoveRequest.cc index d006a029a34..3fa65bacab8 100644 --- a/src/test/librbd/image/test_mock_RemoveRequest.cc +++ b/src/test/librbd/image/test_mock_RemoveRequest.cc @@ -287,14 +287,14 @@ public: void expect_remove_mirror_image(librados::IoCtx &ioctx, int r) { EXPECT_CALL(get_mock_io_ctx(ioctx), - exec(StrEq("rbd_mirroring"), _, StrEq("rbd"), + exec_internal(StrEq("rbd_mirroring"), _, StrEq("rbd"), StrEq("mirror_image_remove"), _, _, _, _)) .WillOnce(Return(r)); } void expect_dir_remove_image(librados::IoCtx &ioctx, int r) { EXPECT_CALL(get_mock_io_ctx(ioctx), - exec(RBD_DIRECTORY, _, StrEq("rbd"), StrEq("dir_remove_image"), + exec_internal(RBD_DIRECTORY, _, StrEq("rbd"), StrEq("dir_remove_image"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/io/test_mock_CopyupRequest.cc b/src/test/librbd/io/test_mock_CopyupRequest.cc index 96f3c3e72a3..e312d1a6b7e 100644 --- a/src/test/librbd/io/test_mock_CopyupRequest.cc +++ b/src/test/librbd/io/test_mock_CopyupRequest.cc @@ -245,7 +245,7 @@ struct TestMockIoCopyupRequest : public TestMockFixture { auto& mock_io_ctx = librados::get_mock_io_ctx( mock_image_ctx.rados_api, *mock_image_ctx.get_data_io_context()); EXPECT_CALL(mock_io_ctx, - exec(oid, _, StrEq("rbd"), StrEq("copyup"), + exec_internal(oid, _, StrEq("rbd"), StrEq("copyup"), ContentsEqual(in_bl), _, _, snapc)) .WillOnce(Return(r)); } @@ -269,7 +269,7 @@ struct TestMockIoCopyupRequest : public TestMockFixture { auto& mock_io_ctx = librados::get_mock_io_ctx( mock_image_ctx.rados_api, *mock_image_ctx.get_data_io_context()); EXPECT_CALL(mock_io_ctx, - exec(oid, _, StrEq("rbd"), StrEq("sparse_copyup"), + exec_internal(oid, _, StrEq("rbd"), StrEq("sparse_copyup"), ContentsEqual(in_bl), _, _, snapc)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/managed_lock/test_mock_AcquireRequest.cc b/src/test/librbd/managed_lock/test_mock_AcquireRequest.cc index 4f7bb560203..80433cec077 100644 --- a/src/test/librbd/managed_lock/test_mock_AcquireRequest.cc +++ b/src/test/librbd/managed_lock/test_mock_AcquireRequest.cc @@ -119,7 +119,7 @@ public: void expect_lock(MockImageCtx &mock_image_ctx, int r, bool exclusive = true) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("lock"), IsLockType(exclusive), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/managed_lock/test_mock_BreakRequest.cc b/src/test/librbd/managed_lock/test_mock_BreakRequest.cc index 0a95fa030c1..2b727f0d90f 100644 --- a/src/test/librbd/managed_lock/test_mock_BreakRequest.cc +++ b/src/test/librbd/managed_lock/test_mock_BreakRequest.cc @@ -120,7 +120,7 @@ public: void expect_break_lock(MockTestImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("break_lock"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/managed_lock/test_mock_GetLockerRequest.cc b/src/test/librbd/managed_lock/test_mock_GetLockerRequest.cc index ad2c576319c..cb22f55f236 100644 --- a/src/test/librbd/managed_lock/test_mock_GetLockerRequest.cc +++ b/src/test/librbd/managed_lock/test_mock_GetLockerRequest.cc @@ -51,7 +51,7 @@ public: const std::string &lock_tag, ClsLockType lock_type) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("get_info"), _, _, _, _)); if (r < 0 && r != -ENOENT) { expect.WillOnce(Return(r)); diff --git a/src/test/librbd/managed_lock/test_mock_ReacquireRequest.cc b/src/test/librbd/managed_lock/test_mock_ReacquireRequest.cc index 9202bdcdf7c..138ffe0ed27 100644 --- a/src/test/librbd/managed_lock/test_mock_ReacquireRequest.cc +++ b/src/test/librbd/managed_lock/test_mock_ReacquireRequest.cc @@ -45,7 +45,7 @@ public: void expect_set_cookie(MockImageCtx &mock_image_ctx, int r, bool exclusive = true) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("set_cookie"), IsLockType(exclusive), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/managed_lock/test_mock_ReleaseRequest.cc b/src/test/librbd/managed_lock/test_mock_ReleaseRequest.cc index 73eeea06c42..e8511ab7b80 100644 --- a/src/test/librbd/managed_lock/test_mock_ReleaseRequest.cc +++ b/src/test/librbd/managed_lock/test_mock_ReleaseRequest.cc @@ -40,7 +40,7 @@ public: void expect_unlock(MockImageCtx &mock_image_ctx, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("lock"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("lock"), StrEq("unlock"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/mirror/snapshot/test_mock_CreateNonPrimaryRequest.cc b/src/test/librbd/mirror/snapshot/test_mock_CreateNonPrimaryRequest.cc index 59b1e9e6fd3..66fcce6824f 100644 --- a/src/test/librbd/mirror/snapshot/test_mock_CreateNonPrimaryRequest.cc +++ b/src/test/librbd/mirror/snapshot/test_mock_CreateNonPrimaryRequest.cc @@ -128,7 +128,7 @@ public: encode(mirror_image, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(CopyInBufferlist(bl)), Return(r))); @@ -148,7 +148,7 @@ public: encode(peers, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_peer_list"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_peer_list"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(CopyInBufferlist(bl)), Return(r))); diff --git a/src/test/librbd/mirror/snapshot/test_mock_CreatePrimaryRequest.cc b/src/test/librbd/mirror/snapshot/test_mock_CreatePrimaryRequest.cc index 20a6679276d..41f034dbfd0 100644 --- a/src/test/librbd/mirror/snapshot/test_mock_CreatePrimaryRequest.cc +++ b/src/test/librbd/mirror/snapshot/test_mock_CreatePrimaryRequest.cc @@ -142,7 +142,7 @@ public: encode(peers, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_peer_list"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_peer_list"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(CopyInBufferlist(bl)), Return(r))); diff --git a/src/test/librbd/mirror/snapshot/test_mock_ImageMeta.cc b/src/test/librbd/mirror/snapshot/test_mock_ImageMeta.cc index 71288106d2e..b125065d09a 100644 --- a/src/test/librbd/mirror/snapshot/test_mock_ImageMeta.cc +++ b/src/test/librbd/mirror/snapshot/test_mock_ImageMeta.cc @@ -48,7 +48,7 @@ public: ceph::encode(value, out_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("metadata_get"), ContentsEqual(in_bl), _, _, _)) .WillOnce(DoAll(WithArg<5>(CopyInBufferlist(out_bl)), Return(r))); @@ -67,7 +67,7 @@ public: in_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("metadata_set"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/mirror/snapshot/test_mock_UnlinkPeerRequest.cc b/src/test/librbd/mirror/snapshot/test_mock_UnlinkPeerRequest.cc index 4626580c463..9402400c5b3 100644 --- a/src/test/librbd/mirror/snapshot/test_mock_UnlinkPeerRequest.cc +++ b/src/test/librbd/mirror/snapshot/test_mock_UnlinkPeerRequest.cc @@ -83,7 +83,7 @@ public: encode(peer_uuid, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("mirror_image_snapshot_unlink_peer"), ContentsEqual(bl), _, _, _)) .WillOnce(Invoke([&mock_image_ctx, snap_id, peer_uuid, r](auto&&... args) -> int { diff --git a/src/test/librbd/mirror/test_mock_DisableRequest.cc b/src/test/librbd/mirror/test_mock_DisableRequest.cc index a3f2cf45336..d0891e29526 100644 --- a/src/test/librbd/mirror/test_mock_DisableRequest.cc +++ b/src/test/librbd/mirror/test_mock_DisableRequest.cc @@ -227,7 +227,7 @@ public: encode(clients, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(::journal::Journaler::header_oid(mock_image_ctx.id), + exec_internal(::journal::Journaler::header_oid(mock_image_ctx.id), _, StrEq("journal"), StrEq("client_list"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(CopyInBufferlist(bl)), Return(r))); @@ -241,7 +241,7 @@ public: encode(client_id, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(::journal::Journaler::header_oid(mock_image_ctx.id), + exec_internal(::journal::Journaler::header_oid(mock_image_ctx.id), _, StrEq("journal"), StrEq("client_unregister"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); diff --git a/src/test/librbd/object_map/test_mock_DiffRequest.cc b/src/test/librbd/object_map/test_mock_DiffRequest.cc index d73eff19a36..0f478ffbc8a 100644 --- a/src/test/librbd/object_map/test_mock_DiffRequest.cc +++ b/src/test/librbd/object_map/test_mock_DiffRequest.cc @@ -190,7 +190,7 @@ public: std::string snap_oid(ObjectMap<>::object_map_name(mock_image_ctx.id, snap_id)); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, + exec_internal(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([object_map, r, lambda=std::move(lambda)] (bufferlist* out_bl) { diff --git a/src/test/librbd/object_map/test_mock_InvalidateRequest.cc b/src/test/librbd/object_map/test_mock_InvalidateRequest.cc index f973604a62d..98961cd319f 100644 --- a/src/test/librbd/object_map/test_mock_InvalidateRequest.cc +++ b/src/test/librbd/object_map/test_mock_InvalidateRequest.cc @@ -38,7 +38,7 @@ TEST_F(TestMockObjectMapInvalidateRequest, UpdatesInMemoryFlag) { AsyncRequest<> *request = new InvalidateRequest<>(*ictx, CEPH_NOSNAP, true, &cond_ctx); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); @@ -65,7 +65,7 @@ TEST_F(TestMockObjectMapInvalidateRequest, UpdatesHeadOnDiskFlag) { AsyncRequest<> *request = new InvalidateRequest<>(*ictx, CEPH_NOSNAP, false, &cond_ctx); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); @@ -95,7 +95,7 @@ TEST_F(TestMockObjectMapInvalidateRequest, UpdatesSnapOnDiskFlag) { &cond_ctx); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); @@ -117,7 +117,7 @@ TEST_F(TestMockObjectMapInvalidateRequest, ErrorOnDiskUpdateWithoutLock) { AsyncRequest<> *request = new InvalidateRequest<>(*ictx, CEPH_NOSNAP, false, &cond_ctx); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .Times(0); @@ -142,7 +142,7 @@ TEST_F(TestMockObjectMapInvalidateRequest, ErrorOnDiskUpdateFailure) { AsyncRequest<> *request = new InvalidateRequest<>(*ictx, CEPH_NOSNAP, false, &cond_ctx); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(Return(-EINVAL)); diff --git a/src/test/librbd/object_map/test_mock_LockRequest.cc b/src/test/librbd/object_map/test_mock_LockRequest.cc index bc1a1071c7a..ee413de350b 100644 --- a/src/test/librbd/object_map/test_mock_LockRequest.cc +++ b/src/test/librbd/object_map/test_mock_LockRequest.cc @@ -30,7 +30,7 @@ public: std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, CEPH_NOSNAP)); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("lock"), StrEq("lock"), _, _, _, _)) + exec_internal(oid, _, StrEq("lock"), StrEq("lock"), _, _, _, _)) .WillOnce(Return(r)); } @@ -38,7 +38,7 @@ public: std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, CEPH_NOSNAP)); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("lock"), StrEq("get_info"), _, + exec_internal(oid, _, StrEq("lock"), StrEq("get_info"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -65,7 +65,7 @@ public: std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, CEPH_NOSNAP)); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("lock"), StrEq("break_lock"), + exec_internal(oid, _, StrEq("lock"), StrEq("break_lock"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); diff --git a/src/test/librbd/object_map/test_mock_RefreshRequest.cc b/src/test/librbd/object_map/test_mock_RefreshRequest.cc index 7be2c8ca6b1..d266ca58f25 100644 --- a/src/test/librbd/object_map/test_mock_RefreshRequest.cc +++ b/src/test/librbd/object_map/test_mock_RefreshRequest.cc @@ -88,7 +88,7 @@ public: int r) { std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, snap_id)); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("rbd"), + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_load"), _, _, _, _)); if (r < 0) { expect.WillOnce(Return(r)); @@ -130,7 +130,7 @@ public: std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, TEST_SNAP_ID)); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("rbd"), + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, _, _)); expect.WillOnce(Return(r)); } diff --git a/src/test/librbd/object_map/test_mock_ResizeRequest.cc b/src/test/librbd/object_map/test_mock_ResizeRequest.cc index 732b00aadc0..bbb02b7b4a6 100644 --- a/src/test/librbd/object_map/test_mock_ResizeRequest.cc +++ b/src/test/librbd/object_map/test_mock_ResizeRequest.cc @@ -26,19 +26,19 @@ public: std::string oid(ObjectMap<>::object_map_name(ictx->id, snap_id)); if (snap_id == CEPH_NOSNAP) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(DoDefault()); } if (r < 0) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, _, _)) .WillOnce(Return(r)); } else { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_resize"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -46,7 +46,7 @@ public: void expect_invalidate(librbd::ImageCtx *ictx) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); } diff --git a/src/test/librbd/object_map/test_mock_SnapshotCreateRequest.cc b/src/test/librbd/object_map/test_mock_SnapshotCreateRequest.cc index 2748977391c..3335a836415 100644 --- a/src/test/librbd/object_map/test_mock_SnapshotCreateRequest.cc +++ b/src/test/librbd/object_map/test_mock_SnapshotCreateRequest.cc @@ -61,16 +61,16 @@ public: std::string oid(ObjectMap<>::object_map_name(ictx->id, CEPH_NOSNAP)); if (r < 0) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(Return(r)); } else { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_snap_add"), _, _, + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_snap_add"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -78,7 +78,7 @@ public: void expect_invalidate(librbd::ImageCtx *ictx) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); } diff --git a/src/test/librbd/object_map/test_mock_SnapshotRemoveRequest.cc b/src/test/librbd/object_map/test_mock_SnapshotRemoveRequest.cc index 2f879aa269a..43a49162c4a 100644 --- a/src/test/librbd/object_map/test_mock_SnapshotRemoveRequest.cc +++ b/src/test/librbd/object_map/test_mock_SnapshotRemoveRequest.cc @@ -28,12 +28,12 @@ public: std::string snap_oid(ObjectMap<>::object_map_name(ictx->id, snap_id)); if (r < 0) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, + exec_internal(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, _, _, _)) .WillOnce(Return(r)); } else { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, + exec_internal(snap_oid, _, StrEq("rbd"), StrEq("object_map_load"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -43,16 +43,16 @@ public: std::string oid(ObjectMap<>::object_map_name(ictx->id, CEPH_NOSNAP)); if (r < 0) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(Return(r)); } else { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_snap_remove"), _, + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_snap_remove"), _, _, _, _)) .WillOnce(DoDefault()); } @@ -71,7 +71,7 @@ public: void expect_invalidate(librbd::ImageCtx *ictx) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); } diff --git a/src/test/librbd/object_map/test_mock_SnapshotRollbackRequest.cc b/src/test/librbd/object_map/test_mock_SnapshotRollbackRequest.cc index 726a63cf2ae..92f37e1a0f7 100644 --- a/src/test/librbd/object_map/test_mock_SnapshotRollbackRequest.cc +++ b/src/test/librbd/object_map/test_mock_SnapshotRollbackRequest.cc @@ -37,7 +37,7 @@ public: void expect_write_map(librbd::ImageCtx *ictx, int r) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ObjectMap<>::object_map_name(ictx->id, CEPH_NOSNAP), _, + exec_internal(ObjectMap<>::object_map_name(ictx->id, CEPH_NOSNAP), _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(DoDefault()); if (r < 0) { @@ -55,7 +55,7 @@ public: void expect_invalidate(librbd::ImageCtx *ictx, uint32_t times) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .Times(times) .WillRepeatedly(DoDefault()); diff --git a/src/test/librbd/object_map/test_mock_UnlockRequest.cc b/src/test/librbd/object_map/test_mock_UnlockRequest.cc index 5ec222c0c8b..b205a2afffa 100644 --- a/src/test/librbd/object_map/test_mock_UnlockRequest.cc +++ b/src/test/librbd/object_map/test_mock_UnlockRequest.cc @@ -28,7 +28,7 @@ public: std::string oid(ObjectMap<>::object_map_name(mock_image_ctx.id, CEPH_NOSNAP)); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(oid, _, StrEq("lock"), StrEq("unlock"), _, _, _, _)) + exec_internal(oid, _, StrEq("lock"), StrEq("unlock"), _, _, _, _)) .WillOnce(Return(r)); } }; diff --git a/src/test/librbd/object_map/test_mock_UpdateRequest.cc b/src/test/librbd/object_map/test_mock_UpdateRequest.cc index bf7c0234342..6a3cd4adee9 100644 --- a/src/test/librbd/object_map/test_mock_UpdateRequest.cc +++ b/src/test/librbd/object_map/test_mock_UpdateRequest.cc @@ -40,19 +40,19 @@ public: std::string oid(ObjectMap<>::object_map_name(ictx->id, snap_id)); if (snap_id == CEPH_NOSNAP) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, + exec_internal(oid, _, StrEq("lock"), StrEq("assert_locked"), _, _, _, _)) .WillOnce(DoDefault()); } if (r < 0) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_update"), + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_update"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } else { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(oid, _, StrEq("rbd"), StrEq("object_map_update"), + exec_internal(oid, _, StrEq("rbd"), StrEq("object_map_update"), ContentsEqual(bl), _, _, _)) .WillOnce(DoDefault()); } @@ -60,7 +60,7 @@ public: void expect_invalidate(librbd::ImageCtx *ictx) { EXPECT_CALL(get_mock_io_ctx(ictx->md_ctx), - exec(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, + exec_internal(ictx->header_oid, _, StrEq("rbd"), StrEq("set_flags"), _, _, _, _)) .WillOnce(DoDefault()); } diff --git a/src/test/librbd/operation/test_mock_ResizeRequest.cc b/src/test/librbd/operation/test_mock_ResizeRequest.cc index ada978b2734..30713dd1e3a 100644 --- a/src/test/librbd/operation/test_mock_ResizeRequest.cc +++ b/src/test/librbd/operation/test_mock_ResizeRequest.cc @@ -114,7 +114,7 @@ public: } else { expect_is_lock_owner(mock_image_ctx); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("set_size"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/operation/test_mock_SnapshotCreateRequest.cc b/src/test/librbd/operation/test_mock_SnapshotCreateRequest.cc index 1810d12773f..34c6b60c45e 100644 --- a/src/test/librbd/operation/test_mock_SnapshotCreateRequest.cc +++ b/src/test/librbd/operation/test_mock_SnapshotCreateRequest.cc @@ -104,7 +104,7 @@ public: void expect_snap_create(MockImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq(mock_image_ctx.old_format ? "snap_add" : "snapshot_add"), _, _, _, _)); diff --git a/src/test/librbd/operation/test_mock_SnapshotProtectRequest.cc b/src/test/librbd/operation/test_mock_SnapshotProtectRequest.cc index 3828e7abacb..b1bab475162 100644 --- a/src/test/librbd/operation/test_mock_SnapshotProtectRequest.cc +++ b/src/test/librbd/operation/test_mock_SnapshotProtectRequest.cc @@ -49,7 +49,7 @@ public: void expect_set_protection_status(MockImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("set_protection_status"), _, _, _, _)); if (r < 0) { diff --git a/src/test/librbd/operation/test_mock_SnapshotRemoveRequest.cc b/src/test/librbd/operation/test_mock_SnapshotRemoveRequest.cc index 06d34e7e706..ef192860a9b 100644 --- a/src/test/librbd/operation/test_mock_SnapshotRemoveRequest.cc +++ b/src/test/librbd/operation/test_mock_SnapshotRemoveRequest.cc @@ -121,7 +121,7 @@ public: } auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("snapshot_trash_add"), _, _, _, _)); if (r < 0) { @@ -139,7 +139,7 @@ public: using ceph::encode; EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("snapshot_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([snap_info, r](bufferlist* bl) { encode(snap_info, *bl); @@ -155,7 +155,7 @@ public: using ceph::encode; EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("children_list"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([child_images, r](bufferlist* bl) { encode(child_images, *bl); @@ -171,7 +171,7 @@ public: encode(cls::rbd::ChildImageSpec{mock_image_ctx.md_ctx.get_id(), "", mock_image_ctx.id}, bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(util::header_name(parent_spec.image_id), + exec_internal(util::header_name(parent_spec.image_id), _, StrEq("rbd"), StrEq("child_detach"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); @@ -216,7 +216,7 @@ public: void expect_snap_remove(MockImageCtx &mock_image_ctx, int r) { auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq(mock_image_ctx.old_format ? "snap_remove" : "snapshot_remove"), _, _, _, _)); diff --git a/src/test/librbd/operation/test_mock_SnapshotUnprotectRequest.cc b/src/test/librbd/operation/test_mock_SnapshotUnprotectRequest.cc index 09f63805039..7e6cc260eda 100644 --- a/src/test/librbd/operation/test_mock_SnapshotUnprotectRequest.cc +++ b/src/test/librbd/operation/test_mock_SnapshotUnprotectRequest.cc @@ -57,7 +57,7 @@ public: encode(status, bl); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(mock_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_image_ctx.header_oid, _, StrEq("rbd"), StrEq("set_protection_status"), ContentsEqual(bl), _, _, _)); if (r < 0) { @@ -92,7 +92,7 @@ public: encode(children, bl); auto &expect = EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(RBD_CHILDREN, _, StrEq("rbd"), + exec_internal(RBD_CHILDREN, _, StrEq("rbd"), StrEq("get_children"), _, _, _, _)); if (r < 0) { expect.WillRepeatedly(Return(r)); diff --git a/src/test/librbd/test_mock_fixture.cc b/src/test/librbd/test_mock_fixture.cc index 664d90dd9ab..ae3dc4a9086 100644 --- a/src/test/librbd/test_mock_fixture.cc +++ b/src/test/librbd/test_mock_fixture.cc @@ -53,17 +53,17 @@ void TestMockFixture::TearDown() { void TestMockFixture::expect_unlock_exclusive_lock(librbd::ImageCtx &ictx) { EXPECT_CALL(get_mock_io_ctx(ictx.md_ctx), - exec(_, _, StrEq("lock"), StrEq("unlock"), _, _, _, _)) + exec_internal(_, _, StrEq("lock"), StrEq("unlock"), _, _, _, _)) .WillRepeatedly(DoDefault()); if (ictx.test_features(RBD_FEATURE_DIRTY_CACHE)) { EXPECT_CALL(get_mock_io_ctx(ictx.md_ctx), - exec(ictx.header_oid, _, StrEq("rbd"), StrEq("set_features"), _, _, _, _)) + exec_internal(ictx.header_oid, _, StrEq("rbd"), StrEq("set_features"), _, _, _, _)) .WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(ictx.md_ctx), - exec(ictx.header_oid, _, StrEq("rbd"), StrEq("metadata_set"), _, _, _, _)) + exec_internal(ictx.header_oid, _, StrEq("rbd"), StrEq("metadata_set"), _, _, _, _)) .WillOnce(DoDefault()); EXPECT_CALL(get_mock_io_ctx(ictx.md_ctx), - exec(ictx.header_oid, _, StrEq("rbd"), StrEq("metadata_remove"), _, _, _, _)) + exec_internal(ictx.header_oid, _, StrEq("rbd"), StrEq("metadata_remove"), _, _, _, _)) .WillOnce(DoDefault()); } } diff --git a/src/test/librbd/trash/test_mock_MoveRequest.cc b/src/test/librbd/trash/test_mock_MoveRequest.cc index 9b873d01259..8a1d5edb1ad 100644 --- a/src/test/librbd/trash/test_mock_MoveRequest.cc +++ b/src/test/librbd/trash/test_mock_MoveRequest.cc @@ -62,7 +62,7 @@ struct TestMockTrashMoveRequest : public TestMockFixture { const utime_t& end_time, int r) { EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_add"), + exec_internal(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_add"), _, _, _, _)) .WillOnce(WithArg<4>(Invoke([=](bufferlist& in_bl) { std::string id; @@ -96,7 +96,7 @@ struct TestMockTrashMoveRequest : public TestMockFixture { encode(id, in_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(StrEq("rbd_directory"), _, StrEq("rbd"), StrEq("dir_remove_image"), + exec_internal(StrEq("rbd_directory"), _, StrEq("rbd"), StrEq("dir_remove_image"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/librbd/trash/test_mock_RemoveRequest.cc b/src/test/librbd/trash/test_mock_RemoveRequest.cc index ea212d22714..d5430131853 100644 --- a/src/test/librbd/trash/test_mock_RemoveRequest.cc +++ b/src/test/librbd/trash/test_mock_RemoveRequest.cc @@ -102,7 +102,7 @@ struct TestMockTrashRemoveRequest : public TestMockFixture { encode(trash_expect_state, in_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_state_set"), + exec_internal(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_state_set"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); } @@ -138,7 +138,7 @@ struct TestMockTrashRemoveRequest : public TestMockFixture { encode(mock_image_ctx.id, in_bl); EXPECT_CALL(get_mock_io_ctx(mock_image_ctx.md_ctx), - exec(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_remove"), + exec_internal(StrEq("rbd_trash"), _, StrEq("rbd"), StrEq("trash_remove"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/neorados/cls.cc b/src/test/neorados/cls.cc index af77b909b0a..6820eeb2315 100644 --- a/src/test/neorados/cls.cc +++ b/src/test/neorados/cls.cc @@ -36,18 +36,34 @@ using namespace std::literals; using neorados::ReadOp; using neorados::WriteOp; +namespace cls::bogus_classes { +struct ClassId { + static constexpr auto name = "doesnotexistasdfasdf"; +}; +struct ClassIdLock { // This is a real class. We are adding a bogus method. + static constexpr auto name = "doesnotexistasdfasdf"; +}; +namespace method { +constexpr auto bogus_class = ClsMethod("method"); +constexpr auto bogus_method = ClsMethod("doesnotexistasdfasdfasdf"); +} +} + +using namespace ::cls::bogus_classes; + CORO_TEST_F(NeoRadosCls, DNE, NeoRadosTest) { std::string_view oid = "obj"; co_await execute(oid, WriteOp{}.create(true)); + bufferlist bl1, bl2; // Call a bogus class co_await expect_error_code( - execute(oid, ReadOp{}.exec("doesnotexistasdfasdf", "method", {})), + execute(oid, WriteOp{}.exec(method::bogus_class, std::move(bl1))), sys::errc::operation_not_supported); // Call a bogus method on an existent class co_await expect_error_code( - execute(oid, ReadOp{}.exec("lock", "doesnotexistasdfasdfasdf", {})), + execute(oid, WriteOp{}.exec(method::bogus_method, std::move(bl2))), sys::errc::operation_not_supported); co_return; } diff --git a/src/test/neorados/handler_error.cc b/src/test/neorados/handler_error.cc index 37215ee9d6c..2cad26abd0e 100644 --- a/src/test/neorados/handler_error.cc +++ b/src/test/neorados/handler_error.cc @@ -23,7 +23,7 @@ #include "include/neorados/RADOS.hpp" -#include "cls/version/cls_version_types.h" +#include "cls/version/cls_version_ops.h" #include "test/neorados/common_tests.h" @@ -40,7 +40,8 @@ CORO_TEST_F(neocls_handler_error, test_handler_error, NeoRadosTest) { neorados::ReadOp op; - op.exec("version", "read", {}, + bufferlist bl; + op.exec(::cls::version::method::read, std::move(bl), [](sys::error_code ec, const buffer::list& bl) { throw buffer::end_of_buffer{}; }); @@ -51,7 +52,8 @@ CORO_TEST_F(neocls_handler_error, test_handler_error, NeoRadosTest) { neorados::ReadOp op; - op.exec("version", "read", {}, + bufferlist bl; + op.exec(::cls::version::method::read, std::move(bl), [](sys::error_code ec, const buffer::list& bl) { throw std::exception(); }); diff --git a/src/test/neorados/misc.cc b/src/test/neorados/misc.cc index a372ff2afdb..88920790054 100644 --- a/src/test/neorados/misc.cc +++ b/src/test/neorados/misc.cc @@ -17,6 +17,7 @@ #include #include +#include #include "include/neorados/RADOS.hpp" @@ -165,10 +166,10 @@ CORO_TEST_F(NeoRadosMisc, LongAttrName, NeoRadosTest) { } CORO_TEST_F(NeoRadosMisc, Exec, NeoRadosTest) { - buffer::list out; + buffer::list in, out; co_await execute(oid, WriteOp{}.create(true)); co_await execute(oid, - ReadOp{}.exec("rbd"sv, "get_all_features"sv, {}, &out)); + ReadOp{}.exec(::cls::rbd::method::get_all_features, std::move(in), &out)); auto features = from_buffer_list(out); // make sure *some* features are specified; don't care which ones EXPECT_NE(0, features); diff --git a/src/test/neorados/read_operations.cc b/src/test/neorados/read_operations.cc index bbae362aa57..683c07f71db 100644 --- a/src/test/neorados/read_operations.cc +++ b/src/test/neorados/read_operations.cc @@ -38,6 +38,8 @@ #include "gtest/gtest.h" +#include "cls/rbd/cls_rbd_ops.h" + namespace asio = boost::asio; namespace ctnr = boost::container; namespace hash_alg = neorados::hash_alg; @@ -88,8 +90,9 @@ protected: CORO_TEST_F(NeoRadosReadOps, SetOpFlags, ReadOpTest) { sys::error_code ec; + bufferlist bl; co_await execute(oid, ReadOp{} - .exec("rbd"sv, "get_id"sv, {}, nullptr, &ec) + .exec(::cls::rbd::method::get_id, std::move(bl), nullptr, &ec) .set_failok()); EXPECT_EQ(sys::errc::io_error, ec); co_return; @@ -307,10 +310,10 @@ CORO_TEST_F(NeoRadosReadOps, ShortRead, ReadOpTest) { } CORO_TEST_F(NeoRadosReadOps, Exec, ReadOpTest) { - buffer::list bl; + buffer::list bl, inbl; sys::error_code ec; co_await execute(oid, - ReadOp{}.exec("rbd"sv, "get_all_features"sv, {}, &bl, &ec)); + ReadOp{}.exec(::cls::rbd::method::get_all_features, std::move(inbl), &bl, &ec)); EXPECT_FALSE(ec); std::uint64_t features; EXPECT_EQ(sizeof(features), bl.length()); diff --git a/src/test/neorados/write_operations.cc b/src/test/neorados/write_operations.cc index cad2f2cee64..fe9a6b12ad7 100644 --- a/src/test/neorados/write_operations.cc +++ b/src/test/neorados/write_operations.cc @@ -33,6 +33,8 @@ #include "gtest/gtest.h" +#include "cls/hello/cls_hello_ops.h" + namespace sys = boost::system; using namespace std::literals; @@ -129,8 +131,7 @@ CORO_TEST_F(NeoRadosWriteOps, Write, NeoRadosTest) { CORO_TEST_F(NeoRadosWriteOps, Exec, NeoRadosTest) { co_await execute(oid, WriteOp{} - .exec("hello"sv, "record_hello"sv, - to_buffer_list("test"))); + .exec(::cls::hello::method::record_hello, to_buffer_list("test"))); const auto bl = co_await read(oid); EXPECT_EQ(to_buffer_list("Hello, test!"), bl); co_return; diff --git a/src/test/rbd_mirror/image_deleter/test_mock_TrashMoveRequest.cc b/src/test/rbd_mirror/image_deleter/test_mock_TrashMoveRequest.cc index ba2004fe1e0..22d2543b364 100644 --- a/src/test/rbd_mirror/image_deleter/test_mock_TrashMoveRequest.cc +++ b/src/test/rbd_mirror/image_deleter/test_mock_TrashMoveRequest.cc @@ -234,7 +234,7 @@ public: encode(image_id, bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get_image_id"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; @@ -301,7 +301,7 @@ public: encode(mirror_image, bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_set"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/rbd_mirror/image_deleter/test_mock_TrashRemoveRequest.cc b/src/test/rbd_mirror/image_deleter/test_mock_TrashRemoveRequest.cc index c8d22956306..ce16fe4cca6 100644 --- a/src/test/rbd_mirror/image_deleter/test_mock_TrashRemoveRequest.cc +++ b/src/test/rbd_mirror/image_deleter/test_mock_TrashRemoveRequest.cc @@ -133,7 +133,7 @@ public: void expect_trash_get(const cls::rbd::TrashImageSpec& trash_spec, int r) { using ceph::encode; EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(StrEq(RBD_TRASH), _, StrEq("rbd"), + exec_internal(StrEq(RBD_TRASH), _, StrEq("rbd"), StrEq("trash_get"), _, _, _, _)) .WillOnce(WithArg<5>(Invoke([trash_spec, r](bufferlist* bl) { encode(trash_spec, *bl); @@ -148,7 +148,7 @@ public: encode(cls::rbd::TRASH_IMAGE_STATE_NORMAL, in_bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(StrEq(RBD_TRASH), _, StrEq("rbd"), + exec_internal(StrEq(RBD_TRASH), _, StrEq("rbd"), StrEq("trash_state_set"), ContentsEqual(in_bl), _, _, _)) .WillOnce(Return(r)); @@ -160,7 +160,7 @@ public: encode(snapc, bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(librbd::util::header_name(image_id), _, StrEq("rbd"), + exec_internal(librbd::util::header_name(image_id), _, StrEq("rbd"), StrEq("get_snapcontext"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; diff --git a/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc b/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc index 5d37cd13a35..aaa9e01bdc2 100644 --- a/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc +++ b/src/test/rbd_mirror/image_deleter/test_mock_TrashWatcher.cc @@ -168,7 +168,7 @@ public: encode(images, out_bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_TRASH, _, StrEq("rbd"), StrEq("trash_list"), + exec_internal(RBD_TRASH, _, StrEq("rbd"), StrEq("trash_list"), ContentsEqual(bl), _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([out_bl](bufferlist *bl) { *bl = out_bl; diff --git a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_ApplyImageStateRequest.cc b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_ApplyImageStateRequest.cc index 1516d7962c2..8f180c63cd1 100644 --- a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_ApplyImageStateRequest.cc +++ b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_ApplyImageStateRequest.cc @@ -127,7 +127,7 @@ public: bufferlist bl; ceph::encode(key, bl); EXPECT_CALL(get_mock_io_ctx(m_mock_local_image_ctx->md_ctx), - exec(m_mock_local_image_ctx->header_oid, _, StrEq("rbd"), + exec_internal(m_mock_local_image_ctx->header_oid, _, StrEq("rbd"), StrEq("metadata_remove"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); if (r < 0) { @@ -139,7 +139,7 @@ public: bufferlist bl; ceph::encode(pairs, bl); EXPECT_CALL(get_mock_io_ctx(m_mock_local_image_ctx->md_ctx), - exec(m_mock_local_image_ctx->header_oid, _, StrEq("rbd"), + exec_internal(m_mock_local_image_ctx->header_oid, _, StrEq("rbd"), StrEq("metadata_set"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_CreateLocalImageRequest.cc b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_CreateLocalImageRequest.cc index 89091a05f3d..dc2ead296cf 100644 --- a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_CreateLocalImageRequest.cc +++ b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_CreateLocalImageRequest.cc @@ -169,7 +169,7 @@ public: encode(mirror_image, bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_set"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); } @@ -179,7 +179,7 @@ public: encode(image_id, bl); EXPECT_CALL(get_mock_io_ctx(m_local_io_ctx), - exec(StrEq("rbd_mirroring"), _, StrEq("rbd"), + exec_internal(StrEq("rbd_mirroring"), _, StrEq("rbd"), StrEq("mirror_image_remove"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); diff --git a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_Replayer.cc b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_Replayer.cc index 9eac17eace6..db85304f06b 100644 --- a/src/test/rbd_mirror/image_replayer/snapshot/test_mock_Replayer.cc +++ b/src/test/rbd_mirror/image_replayer/snapshot/test_mock_Replayer.cc @@ -630,7 +630,7 @@ public: encode(last_copied_object, bl); EXPECT_CALL(get_mock_io_ctx(mock_test_image_ctx.md_ctx), - exec(mock_test_image_ctx.header_oid, _, StrEq("rbd"), + exec_internal(mock_test_image_ctx.header_oid, _, StrEq("rbd"), StrEq("mirror_image_snapshot_set_copy_progress"), ContentsEqual(bl), _, _, _)) .WillOnce(Return(r)); diff --git a/src/test/rbd_mirror/image_replayer/test_mock_CreateImageRequest.cc b/src/test/rbd_mirror/image_replayer/test_mock_CreateImageRequest.cc index 3080a93fe35..0e2f66d4e6e 100644 --- a/src/test/rbd_mirror/image_replayer/test_mock_CreateImageRequest.cc +++ b/src/test/rbd_mirror/image_replayer/test_mock_CreateImageRequest.cc @@ -274,7 +274,7 @@ public: encode(mirror_image, bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; @@ -288,7 +288,7 @@ public: encode(image_id, bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get_image_id"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; diff --git a/src/test/rbd_mirror/image_replayer/test_mock_GetMirrorImageIdRequest.cc b/src/test/rbd_mirror/image_replayer/test_mock_GetMirrorImageIdRequest.cc index 6877e44dff2..509278b7193 100644 --- a/src/test/rbd_mirror/image_replayer/test_mock_GetMirrorImageIdRequest.cc +++ b/src/test/rbd_mirror/image_replayer/test_mock_GetMirrorImageIdRequest.cc @@ -49,7 +49,7 @@ public: encode(image_id, bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_get_image_id"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; diff --git a/src/test/rbd_mirror/image_replayer/test_mock_PrepareLocalImageRequest.cc b/src/test/rbd_mirror/image_replayer/test_mock_PrepareLocalImageRequest.cc index 29522173b42..3dc0363eedb 100644 --- a/src/test/rbd_mirror/image_replayer/test_mock_PrepareLocalImageRequest.cc +++ b/src/test/rbd_mirror/image_replayer/test_mock_PrepareLocalImageRequest.cc @@ -222,7 +222,7 @@ public: encode(image_name, bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_DIRECTORY, _, StrEq("rbd"), StrEq("dir_get_name"), _, + exec_internal(RBD_DIRECTORY, _, StrEq("rbd"), StrEq("dir_get_name"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; diff --git a/src/test/rbd_mirror/pool_watcher/test_mock_RefreshImagesRequest.cc b/src/test/rbd_mirror/pool_watcher/test_mock_RefreshImagesRequest.cc index c0f3a6b4d14..2c18665985e 100644 --- a/src/test/rbd_mirror/pool_watcher/test_mock_RefreshImagesRequest.cc +++ b/src/test/rbd_mirror/pool_watcher/test_mock_RefreshImagesRequest.cc @@ -47,7 +47,7 @@ public: encode(ids, bl); EXPECT_CALL(get_mock_io_ctx(io_ctx), - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_list"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_list"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([bl](bufferlist *out_bl) { *out_bl = bl; diff --git a/src/test/rbd_mirror/test_mock_InstanceWatcher.cc b/src/test/rbd_mirror/test_mock_InstanceWatcher.cc index 4a1514e14c9..463399a4bd2 100644 --- a/src/test/rbd_mirror/test_mock_InstanceWatcher.cc +++ b/src/test/rbd_mirror/test_mock_InstanceWatcher.cc @@ -165,14 +165,14 @@ public: void expect_register_instance(librados::MockTestMemIoCtxImpl &mock_io_ctx, int r) { - EXPECT_CALL(mock_io_ctx, exec(RBD_MIRROR_LEADER, _, StrEq("rbd"), + EXPECT_CALL(mock_io_ctx, exec_internal(RBD_MIRROR_LEADER, _, StrEq("rbd"), StrEq("mirror_instances_add"), _, _, _, _)) .WillOnce(Return(r)); } void expect_unregister_instance(librados::MockTestMemIoCtxImpl &mock_io_ctx, int r) { - EXPECT_CALL(mock_io_ctx, exec(RBD_MIRROR_LEADER, _, StrEq("rbd"), + EXPECT_CALL(mock_io_ctx, exec_internal(RBD_MIRROR_LEADER, _, StrEq("rbd"), StrEq("mirror_instances_remove"), _, _, _, _)) .WillOnce(Return(r)); } diff --git a/src/test/rbd_mirror/test_mock_MirrorStatusUpdater.cc b/src/test/rbd_mirror/test_mock_MirrorStatusUpdater.cc index 0625932bc68..f7172777d19 100644 --- a/src/test/rbd_mirror/test_mock_MirrorStatusUpdater.cc +++ b/src/test/rbd_mirror/test_mock_MirrorStatusUpdater.cc @@ -150,7 +150,7 @@ public: const std::string& global_image_id, const cls::rbd::MirrorImageSiteStatus& mirror_image_status, int r) { EXPECT_CALL(*m_mock_local_io_ctx, - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_status_set"), _, _, _, _)) .WillOnce(WithArg<4>(Invoke( [r, global_image_id, mirror_image_status](bufferlist& in_bl) { @@ -188,7 +188,7 @@ public: void expect_mirror_status_remove(const std::string& global_image_id, int r) { EXPECT_CALL(*m_mock_local_io_ctx, - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_image_status_remove"), _, _, _, _)) .WillOnce(WithArg<4>(Invoke( [r, global_image_id](bufferlist& in_bl) { diff --git a/src/test/rbd_mirror/test_mock_PoolReplayer.cc b/src/test/rbd_mirror/test_mock_PoolReplayer.cc index 273bd147e46..49b7f7c91ad 100644 --- a/src/test/rbd_mirror/test_mock_PoolReplayer.cc +++ b/src/test/rbd_mirror/test_mock_PoolReplayer.cc @@ -341,7 +341,7 @@ public: encode(uuid, out_bl); EXPECT_CALL(*io_ctx_impl, - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_uuid_get"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_uuid_get"), _, _, _, _)) .WillOnce(DoAll(WithArg<5>(Invoke([out_bl](bufferlist *bl) { *bl = out_bl; @@ -353,7 +353,7 @@ public: std::atomic* default_namespace_enabled, int r) { EXPECT_CALL(*io_ctx_impl, - exec(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_mode_get"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_mode_get"), _, _, _, _)) .WillRepeatedly(DoAll(WithArg<5>(Invoke( [io_ctx_impl, default_namespace_enabled](bufferlist* bl) { @@ -371,7 +371,7 @@ public: librados::MockTestMemIoCtxImpl *io_ctx_impl, const std::string &remote_namespace, int r) { EXPECT_CALL(*io_ctx_impl, - exec(RBD_MIRRORING, _, StrEq("rbd"), + exec_internal(RBD_MIRRORING, _, StrEq("rbd"), StrEq("mirror_remote_namespace_get"), _, _, _, _)) .WillRepeatedly(DoAll(WithArg<5>(Invoke([remote_namespace](bufferlist *bl) { encode(remote_namespace, *bl);