@@ -70,15 +70,15 @@ TEST_F(AsyncContextTest, AsyncServiceTest)
7070 service.start (mtx, cvar);
7171 {
7272 auto lock = std::unique_lock{mtx};
73- cvar.wait (lock, [&] { return service.interrupt || service.stopped ; });
73+ cvar.wait (lock, [&] { return service.state != service.PENDING ; });
7474 }
75- ASSERT_FALSE (service.stopped . load () );
75+ ASSERT_EQ (service.state , service. STARTED );
7676 service.signal (service.terminate );
7777 {
7878 auto lock = std::unique_lock{mtx};
79- cvar.wait (lock, [&] { return service.stopped . load () ; });
79+ cvar.wait (lock, [&] { return service.state != service. STARTED ; });
8080 }
81- EXPECT_TRUE (service.stopped );
81+ ASSERT_EQ (service.state , service. STOPPED );
8282}
8383
8484TEST_F (AsyncContextTest, StartTwiceTest)
@@ -92,14 +92,15 @@ TEST_F(AsyncContextTest, StartTwiceTest)
9292 EXPECT_THROW (service.start (mtx, cvar), std::invalid_argument);
9393 {
9494 auto lock = std::unique_lock{mtx};
95- cvar.wait (lock, [&] { return service.interrupt || service.stopped ; });
95+ cvar.wait (lock, [&] { return service.state != service.PENDING ; });
9696 }
97- ASSERT_FALSE (service.stopped . load () );
97+ ASSERT_EQ (service.state , service. STARTED );
9898 service.signal (service.terminate );
9999 {
100100 auto lock = std::unique_lock{mtx};
101- cvar.wait (lock, [&] { return service.stopped . load () ; });
101+ cvar.wait (lock, [&] { return service.state != service. STARTED ; });
102102 }
103+ ASSERT_EQ (service.state , service.STOPPED );
103104}
104105
105106TEST_F (AsyncContextTest, TestUser1Signal)
@@ -113,9 +114,9 @@ TEST_F(AsyncContextTest, TestUser1Signal)
113114 service.start (mtx, cvar);
114115 {
115116 auto lock = std::unique_lock{mtx};
116- cvar.wait (lock, [&] { return static_cast < bool >( service.interrupt ) ; });
117+ cvar.wait (lock, [&] { return service.state != service. PENDING ; });
117118 }
118- ASSERT_TRUE ( static_cast < bool >( service.interrupt ) );
119+ ASSERT_EQ ( service.state , service. STARTED );
119120 service.signal (service.user1 );
120121 {
121122 auto lock = std::unique_lock{test_mtx};
0 commit comments