]> git.ipfire.org Git - thirdparty/kea.git/commitdiff
[153-netconf-fd-watcher] Making tests more robust 153-netconf-fd-watcher
authorFrancis Dupont <fdupont@isc.org>
Tue, 9 Oct 2018 10:21:54 +0000 (12:21 +0200)
committerFrancis Dupont <fdupont@isc.org>
Tue, 9 Oct 2018 10:21:54 +0000 (12:21 +0200)
src/bin/netconf/tests/fd_watcher_unittests.cc

index 79b2b284a112bf47cd6ffe8c73823363e6c250a2..84f2c898cb4ce6c81c735907982f192a0e26dd1b 100644 (file)
@@ -165,12 +165,14 @@ TEST(FdWatcherTest, subscribe) {
     ASSERT_NO_THROW(subs->module_change_subscribe(model.c_str(), cb));
 
     // Check some file descriptors were opened.
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(3, fw->readFds.size());
     EXPECT_EQ(0, fw->writeFds.size());
 
     // Reset subscription and check file descriptors are closed.
     subs.reset();
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(1, fw->readFds.size());
 
@@ -205,6 +207,7 @@ TEST(FdWatcherTest, subscribeNoThread) {
     ASSERT_NO_THROW(subs->module_change_subscribe(model.c_str(), cb));
 
     // Check some file descriptors were opened.
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(3, fw->readFds.size());
     EXPECT_EQ(0, fw->writeFds.size());
@@ -221,6 +224,7 @@ TEST(FdWatcherTest, subscribeNoThread) {
 
     // Reset subscription and check file descriptors are closed.
     subs.reset();
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(1, fw->readFds.size());
 
@@ -257,24 +261,28 @@ TEST(FdWatcherTest, unsubscribe) {
     ASSERT_NO_THROW(subs1->module_change_subscribe(model.c_str(), cb));
 
     // Check some file descriptors were opened.
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(3, fw->readFds.size());
     EXPECT_EQ(0, fw->writeFds.size());
 
     // Reset subscription and check file descriptors are closed.
     subs1.reset();
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(1, fw->readFds.size());
 
     // Try again to subscribe.
     S_Subscribe subs2(new Subscribe(sess));
     ASSERT_NO_THROW(subs2->module_change_subscribe(model.c_str(), cb));
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(3, fw->readFds.size());
     EXPECT_EQ(0, fw->writeFds.size());
 
     // Unsubscribe.
     subs2.reset();
+    io_service->run_one();
     io_service->poll();
     EXPECT_EQ(1, fw->readFds.size());