1GET /register yields a set of flows
2POST /register can create a user
3POST /register downcases capitals in usernames
4POST /register rejects registration of usernames with '!'
5POST /register rejects registration of usernames with '"'
6POST /register rejects registration of usernames with ':'
7POST /register rejects registration of usernames with '?'
8POST /register rejects registration of usernames with '\'
9POST /register rejects registration of usernames with '@'
10POST /register rejects registration of usernames with '['
11POST /register rejects registration of usernames with ']'
12POST /register rejects registration of usernames with '{'
13POST /register rejects registration of usernames with '|'
14POST /register rejects registration of usernames with '}'
15POST /register rejects registration of usernames with '£'
16POST /register rejects registration of usernames with 'é'
17POST /register rejects registration of usernames with '\n'
18POST /register rejects registration of usernames with '''
19POST /register allows registration of usernames with 'q'
20POST /register allows registration of usernames with '3'
21POST /register allows registration of usernames with '.'
22POST /register allows registration of usernames with '_'
23POST /register allows registration of usernames with '='
24POST /register allows registration of usernames with '-'
25POST /register allows registration of usernames with '/'
26GET /login yields a set of flows
27POST /login can log in as a user
28POST /login returns the same device_id as that in the request
29POST /login can log in as a user with just the local part of the id
30POST /login as non-existing user is rejected
31POST /login wrong password is rejected
32GET /events initially
33GET /initialSync initially
34Version responds 200 OK with valid structure
35PUT /profile/:user_id/displayname sets my name
36GET /profile/:user_id/displayname publicly accessible
37PUT /profile/:user_id/avatar_url sets my avatar
38GET /profile/:user_id/avatar_url publicly accessible
39GET /device/{deviceId} gives a 404 for unknown devices
40PUT /device/{deviceId} gives a 404 for unknown devices
41GET /device/{deviceId}
42GET /devices
43PUT /device/{deviceId} updates device fields
44DELETE /device/{deviceId}
45DELETE /device/{deviceId} requires UI auth user to match device owner
46DELETE /device/{deviceId} with no body gives a 401
47POST /createRoom makes a public room
48POST /createRoom makes a private room
49POST /createRoom makes a private room with invites
50POST /createRoom makes a room with a name
51POST /createRoom makes a room with a topic
52Can /sync newly created room
53GET /rooms/:room_id/state/m.room.member/:user_id fetches my membership
54GET /rooms/:room_id/state/m.room.power_levels fetches powerlevels
55POST /join/:room_alias can join a room
56POST /join/:room_id can join a room
57POST /join/:room_id can join a room with custom content
58POST /join/:room_alias can join a room with custom content
59POST /rooms/:room_id/join can join a room
60POST /rooms/:room_id/leave can leave a room
61POST /rooms/:room_id/invite can send an invite
62POST /rooms/:room_id/ban can ban a user
63POST /rooms/:room_id/send/:event_type sends a message
64PUT /rooms/:room_id/send/:event_type/:txn_id sends a message
65PUT /rooms/:room_id/send/:event_type/:txn_id deduplicates the same txn id
66GET /rooms/:room_id/state/m.room.power_levels can fetch levels
67PUT /rooms/:room_id/state/m.room.power_levels can set levels
68PUT power_levels should not explode if the old power levels were empty
69GET /rooms/:room_id/state/m.room.member/:user_id?format=event fetches my membership event
70GET /rooms/:room_id/joined_members fetches my membership
71Both GET and PUT work
72POST /rooms/:room_id/read_markers can create read marker
73User signups are forbidden from starting with '_'
74Request to logout with invalid an access token is rejected
75Request to logout without an access token is rejected
76Room creation reports m.room.create to myself
77Room creation reports m.room.member to myself
78Outbound federation rejects send_join responses with no m.room.create event
79Outbound federation rejects m.room.create events with an unknown room version
80Invited user can see room metadata
81# Blacklisted because these tests call /r0/events which we don't implement
82# New room members see their own join event
83# Existing members see new members' join events
84setting 'm.room.power_levels' respects room powerlevel
85Unprivileged users can set m.room.topic if it only needs level 0
86Users cannot set ban powerlevel higher than their own
87Users cannot set kick powerlevel higher than their own
88Users cannot set redact powerlevel higher than their own
89Can get rooms/{roomId}/members for a departed room (SPEC-216)
903pid invite join with wrong but valid signature are rejected
913pid invite join valid signature but revoked keys are rejected
923pid invite join valid signature but unreachable ID server are rejected
93Room members can join a room with an overridden displayname
94Real non-joined user cannot call /events on shared room
95Real non-joined user cannot call /events on invited room
96Real non-joined user cannot call /events on joined room
97Real non-joined user cannot call /events on default room
98Real non-joined users can get state for world_readable rooms
99Real non-joined users can get individual state for world_readable rooms
100#Real non-joined users can get individual state for world_readable rooms after leaving
101Real non-joined users cannot send messages to guest_access rooms if not joined
102Can't forget room you're still in
103Can get rooms/{roomId}/members
104Can create filter
105Can download filter
106Lazy loading parameters in the filter are strictly boolean
107Can sync
108Can sync a joined room
109Newly joined room is included in an incremental sync
110User is offline if they set_presence=offline in their sync
111Changes to state are included in an incremental sync
112A change to displayname should appear in incremental /sync
113Current state appears in timeline in private history
114Current state appears in timeline in private history with many messages before
115Rooms a user is invited to appear in an initial sync
116Rooms a user is invited to appear in an incremental sync
117Sync can be polled for updates
118Sync is woken up for leaves
119Newly left rooms appear in the leave section of incremental sync
120Rooms can be created with an initial invite list (SYN-205)
121We should see our own leave event, even if history_visibility is restricted (SYN-662)
122We should see our own leave event when rejecting an invite, even if history_visibility is restricted (riot-web/3462)
123Newly left rooms appear in the leave section of gapped sync
124Previously left rooms don't appear in the leave section of sync
125Left rooms appear in the leave section of full state sync
126Newly banned rooms appear in the leave section of incremental sync
127Newly banned rooms appear in the leave section of incremental sync
128local user can join room with version 1
129User can invite local user to room with version 1
130Can upload device keys
131Should reject keys claiming to belong to a different user
132Can query device keys using POST
133Can query remote device keys using POST
134Can query specific device keys using POST
135query for user with no keys returns empty key dict
136Can claim one time key using POST
137Can claim remote one time key using POST
138Local device key changes appear in v2 /sync
139New users appear in /keys/changes
140Local delete device changes appear in v2 /sync
141Local new device changes appear in v2 /sync
142Local update device changes appear in v2 /sync
143Get left notifs for other users in sync and /keys/changes when user leaves
144Local device key changes get to remote servers
145Server correctly handles incoming m.device_list_update
146If remote user leaves room, changes device and rejoins we see update in sync
147If remote user leaves room, changes device and rejoins we see update in /keys/changes
148If remote user leaves room we no longer receive device updates
149If a device list update goes missing, the server resyncs on the next one
150Server correctly resyncs when client query keys and there is no remote cache
151Server correctly resyncs when server leaves and rejoins a room
152Device list doesn't change if remote server is down
153Can add account data
154Can add account data to room
155Can get account data without syncing
156Can get room account data without syncing
157#Latest account data appears in v2 /sync
158New account data appears in incremental v2 /sync
159Checking local federation server
160Inbound federation can query profile data
161Outbound federation can send room-join requests
162Outbound federation can send events
163# SyTest currently only implements the v1 endpoints for /send_join and /send_leave,
164# whereas Dendrite only supports the v2 endpoints for those, so let's ignore this
165# test for now.
166#Inbound federation can backfill events
167# SyTest currently only implements the v1 endpoints for /send_join and /send_leave,
168# whereas Dendrite only supports the v2 endpoints for those, so let's ignore this
169# test for now.
170#Backfill checks the events requested belong to the room
171Can upload without a file name
172Can download without a file name locally
173Can upload with ASCII file name
174Can send image in room message
175AS cannot create users outside its own namespace
176Regular users cannot register within the AS namespace
177AS can't set displayname for random users
178AS user (not ghost) can join room without registering, with user_id query param
179Changing the actions of an unknown default rule fails with 404
180Changing the actions of an unknown rule fails with 404
181Enabling an unknown default rule fails with 404
182Trying to get push rules with unknown rule_id fails with 404
183Events come down the correct room
184# SyTest currently only implements the v1 endpoints for /send_join and /send_leave,
185# whereas Dendrite only supports the v2 endpoints for those, so let's ignore this
186# test for now.
187#Inbound federation can receive v1 room-join requests
188Typing events appear in initial sync
189Typing events appear in incremental sync
190Typing events appear in gapped sync
191Inbound federation of state requires event_id as a mandatory paramater
192Inbound federation of state_ids requires event_id as a mandatory paramater
193POST /register returns the same device_id as that in the request
194POST /createRoom with creation content
195User can create and send/receive messages in a room with version 1
196POST /createRoom ignores attempts to set the room version via creation_content
197Inbound federation rejects remote attempts to join local users to rooms
198Inbound federation rejects remote attempts to kick local users to rooms
199Full state sync includes joined rooms
200A message sent after an initial sync appears in the timeline of an incremental sync.
201Can add tag
202Can remove tag
203Can list tags for a room
204Tags appear in an initial v2 /sync
205Newly updated tags appear in an incremental v2 /sync
206Deleted tags appear in an incremental v2 /sync
207/event/ on non world readable room does not work
208Outbound federation can query profile data
209/event/ on joined room works
210/event/ does not allow access to events before the user joined
211Federation key API allows unsigned requests for keys
212GET /publicRooms lists rooms
213GET /publicRooms includes avatar URLs
214Can paginate public room list
215GET /publicRooms lists newly-created room
216Name/topic keys are correct
217GET /directory/room/:room_alias yields room ID
218PUT /directory/room/:room_alias creates alias
219Room aliases can contain Unicode
220Creators can delete alias
221Regular users cannot create room aliases within the AS namespace
222Deleting a non-existent alias should return a 404
223Users can't delete other's aliases
224Outbound federation can query room alias directory
225Can deactivate account
226Can't deactivate account with wrong password
227After deactivating account, can't log in with password
228After deactivating account, can't log in with an email
229Remote room alias queries can handle Unicode
230Newly joined room is included in an incremental sync after invite
231Inbound /v1/make_join rejects remote attempts to join local users to rooms
232Local room members see posted message events
233Fetching eventstream a second time doesn't yield the message again
234Local non-members don't see posted message events
235Remote room members also see posted message events
236Lazy loading parameters in the filter are strictly boolean
237remote user can join room with version 1
238Inbound federation can query room alias directory
239Outbound federation can query v2 /send_join
240Inbound federation can receive v2 /send_join
241Message history can be paginated
242Getting messages going forward is limited for a departed room (SPEC-216)
243Backfill works correctly with history visibility set to joined
244Guest user cannot call /events globally
245Guest users can join guest_access rooms
246Guest user can set display names
247Guest user cannot upgrade other users
248Guest non-joined user cannot call /events on shared room
249Guest non-joined user cannot call /events on invited room
250Guest non-joined user cannot call /events on joined room
251Guest non-joined user cannot call /events on default room
252Guest non-joined users can get state for world_readable rooms
253Guest non-joined users can get individual state for world_readable rooms
254Guest non-joined users cannot room initalSync for non-world_readable rooms
255Guest non-joined users can get individual state for world_readable rooms after leaving
256Guest non-joined users cannot send messages to guest_access rooms if not joined
257Real non-joined users cannot room initalSync for non-world_readable rooms
258Push rules come down in an initial /sync
259Regular users can add and delete aliases in the default room configuration
260GET /r0/capabilities is not public
261GET /joined_rooms lists newly-created room
262/joined_rooms returns only joined rooms
263Message history can be paginated over federation
264GET /rooms/:room_id/messages returns a message
265Remote user can backfill in a room with version 1
266POST /createRoom creates a room with the given version
267POST /createRoom rejects attempts to create rooms with numeric versions
268POST /createRoom rejects attempts to create rooms with unknown versions
269Regular users can add and delete aliases when m.room.aliases is restricted
270User can create and send/receive messages in a room with version 2
271local user can join room with version 2
272remote user can join room with version 2
273User can invite local user to room with version 2
274Remote user can backfill in a room with version 2
275Inbound federation accepts attempts to join v2 rooms from servers with support
276Outbound federation can send invites via v2 API
277Outbound federation can send invites via v1 API
278Inbound federation can receive invites via v1 API
279Inbound federation can receive invites via v2 API
280User can create and send/receive messages in a room with version 3
281local user can join room with version 3
282Remote user can backfill in a room with version 3
283User can create and send/receive messages in a room with version 4
284local user can join room with version 4
285remote user can join room with version 3
286remote user can join room with version 4
287Remote user can backfill in a room with version 4
288# We don't support ignores yet, so ignore this for now - ha ha.
289# Ignore invite in incremental sync
290Outbound federation can send invites via v2 API
291User can invite local user to room with version 3
292User can invite local user to room with version 4
293A pair of servers can establish a join in a v2 room
294Can logout all devices
295State from remote users is included in the timeline in an incremental sync
296User can invite remote user to room with version 1
297User can invite remote user to room with version 2
298User can invite remote user to room with version 3
299User can invite remote user to room with version 4
300User can create and send/receive messages in a room with version 5
301local user can join room with version 5
302User can invite local user to room with version 5
303remote user can join room with version 5
304User can invite remote user to room with version 5
305Remote user can backfill in a room with version 5
306Inbound federation can receive v1 /send_join
307Inbound federation can get state for a room
308Inbound federation of state requires event_id as a mandatory paramater
309Inbound federation can get state_ids for a room
310Inbound federation of state_ids requires event_id as a mandatory paramater
311Federation rejects inbound events where the prev_events cannot be found
312Alternative server names do not cause a routing loop
313Events whose auth_events are in the wrong room do not mess up the room state
314Inbound federation can return events
315Inbound federation can return missing events for world_readable visibility
316Inbound federation can return missing events for invite visibility
317Inbound federation can get public room list
318POST /rooms/:room_id/redact/:event_id as power user redacts message
319POST /rooms/:room_id/redact/:event_id as original message sender redacts message
320POST /rooms/:room_id/redact/:event_id as random user does not redact message
321POST /redact disallows redaction of event in different room
322An event which redacts itself should be ignored
323A pair of events which redact each other should be ignored
324Redaction of a redaction redacts the redaction reason
325An event which redacts an event in a different room should be ignored
326Can receive redactions from regular users over federation in room version 1
327Can receive redactions from regular users over federation in room version 2
328Can receive redactions from regular users over federation in room version 3
329Can receive redactions from regular users over federation in room version 4
330Can receive redactions from regular users over federation in room version 5
331Can receive redactions from regular users over federation in room version 6
332Outbound federation can backfill events
333Inbound federation can backfill events
334Backfill checks the events requested belong to the room
335Backfilled events whose prev_events are in a different room do not allow cross-room back-pagination
336Outbound federation can request missing events
337New room members see their own join event
338Existing members see new members' join events
339Inbound federation can receive events
340Inbound federation can receive redacted events
341Can logout current device
342Can send a message directly to a device using PUT /sendToDevice
343Can recv a device message using /sync
344Can recv device messages until they are acknowledged
345Device messages with the same txn_id are deduplicated
346Device messages wake up /sync
347Can recv device messages over federation
348Device messages over federation wake up /sync
349Can send messages with a wildcard device id
350Can send messages with a wildcard device id to two devices
351Wildcard device messages wake up /sync
352Wildcard device messages over federation wake up /sync
353Can send a to-device message to two users which both receive it using /sync
354User can create and send/receive messages in a room with version 6
355local user can join room with version 6
356User can invite local user to room with version 6
357remote user can join room with version 6
358User can invite remote user to room with version 6
359Remote user can backfill in a room with version 6
360Inbound: send_join rejects invalid JSON for room version 6
361Outbound federation rejects backfill containing invalid JSON for events in room version 6
362Invalid JSON integers
363Invalid JSON special values
364Invalid JSON floats
365Outbound federation will ignore a missing event with bad JSON for room version 6
366Server correctly handles transactions that break edu limits
367Server rejects invalid JSON in a version 6 room
368Can download without a file name over federation
369POST /media/r0/upload can create an upload
370GET /media/r0/download can fetch the value again
371Remote users can join room by alias
372Alias creators can delete alias with no ops
373Alias creators can delete canonical alias with no ops
374Room members can override their displayname on a room-specific basis
375displayname updates affect room member events
376avatar_url updates affect room member events
377Real non-joined users can get individual state for world_readable rooms after leaving
378Can upload with Unicode file name
379POSTed media can be thumbnailed
380Remote media can be thumbnailed
381Can download with Unicode file name locally
382Can download file 'ascii'
383Can download file 'name with spaces'
384Can download file 'name;with;semicolons'
385Can download specifying a different ASCII file name
386Can download with Unicode file name over federation
387Can download specifying a different Unicode file name
388Inbound /v1/send_join rejects joins from other servers
389Outbound federation can query v1 /send_join
390Inbound /v1/send_join rejects incorrectly-signed joins
391POST /rooms/:room_id/state/m.room.name sets name
392GET /rooms/:room_id/state/m.room.name gets name
393POST /rooms/:room_id/state/m.room.topic sets topic
394GET /rooms/:room_id/state/m.room.topic gets topic
395GET /rooms/:room_id/state fetches entire room state
396Setting room topic reports m.room.topic to myself
397setting 'm.room.name' respects room powerlevel
398Syncing a new room with a large timeline limit isn't limited
399Getting state checks the events requested belong to the room
400Getting state IDs checks the events requested belong to the room
401Can invite users to invite-only rooms
402Uninvited users cannot join the room
403Users cannot invite themselves to a room
404Users cannot invite a user that is already in the room
405Invited user can reject invite
406PUT /rooms/:room_id/typing/:user_id sets typing notification
407Typing notification sent to local room members
408Typing notifications also sent to remote room members
409Typing can be explicitly stopped
410Banned user is kicked and may not rejoin until unbanned
411Inbound federation rejects attempts to join v1 rooms from servers without v1 support
412Inbound federation rejects attempts to join v2 rooms from servers lacking version support
413Inbound federation rejects attempts to join v2 rooms from servers only supporting v1
414Outbound federation passes make_join failures through to the client
415Outbound federation correctly handles unsupported room versions
416Remote users may not join unfederated rooms
417Non-numeric ports in server names are rejected
418Invited user can reject invite over federation
419Invited user can reject invite over federation for empty room
420Invited user can reject invite over federation several times
421Can reject invites over federation for rooms with version 1
422Can reject invites over federation for rooms with version 2
423Can reject invites over federation for rooms with version 3
424Can reject invites over federation for rooms with version 4
425Can reject invites over federation for rooms with version 5
426Can reject invites over federation for rooms with version 6
427Event size limits
428Can sync a room with a single message
429Can sync a room with a message with a transaction id
430A full_state incremental update returns only recent timeline
431A prev_batch token can be used in the v1 messages API
432We don't send redundant membership state across incremental syncs by default
433Typing notifications don't leak
434Users cannot kick users from a room they are not in
435User appears in user directory
436User directory correctly update on display name change
437User in shared private room does appear in user directory
438User in dir while user still shares private rooms
439Can get 'm.room.name' state for a departed room (SPEC-216)
440Banned servers cannot send events
441Banned servers cannot /make_join
442Banned servers cannot /send_join
443Banned servers cannot /make_leave
444Banned servers cannot /send_leave
445Banned servers cannot /invite
446Banned servers cannot get room state
447Banned servers cannot /event_auth
448Banned servers cannot get missing events
449Banned servers cannot get room state ids
450Banned servers cannot backfill
451Inbound /v1/send_leave rejects leaves from other servers
452Guest users can accept invites to private rooms over federation
453AS user (not ghost) can join room without registering
454Can search public room list
455Can get remote public room list
456Asking for a remote rooms list, but supplying the local server's name, returns the local rooms list
457After changing password, can't log in with old password
458After changing password, can log in with new password
459After changing password, existing session still works
460After changing password, different sessions can optionally be kept
461After changing password, a different session no longer works by default
462Read markers appear in incremental v2 /sync
463Read markers appear in initial v2 /sync
464Read markers can be updated
465Local users can peek into world_readable rooms by room ID
466We can't peek into rooms with shared history_visibility
467We can't peek into rooms with invited history_visibility
468We can't peek into rooms with joined history_visibility
469Local users can peek by room alias
470Peeked rooms only turn up in the sync for the device who peeked them
471Room state at a rejected message event is the same as its predecessor
472Room state at a rejected state event is the same as its predecessor
473Inbound federation correctly soft fails events
474Inbound federation accepts a second soft-failed event
475Federation key API can act as a notary server via a POST request
476Federation key API can act as a notary server via a GET request
477Inbound /make_join rejects attempts to join rooms where all users have left
478Inbound federation rejects invites which include invalid JSON for room version 6
479Inbound federation rejects invite rejections which include invalid JSON for room version 6
480GET /capabilities is present and well formed for registered user
481m.room.history_visibility == "joined" allows/forbids appropriately for Guest users
482m.room.history_visibility == "joined" allows/forbids appropriately for Real users
483POST rejects invalid utf-8 in JSON
484Users cannot kick users who have already left a room
485Event with an invalid signature in the send_join response should not cause room join to fail
486Inbound federation rejects typing notifications from wrong remote
487POST /rooms/:room_id/receipt can create receipts
488Receipts must be m.read
489Read receipts appear in initial v2 /sync
490New read receipts appear in incremental v2 /sync
491Outbound federation sends receipts
492Inbound federation rejects receipts from wrong remote
493Should not be able to take over the room by pretending there is no PL event
494Can get rooms/{roomId}/state for a departed room (SPEC-216)
495Users cannot set notifications powerlevel higher than their own
496Forgetting room does not show up in v2 /sync
497Can forget room you've been kicked from
498/whois
499/joined_members return joined members
500A next_batch token can be used in the v1 messages API
501Users receive device_list updates for their own devices
502m.room.history_visibility == "world_readable" allows/forbids appropriately for Guest users
503m.room.history_visibility == "world_readable" allows/forbids appropriately for Real users
504State is included in the timeline in the initial sync
505State from remote users is included in the state in the initial sync
506Changes to state are included in an gapped incremental sync
507A full_state incremental update returns all state
508Can pass a JSON filter as a query parameter
509Local room members can get room messages
510Remote room members can get room messages
511Guest users can send messages to guest_access rooms if joined
512AS can create a user
513AS can create a user with an underscore
514AS can create a user with inhibit_login
515AS can set avatar for ghosted users
516AS can set displayname for ghosted users
517Ghost user must register before joining room
518Inviting an AS-hosted user asks the AS server
519Can generate a openid access_token that can be exchanged for information about a user
520Invalid openid access tokens are rejected
521Requests to userinfo without access tokens are rejected
522'ban' event respects room powerlevel
523Non-present room members cannot ban others
524POST /_synapse/admin/v1/register with shared secret
525POST /_synapse/admin/v1/register admin with shared secret
526POST /_synapse/admin/v1/register with shared secret downcases capitals
527POST /_synapse/admin/v1/register with shared secret disallows symbols
528Membership event with an invalid displayname in the send_join response should not cause room join to fail
529Inbound federation rejects incorrectly-signed invite rejections
530Inbound federation can receive invite rejections
531Inbound federation can receive invite and reject when remote replies with a 403
532Inbound federation can receive invite and reject when remote replies with a 500
533Inbound federation can receive invite and reject when remote is unreachable
534Remote servers cannot set power levels in rooms without existing powerlevels
535Remote servers should reject attempts by non-creators to set the power levels
536Federation handles empty auth_events in state_ids sanely
537Key notary server should return an expired key if it can't find any others
538Key notary server must not overwrite a valid key with a spurious result from the origin server
539GET /rooms/:room_id/aliases lists aliases
540Only room members can list aliases of a room
541Users with sufficient power-level can delete other's aliases
542Can create backup version
543Can update backup version
544Responds correctly when backup is empty
545Can backup keys
546Can update keys with better versions
547Will not update keys with worse versions
548Will not back up to an old backup version
549Can create more than 10 backup versions
550Can delete backup
551Deleted & recreated backups are empty
552Can upload self-signing keys
553Fails to upload self-signing keys with no auth
554Fails to upload self-signing key without master key
555can fetch self-signing keys over federation
556Changing master key notifies local users
557Changing user-signing key notifies local users
558Inbound federation correctly handles soft failed events as extremities
559User can create and send/receive messages in a room with version 7
560local user can join room with version 7
561User can invite local user to room with version 7
562remote user can join room with version 7
563User can invite remote user to room with version 7
564Remote user can backfill in a room with version 7
565Can reject invites over federation for rooms with version 7
566Can receive redactions from regular users over federation in room version 7
567Federation publicRoom Name/topic keys are correct
568Remote invited user can see room metadata
569Can re-join room if re-invited
570A prev_batch token from incremental sync can be used in the v1 messages API
571Inbound federation rejects invites which are not signed by the sender
572Invited user can reject invite over federation several times
573Test that we can be reinvited to a room we created
574User can create and send/receive messages in a room with version 8
575local user can join room with version 8
576User can invite local user to room with version 8
577remote user can join room with version 8
578User can invite remote user to room with version 8
579Remote user can backfill in a room with version 8
580Can reject invites over federation for rooms with version 8
581Can receive redactions from regular users over federation in room version 8
582User can create and send/receive messages in a room with version 9
583local user can join room with version 9
584User can invite local user to room with version 9
585remote user can join room with version 9
586User can invite remote user to room with version 9
587Remote user can backfill in a room with version 9
588Can reject invites over federation for rooms with version 9
589Can receive redactions from regular users over federation in room version 9
590