]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test_rados_api_misc: disconnected rados_monitor_log test 7350/head
authorDavid Disseldorp <ddiss@suse.de>
Wed, 10 Feb 2016 00:43:33 +0000 (01:43 +0100)
committerDavid Disseldorp <ddiss@suse.de>
Wed, 10 Feb 2016 00:48:13 +0000 (01:48 +0100)
Piggy-back on LibRadosMiscConnectFailure to confirm that
rados_monitor_log() against a disconnected cluster context fails with
-ENOTCONN, instead of aborting.

Signed-off-by: David Disseldorp <ddiss@suse.de>
src/test/librados/misc.cc

index 0fb67e0d509b381ef9f38d51444873a379871461..24ebe97838a9cc10c857762e343d0b39716b9eb3 100644 (file)
@@ -38,6 +38,16 @@ TEST(LibRadosMiscVersion, VersionPP) {
   Rados::version(&major, &minor, &extra);
 }
 
+static void test_rados_log_cb(void *arg,
+                              const char *line,
+                              const char *who,
+                              uint64_t sec, uint64_t nsec,
+                              uint64_t seq, const char *level,
+                              const char *msg)
+{
+    std::cerr << "monitor log callback invoked" << std::endl;
+}
+
 TEST(LibRadosMiscConnectFailure, ConnectFailure) {
   rados_t cluster;
 
@@ -51,6 +61,9 @@ TEST(LibRadosMiscConnectFailure, ConnectFailure) {
 
   ASSERT_EQ(0, rados_conf_set(cluster, "client_mount_timeout", "0.000001"));
 
+  ASSERT_EQ(-ENOTCONN, rados_monitor_log(cluster, "error",
+                                         test_rados_log_cb, NULL));
+
   ASSERT_NE(0, rados_connect(cluster));
   ASSERT_NE(0, rados_connect(cluster));