Skip to content

Commit

Permalink
Problem: Intermittent monitor test failures
Browse files Browse the repository at this point in the history
Solution: Do not require delayed connection event
  • Loading branch information
gummif committed Oct 9, 2022
1 parent 381f699 commit 326a994
Showing 1 changed file with 2 additions and 10 deletions.
12 changes: 2 additions & 10 deletions tests/monitor.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,6 @@
class mock_monitor_t : public zmq::monitor_t
{
public:
void on_event_connect_delayed(const zmq_event_t &, const char *) ZMQ_OVERRIDE
{
++connect_delayed;
++total;
}

void on_event_connected(const zmq_event_t &, const char *) ZMQ_OVERRIDE
{
Expand All @@ -22,7 +17,6 @@ class mock_monitor_t : public zmq::monitor_t
}

int total{0};
int connect_delayed{0};
int connected{0};
};

Expand Down Expand Up @@ -79,15 +73,14 @@ TEST_CASE("monitor init event count", "[monitor]")
common_server_client_setup s{false};
mock_monitor_t monitor;

const int expected_event_count = 2;
const int expected_event_count = 1;
monitor.init(s.client, "inproc://foo");

CHECK_FALSE(monitor.check_event(0));
s.init();

while (monitor.check_event(100) && monitor.total < expected_event_count) {
while (monitor.check_event(1000) && monitor.total < expected_event_count) {
}
CHECK(monitor.connect_delayed == 1);
CHECK(monitor.connected == 1);
CHECK(monitor.total == expected_event_count);
}
Expand Down Expand Up @@ -137,7 +130,6 @@ TEST_CASE("monitor init abort", "[monitor]")
CHECK(cond_var.wait_for(lock, std::chrono::seconds(1),
[&done] { return done; }));
}
CHECK(monitor.connect_delayed == 1);
CHECK(monitor.connected == 1);
monitor.abort();
thread.join();
Expand Down

0 comments on commit 326a994

Please sign in to comment.