Commit graph

39 commits

Author SHA1 Message Date
Michael Telatynski
c915288044 Respect m.space.parent relations if they hold valid permissions 2021-09-06 14:34:06 +01:00
Michael Telatynski
bbd420096b don't bother awaiting SpaceStore::setActiveSpace as it is no longer async 2021-08-31 17:03:43 +01:00
Michael Telatynski
3c436c9617 update setting naming to match style 2021-07-30 12:20:02 +01:00
Michael Telatynski
776435f620 Switch all-rooms toggle for spaces to non-feature settings key 2021-07-27 21:17:24 +01:00
Michael Telatynski
0a9d3302ba Fix home vs all rooms requiring app reload and change default to home
Consolidate ALL_ROOMS and HOME_SPACE storage
Fix behaviour when recalled room is no longer part of the target space
Improve tests
2021-07-27 21:11:47 +01:00
Michael Telatynski
ec173e74e6 Test & Refactor SpaceWatcher to allow all rooms/home change without needing reload 2021-07-27 20:15:40 +01:00
Michael Telatynski
755007cbee Conclude labs flags and write more tests 2021-07-27 14:39:14 +01:00
Michael Telatynski
de42a00ca4 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix/17686
 Conflicts:
	src/components/views/avatars/RoomAvatar.tsx
	test/stores/SpaceStore-test.ts
	test/test-utils.js
2021-07-19 16:47:31 +01:00
Michael Telatynski
316b21408d Fix tests 2021-07-15 10:59:52 +01:00
Michael Telatynski
04c923bd75 fix tests by including client field on the Room stub and stubbing getJoinedMemberCount 2021-07-06 11:35:56 +01:00
J. Ryan Stinnett
ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Michael Telatynski
9e20e5dfc4 mock new settings in tests 2021-06-16 09:14:07 +01:00
David Baker
31604c13c0 Lint the typescript tests
Turns out we hadn't told eslint to lint .ts in tests/

Also fix all the lint errors, including removing a use of assert that
had randomly crept in.
2021-06-04 16:52:50 +01:00
Michael Telatynski
90fa738734 Fix that one final pesky test 2021-05-07 11:22:10 +01:00
Michael Telatynski
f0e61e6286 short circuit automatic switch to related space behaviour and fix tests 2021-05-07 11:08:18 +01:00
Michael Telatynski
9d9dce7a91 update orphan room behaviour test to expect new home space behaviour 2021-05-07 10:48:55 +01:00
Michael Telatynski
203425c8de Test and fix space store wrongly treating room invites as space invites 2021-04-26 08:37:45 +01:00
Michael Telatynski
47c12a7d23 Add tests for rooms moving around the SpaceStore 2021-04-25 09:24:00 +01:00
Michael Telatynski
98851f8e64 Text space switching behaviour and fix invalid space edge case 2021-04-24 11:32:55 +01:00
Michael Telatynski
f85d3643ee Test and fix subspace invite receipt behaviour 2021-04-24 11:31:52 +01:00
Michael Telatynski
dd2a1d063a Write tests for spaces context switching behavious 2021-04-23 16:14:55 +01:00
Michael Telatynski
4446022327 Add automatic space switching tests 2021-04-23 14:45:22 +01:00
Michael Telatynski
c35678c64a Add yet more tests 2021-04-23 13:40:16 +01:00
Michael Telatynski
a3ca48b4da Write more space store tests 2021-04-23 12:19:38 +01:00
Michael Telatynski
a38419defb extend space tests some more 2021-04-23 11:20:26 +01:00
Michael Telatynski
1075756929 add more tests 2021-04-23 09:55:30 +01:00
Michael Telatynski
fba7465ad4 Initial SpaceStore tests work 2021-04-22 14:45:13 +01:00
Travis Ralston
54f3288dea Fix imports for tests
This doesn't fix the fact that someone called it "peg".
2020-01-09 17:23:27 -07:00
Michael Telatynski
802092bf9a All tests passing locally. We no longer need Chrome in buildkite 2019-12-17 11:53:18 +00:00
Michael Telatynski
e6d8487302 Fix more tests 2019-12-17 11:47:01 +00:00
Michael Telatynski
0041dae664 26 test failures to go :D 2019-12-16 11:55:01 +00:00
Michael Telatynski
6ad31fe023 30 test failures to go :D 2019-12-16 11:12:48 +00:00
Michael Telatynski
18f81d80db Initial jest stuff. Blocked on Babel 7 2019-12-13 13:43:48 +00:00
Michael Telatynski
d4d51dc61f Rip out the remainder of Bluebird 2019-11-18 10:03:05 +00:00
Richard van der Hoff
0254d2b3a2 q(...) -> Promise.resolve
```
find src test -name '*.js' | xargs perl -i -pe 's/\b[qQ]\(/Promise.resolve(/'
```
2017-07-12 18:05:08 +01:00
Richard van der Hoff
a06bd84213 replace imports of q with bluebird
update `package.json`

```
find src test -name '*.js' |
   xargs perl -i -pe 'if (/require\(.[qQ].\)/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'

find src test -name '*.js' |
   xargs perl -i -pe 'if (/import [qQ]/) { $_ = "import Promise from '\''bluebird'\'';\n"; }'
```
2017-07-12 18:05:08 +01:00
Luke Barnard
3218cae6e3 Expect to join by alias if given to RVS 2017-06-08 17:47:48 +01:00
Luke Barnard
7808994b71 Modify RVS test to wait until room loaded
This allows for the alias resolution to occur before a join is attempted. In theory, join_room could in future do an optional view_room-esque thing before attemping a join which would be less fragile than dispatching things in the right order.

Also, make sure the store indicates that it is not loading when a room ID has been used - no alias resolution need take place.
2017-06-02 09:22:48 +01:00
Luke Barnard
298c5e4df3 Implement a store for RoomView
This allows for a truely flux-y way of storing the currently viewed room, making some callbacks (like onRoomIdResolved) redundant and making sure that the currently viewed room (ID) is only stored in one place as opposed to the previous many places.

This was required for the `join_room` action which can be dispatched to join the currently viewed room.

Another change was to introduce `LifeCycleStore` which is a start at encorporating state related to the lifecycle of the app into a flux store. Currently it only contains an action which will be dispatched when the sync state has become PREPARED. This was necessary to do a deferred dispatch of `join_room` following the registration of a PWLU (PassWord-Less User).

The following actions are introduced:
 - RoomViewStore:
    - `view_room`: dispatch to change the currently viewed room ID
    - `join_room`: dispatch to join the currently viewed room
 - LifecycleStore:
    - `do_after_sync_prepared`: dispatch to store an action which will be dispatched when `sync_state` is dispatched with `state = 'PREPARED'`
 - MatrixChat:
    - `sync_state`: dispatched when the sync state changes. Ideally there'd be a SyncStateStore that emitted an `update` upon receiving this, but for now the `LifecycleStore` will listen for `sync_state` directly.
2017-05-24 16:56:13 +01:00