} // anonymous namespace
+namespace librados {
+
+MockTestMemIoCtxImpl &get_mock_io_ctx(IoCtx &ioctx) {
+ MockTestMemIoCtxImpl **mock =
+ reinterpret_cast<MockTestMemIoCtxImpl **>(&ioctx);
+ return **mock;
+}
+
+}
+
namespace librados_test_stub {
TestRadosClientPtr *rados_client() {
#include <boost/shared_ptr.hpp>
namespace librados {
+class IoCtx;
class TestRadosClient;
+class MockTestMemIoCtxImpl;
+
+MockTestMemIoCtxImpl &get_mock_io_ctx(IoCtx &ioctx);
}
namespace librados_test_stub {
mock_image_ctx.image_ctx->op_work_queue));
}
-librados::MockTestMemIoCtxImpl &TestMockFixture::get_mock_io_ctx(
- librados::IoCtx &ioctx) {
- // TODO become friend of IoCtx so that we can cleanly extract io_ctx_impl
- librados::MockTestMemIoCtxImpl **mock =
- reinterpret_cast<librados::MockTestMemIoCtxImpl **>(&ioctx);
- return **mock;
-}
-
void TestMockFixture::initialize_features(librbd::ImageCtx *ictx,
librbd::MockImageCtx &mock_image_ctx,
librbd::MockExclusiveLock &mock_exclusive_lock,
#include "test/librbd/test_fixture.h"
#include "test/librbd/mock/MockImageCtx.h"
+#include "test/librados_test_stub/LibradosTestStub.h"
#include "common/WorkQueue.h"
#include <boost/shared_ptr.hpp>
#include <gmock/gmock.h>
::testing::NiceMock<librados::MockTestMemRadosClient> &get_mock_rados_client() {
return *s_mock_rados_client;
}
- librados::MockTestMemIoCtxImpl &get_mock_io_ctx(librados::IoCtx &ioctx);
void expect_op_work_queue(librbd::MockImageCtx &mock_image_ctx);
void expect_unlock_exclusive_lock(librbd::ImageCtx &ictx);
s_mock_rados_client->default_to_dispatch();
}
-librados::MockTestMemIoCtxImpl &TestMockFixture::get_mock_io_ctx(
- librados::IoCtx &ioctx) {
- librados::MockTestMemIoCtxImpl **mock =
- reinterpret_cast<librados::MockTestMemIoCtxImpl **>(&ioctx);
- return **mock;
-}
-
} // namespace mirror
} // namespace rbd
#define CEPH_TEST_RBD_MIRROR_TEST_MOCK_FIXTURE_H
#include "test/rbd_mirror/test_fixture.h"
+#include "test/librados_test_stub/LibradosTestStub.h"
#include <boost/shared_ptr.hpp>
#include <gmock/gmock.h>
::testing::NiceMock<librados::MockTestMemRadosClient> &get_mock_rados_client() {
return *s_mock_rados_client;
}
- librados::MockTestMemIoCtxImpl &get_mock_io_ctx(librados::IoCtx &ioctx);
private:
static TestRadosClientPtr s_test_rados_client;