forked from MirrorHub/synapse
Also unittest RoomMemberStore's joined_hosts_for_room()
This commit is contained in:
parent
ae7dfeb5b6
commit
1aaa429081
1 changed files with 48 additions and 0 deletions
|
@ -43,6 +43,9 @@ class RoomMemberStoreTestCase(unittest.TestCase):
|
||||||
self.u_alice = hs.parse_userid("@alice:test")
|
self.u_alice = hs.parse_userid("@alice:test")
|
||||||
self.u_bob = hs.parse_userid("@bob:test")
|
self.u_bob = hs.parse_userid("@bob:test")
|
||||||
|
|
||||||
|
# User elsewhere on another host
|
||||||
|
self.u_charlie = hs.parse_userid("@charlie:elsewhere")
|
||||||
|
|
||||||
self.room = hs.parse_roomid("!abc123:test")
|
self.room = hs.parse_roomid("!abc123:test")
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
|
@ -107,3 +110,48 @@ class RoomMemberStoreTestCase(unittest.TestCase):
|
||||||
[self.u_alice.to_string(), self.u_bob.to_string()]
|
[self.u_alice.to_string(), self.u_bob.to_string()]
|
||||||
))
|
))
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@defer.inlineCallbacks
|
||||||
|
def test_room_hosts(self):
|
||||||
|
yield self.inject_room_member(self.room, self.u_alice, Membership.JOIN)
|
||||||
|
|
||||||
|
self.assertEquals(
|
||||||
|
["test"],
|
||||||
|
(yield self.store.get_joined_hosts_for_room(self.room.to_string()))
|
||||||
|
)
|
||||||
|
|
||||||
|
# Should still have just one host after second join from it
|
||||||
|
yield self.inject_room_member(self.room, self.u_bob, Membership.JOIN)
|
||||||
|
|
||||||
|
self.assertEquals(
|
||||||
|
["test"],
|
||||||
|
(yield self.store.get_joined_hosts_for_room(self.room.to_string()))
|
||||||
|
)
|
||||||
|
|
||||||
|
# Should now have two hosts after join from other host
|
||||||
|
yield self.inject_room_member(self.room, self.u_charlie, Membership.JOIN)
|
||||||
|
|
||||||
|
self.assertEquals(
|
||||||
|
{"test", "elsewhere"},
|
||||||
|
set((yield
|
||||||
|
self.store.get_joined_hosts_for_room(self.room.to_string())
|
||||||
|
))
|
||||||
|
)
|
||||||
|
|
||||||
|
# Should still have both hosts
|
||||||
|
yield self.inject_room_member(self.room, self.u_alice, Membership.LEAVE)
|
||||||
|
|
||||||
|
self.assertEquals(
|
||||||
|
{"test", "elsewhere"},
|
||||||
|
set((yield
|
||||||
|
self.store.get_joined_hosts_for_room(self.room.to_string())
|
||||||
|
))
|
||||||
|
)
|
||||||
|
|
||||||
|
# Should have only one host after other leaves
|
||||||
|
yield self.inject_room_member(self.room, self.u_charlie, Membership.LEAVE)
|
||||||
|
|
||||||
|
self.assertEquals(
|
||||||
|
["test"],
|
||||||
|
(yield self.store.get_joined_hosts_for_room(self.room.to_string()))
|
||||||
|
)
|
||||||
|
|
Loading…
Reference in a new issue