]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test/librados: use spawn submodule instead of boost::asio::spawn 48585/head
authorCasey Bodley <cbodley@redhat.com>
Fri, 21 Oct 2022 14:35:05 +0000 (10:35 -0400)
committerCasey Bodley <cbodley@redhat.com>
Fri, 21 Oct 2022 14:35:08 +0000 (10:35 -0400)
there appear to be breaking API changes to spawn() in boost 1.80, use
the spawn submodule instead

Signed-off-by: Casey Bodley <cbodley@redhat.com>
src/test/librados/CMakeLists.txt
src/test/librados/asio.cc

index fc033766cc47faaca19605e01fbcfffda17aab57..b20cd8da4d1c3e26a1f3848bfc8f6dbfd8b4bad7 100644 (file)
@@ -60,7 +60,7 @@ target_link_libraries(ceph_test_rados_api_aio_pp
 
 add_executable(ceph_test_rados_api_asio asio.cc)
 target_link_libraries(ceph_test_rados_api_asio global
-  librados ${UNITTEST_LIBS} Boost::coroutine Boost::context)
+  librados ${UNITTEST_LIBS} spawn)
 
 add_executable(ceph_test_rados_api_list
   list.cc
index f92c42c72a52f99061eec8d25294bc60b3c11de7..9f86b4472b5a0621a5d815dd5bb0ca008d8546b5 100644 (file)
 #include "common/errno.h"
 #include "global/global_init.h"
 
-#define BOOST_COROUTINES_NO_DEPRECATION_WARNING
 #include <boost/range/begin.hpp>
 #include <boost/range/end.hpp>
-#include <boost/asio/spawn.hpp>
+#include <spawn/spawn.hpp>
 #include <boost/asio/use_future.hpp>
 
 #define dout_subsys ceph_subsys_rados
@@ -113,20 +112,20 @@ TEST_F(AsioRados, AsyncReadYield)
 {
   boost::asio::io_service service;
 
-  auto success_cr = [&] (boost::asio::yield_context yield) {
+  auto success_cr = [&] (spawn::yield_context yield) {
     boost::system::error_code ec;
     auto bl = librados::async_read(service, io, "exist", 256, 0, yield[ec]);
     EXPECT_FALSE(ec);
     EXPECT_EQ("hello", bl.to_str());
   };
-  boost::asio::spawn(service, success_cr);
+  spawn::spawn(service, success_cr);
 
-  auto failure_cr = [&] (boost::asio::yield_context yield) {
+  auto failure_cr = [&] (spawn::yield_context yield) {
     boost::system::error_code ec;
     auto bl = librados::async_read(service, io, "noexist", 256, 0, yield[ec]);
     EXPECT_EQ(boost::system::errc::no_such_file_or_directory, ec);
   };
-  boost::asio::spawn(service, failure_cr);
+  spawn::spawn(service, failure_cr);
 
   service.run();
 }
@@ -178,22 +177,22 @@ TEST_F(AsioRados, AsyncWriteYield)
   bufferlist bl;
   bl.append("hello");
 
-  auto success_cr = [&] (boost::asio::yield_context yield) {
+  auto success_cr = [&] (spawn::yield_context yield) {
     boost::system::error_code ec;
     librados::async_write(service, io, "exist", bl, bl.length(), 0,
                           yield[ec]);
     EXPECT_FALSE(ec);
     EXPECT_EQ("hello", bl.to_str());
   };
-  boost::asio::spawn(service, success_cr);
+  spawn::spawn(service, success_cr);
 
-  auto failure_cr = [&] (boost::asio::yield_context yield) {
+  auto failure_cr = [&] (spawn::yield_context yield) {
     boost::system::error_code ec;
     librados::async_write(service, snapio, "exist", bl, bl.length(), 0,
                           yield[ec]);
     EXPECT_EQ(boost::system::errc::read_only_file_system, ec);
   };
-  boost::asio::spawn(service, failure_cr);
+  spawn::spawn(service, failure_cr);
 
   service.run();
 }
@@ -251,7 +250,7 @@ TEST_F(AsioRados, AsyncReadOperationYield)
 {
   boost::asio::io_service service;
 
-  auto success_cr = [&] (boost::asio::yield_context yield) {
+  auto success_cr = [&] (spawn::yield_context yield) {
     librados::ObjectReadOperation op;
     op.read(0, 0, nullptr, nullptr);
     boost::system::error_code ec;
@@ -260,9 +259,9 @@ TEST_F(AsioRados, AsyncReadOperationYield)
     EXPECT_FALSE(ec);
     EXPECT_EQ("hello", bl.to_str());
   };
-  boost::asio::spawn(service, success_cr);
+  spawn::spawn(service, success_cr);
 
-  auto failure_cr = [&] (boost::asio::yield_context yield) {
+  auto failure_cr = [&] (spawn::yield_context yield) {
     librados::ObjectReadOperation op;
     op.read(0, 0, nullptr, nullptr);
     boost::system::error_code ec;
@@ -270,7 +269,7 @@ TEST_F(AsioRados, AsyncReadOperationYield)
                                       yield[ec]);
     EXPECT_EQ(boost::system::errc::no_such_file_or_directory, ec);
   };
-  boost::asio::spawn(service, failure_cr);
+  spawn::spawn(service, failure_cr);
 
   service.run();
 }
@@ -335,23 +334,23 @@ TEST_F(AsioRados, AsyncWriteOperationYield)
   bufferlist bl;
   bl.append("hello");
 
-  auto success_cr = [&] (boost::asio::yield_context yield) {
+  auto success_cr = [&] (spawn::yield_context yield) {
     librados::ObjectWriteOperation op;
     op.write_full(bl);
     boost::system::error_code ec;
     librados::async_operate(service, io, "exist", &op, 0, yield[ec]);
     EXPECT_FALSE(ec);
   };
-  boost::asio::spawn(service, success_cr);
+  spawn::spawn(service, success_cr);
 
-  auto failure_cr = [&] (boost::asio::yield_context yield) {
+  auto failure_cr = [&] (spawn::yield_context yield) {
     librados::ObjectWriteOperation op;
     op.write_full(bl);
     boost::system::error_code ec;
     librados::async_operate(service, snapio, "exist", &op, 0, yield[ec]);
     EXPECT_EQ(boost::system::errc::read_only_file_system, ec);
   };
-  boost::asio::spawn(service, failure_cr);
+  spawn::spawn(service, failure_cr);
 
   service.run();
 }