diff options
author | Arne Juul <arnej@verizonmedia.com> | 2021-08-16 13:58:44 +0000 |
---|---|---|
committer | Arne Juul <arnej@verizonmedia.com> | 2021-08-16 13:58:44 +0000 |
commit | 50a17447a478c8d3c5e42cb7f8ca2a74024bccef (patch) | |
tree | bce8860903c27430edfe32d2a65b73f367f7d071 /slobrok/src/tests | |
parent | 1ab96180e71b045d3ad157a212f37ea553ae51e5 (diff) |
use guards for subscriptions
Diffstat (limited to 'slobrok/src/tests')
-rw-r--r-- | slobrok/src/tests/service_map_mirror/service_map_mirror_test.cpp | 8 | ||||
-rw-r--r-- | slobrok/src/tests/union_service_map/union_service_map_test.cpp | 20 |
2 files changed, 13 insertions, 15 deletions
diff --git a/slobrok/src/tests/service_map_mirror/service_map_mirror_test.cpp b/slobrok/src/tests/service_map_mirror/service_map_mirror_test.cpp index 70f7a746ff0..201475e7580 100644 --- a/slobrok/src/tests/service_map_mirror/service_map_mirror_test.cpp +++ b/slobrok/src/tests/service_map_mirror/service_map_mirror_test.cpp @@ -47,15 +47,15 @@ TEST(ServiceMapMirrorTest, empty_inspection) { EXPECT_TRUE(bar.empty()); MockMapListener observer; - mirror.registerListener(observer); - mirror.unregisterListener(observer); + auto subscription = MapSubscription::subscribe(mirror, observer); + subscription.reset(); EXPECT_EQ(observer.last_event, MockEvent::NONE); } TEST(ServiceMapMirrorTest, full_inspection) { ServiceMapMirror mirror; MockMapListener observer; - mirror.registerListener(observer); + auto subscription = MapSubscription::subscribe(mirror, observer); for (int i = 0; i < 1984; ++i) { EXPECT_EQ(mirror.currentGeneration(), GenCnt(i)); auto name = fmt("key/%d/name", i); @@ -134,8 +134,6 @@ TEST(ServiceMapMirrorTest, full_inspection) { EXPECT_EQ(map["key/678/name"], "bar/2/foo"); EXPECT_EQ(map["key/789/name"], "bar/5/foo"); EXPECT_EQ(map.size(), 1981ul); - - mirror.unregisterListener(observer); } diff --git a/slobrok/src/tests/union_service_map/union_service_map_test.cpp b/slobrok/src/tests/union_service_map/union_service_map_test.cpp index 30db95324bb..89bad6fb785 100644 --- a/slobrok/src/tests/union_service_map/union_service_map_test.cpp +++ b/slobrok/src/tests/union_service_map/union_service_map_test.cpp @@ -13,8 +13,8 @@ TEST(UnionServiceMapTest, forwards_simple_requests) { ProxyMapSource source; UnionServiceMap unionizer; MockMapListener observer; - unionizer.registerListener(observer); - source.registerListener(unionizer); + auto subscription1 = MapSubscription::subscribe(unionizer, observer); + auto subscription2 = MapSubscription::subscribe(source, unionizer); EXPECT_EQ(observer.last_event, MockEvent::NONE); @@ -45,10 +45,10 @@ TEST(UnionServiceMapTest, handles_refcount) { ProxyMapSource source3; UnionServiceMap unionizer; MockMapListener observer; - unionizer.registerListener(observer); - source1.registerListener(unionizer); - source2.registerListener(unionizer); - source3.registerListener(unionizer); + auto subscription1 = MapSubscription::subscribe(unionizer, observer); + auto subscription2 = MapSubscription::subscribe(source1, unionizer); + auto subscription3 = MapSubscription::subscribe(source2, unionizer); + auto subscription4 = MapSubscription::subscribe(source3, unionizer); EXPECT_EQ(observer.last_event, MockEvent::NONE); ServiceMapping one{"foo/1", "bar/1"}; @@ -94,10 +94,10 @@ TEST(UnionServiceMapTest, handles_conflicts) { ProxyMapSource source3; UnionServiceMap unionizer; MockMapListener observer; - unionizer.registerListener(observer); - source1.registerListener(unionizer); - source2.registerListener(unionizer); - source3.registerListener(unionizer); + auto subscription1 = MapSubscription::subscribe(unionizer, observer); + auto subscription2 = MapSubscription::subscribe(source1, unionizer); + auto subscription3 = MapSubscription::subscribe(source2, unionizer); + auto subscription4 = MapSubscription::subscribe(source3, unionizer); EXPECT_EQ(observer.last_event, MockEvent::NONE); ServiceMapping one{"foo/1", "bar/1"}; |