Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit c353239

Browse files
committed
Fix broken tests but not mocking the entire datastore object.
1 parent effb01c commit c353239

File tree

1 file changed

+14
-34
lines changed

1 file changed

+14
-34
lines changed

tests/handlers/test_typing.py

Lines changed: 14 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -65,26 +65,6 @@ def make_homeserver(self, reactor, clock):
6565
mock_federation_client = Mock(spec=["put_json"])
6666
mock_federation_client.put_json.return_value = defer.succeed((200, "OK"))
6767

68-
datastores = Mock()
69-
datastores.main = Mock(
70-
spec=[
71-
# Bits that Federation needs
72-
"prep_send_transaction",
73-
"delivered_txn",
74-
"get_received_txn_response",
75-
"set_received_txn_response",
76-
"get_destination_last_successful_stream_ordering",
77-
"get_destination_retry_timings",
78-
"get_devices_by_remote",
79-
"maybe_store_room_on_invite",
80-
# Bits that user_directory needs
81-
"get_user_directory_stream_pos",
82-
"get_current_state_deltas",
83-
"get_device_updates_by_remote",
84-
"get_room_max_stream_ordering",
85-
]
86-
)
87-
8868
# the tests assume that we are starting at unix time 1000
8969
reactor.pump((1000,))
9070

@@ -95,8 +75,6 @@ def make_homeserver(self, reactor, clock):
9575
replication_streams={},
9676
)
9777

98-
hs.datastores = datastores
99-
10078
return hs
10179

10280
def prepare(self, reactor, clock, hs):
@@ -114,16 +92,16 @@ def prepare(self, reactor, clock, hs):
11492
"retry_interval": 0,
11593
"failure_ts": None,
11694
}
117-
self.datastore.get_destination_retry_timings.return_value = defer.succeed(
118-
retry_timings_res
95+
self.datastore.get_destination_retry_timings = Mock(
96+
return_value=defer.succeed(retry_timings_res)
11997
)
12098

121-
self.datastore.get_device_updates_by_remote.return_value = make_awaitable(
122-
(0, [])
99+
self.datastore.get_device_updates_by_remote = Mock(
100+
return_value=make_awaitable((0, []))
123101
)
124102

125-
self.datastore.get_destination_last_successful_stream_ordering.return_value = make_awaitable(
126-
None
103+
self.datastore.get_destination_last_successful_stream_ordering = Mock(
104+
return_value=make_awaitable(None)
127105
)
128106

129107
def get_received_txn_response(*args):
@@ -145,17 +123,19 @@ def get_joined_hosts_for_room(room_id):
145123

146124
self.datastore.get_joined_hosts_for_room = get_joined_hosts_for_room
147125

148-
def get_users_in_room(room_id):
149-
return defer.succeed({str(u) for u in self.room_members})
126+
async def get_users_in_room(room_id):
127+
return {str(u) for u in self.room_members}
150128

151129
self.datastore.get_users_in_room = get_users_in_room
152130

153-
self.datastore.get_user_directory_stream_pos.side_effect = (
154-
# we deliberately return a non-None stream pos to avoid doing an initial_spam
155-
lambda: make_awaitable(1)
131+
self.datastore.get_user_directory_stream_pos = Mock(
132+
side_effect=(
133+
# we deliberately return a non-None stream pos to avoid doing an initial_spam
134+
lambda: make_awaitable(1)
135+
)
156136
)
157137

158-
self.datastore.get_current_state_deltas.return_value = (0, None)
138+
self.datastore.get_current_state_deltas = Mock(return_value=(0, None))
159139

160140
self.datastore.get_to_device_stream_token = lambda: 0
161141
self.datastore.get_new_device_msgs_for_remote = lambda *args, **kargs: make_awaitable(

0 commit comments

Comments
 (0)