Kerry
f963feab0f
Live location sharing - Aggregate beacon locations on beacons ( #2268 )
...
* add timestamp sorting util
Signed-off-by: Kerry Archibald <kerrya@element.io >
* basic wiring
Signed-off-by: Kerry Archibald <kerrya@element.io >
* quick handle for redacted beacons
Signed-off-by: Kerry Archibald <kerrya@element.io >
* remove fdescribe
Signed-off-by: Kerry Archibald <kerrya@element.io >
* test adding locations
Signed-off-by: Kerry Archibald <kerrya@element.io >
* tidy comments
Signed-off-by: Kerry Archibald <kerrya@element.io >
* test client
Signed-off-by: Kerry Archibald <kerrya@element.io >
* fix monitorLiveness for update
Signed-off-by: Kerry Archibald <kerrya@element.io >
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-04-08 12:26:05 +01:00
Kerry
781fdf4fdc
Live location sharing - update beacon_info implementation to latest MSC ( #2281 )
...
* remove M_BEACON_INFO_VARIABLE
Signed-off-by: Kerry Archibald <kerrya@element.io >
* create beacon_info events with non-variable event type
Signed-off-by: Kerry Archibald <kerrya@element.io >
* remove isBeaconInfoEventType
Signed-off-by: Kerry Archibald <kerrya@element.io >
* refer to msc3673 instead of msc3489
Signed-off-by: Kerry Archibald <kerrya@element.io >
* remove event type suffix
Signed-off-by: Kerry Archibald <kerrya@element.io >
* update beacon identifier to use state key
Signed-off-by: Kerry Archibald <kerrya@element.io >
* fix beacon spec
Signed-off-by: Kerry Archibald <kerrya@element.io >
* fix room-state tests
Signed-off-by: Kerry Archibald <kerrya@element.io >
* add beacon identifier
Signed-off-by: Kerry Archibald <kerrya@element.io >
* dont allow update to older beacon event
Signed-off-by: Kerry Archibald <kerrya@element.io >
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io >
* unnest beacon_info content
Signed-off-by: Kerry Archibald <kerrya@element.io >
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io >
* check redaction event id
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-04-08 10:50:06 +02:00
Kerry
71b7521f42
Live location sharing - handle redacted beacons ( #2269 )
...
* emit beacon destroy event on destroy
Signed-off-by: Kerry Archibald <kerrya@element.io >
* handle redacted beacon events in room-state
Signed-off-by: Kerry Archibald <kerrya@element.io >
* empty line
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-04-04 10:17:49 +02:00
Kerry
a6fe8797f0
Use beacon info event type as beacon identifier ( #2251 )
...
* use beacon info event type as beacon identifier
Signed-off-by: Kerry Archibald <kerrya@element.io >
* test cases
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-03-22 11:14:43 +01:00
Kerry
a3f5ec1ba2
reemit beacon events ( #2245 )
...
* reemit beacon events
Signed-off-by: Kerry Archibald <kerrya@element.io >
* use specific imports
Signed-off-by: Kerry Archibald <kerrya@element.io >
* Update src/models/room-state.ts
Co-authored-by: Travis Ralston <travisr@matrix.org >
Co-authored-by: Travis Ralston <travisr@matrix.org >
2022-03-18 08:56:53 +00:00
Kerry
18943d6519
emit aggregate room beacon liveness ( #2241 )
...
* emit aggregate room beacon liveness
Signed-off-by: Kerry Archibald <kerrya@element.io >
* tidy and comment
Signed-off-by: Kerry Archibald <kerrya@element.io >
* add export for models/beacon
Signed-off-by: Kerry Archibald <kerrya@element.io >
* add owner and roomId
Signed-off-by: Kerry Archibald <kerrya@element.io >
* copyright
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-03-16 08:54:13 +00:00
Kerry
c2fdb4478d
Live location sharing - create m.beacon_info events ( #2238 )
...
* add content helpers
Signed-off-by: Kerry Archibald <kerrya@element.io >
* stubbed Beacon class
Signed-off-by: Kerry Archibald <kerrya@element.io >
* beacon test utils
Signed-off-by: Kerry Archibald <kerrya@element.io >
* add beacon test utils
Signed-off-by: Kerry Archibald <kerrya@element.io >
* copyrights
Signed-off-by: Kerry Archibald <kerrya@element.io >
* add beacons to room state
Signed-off-by: Kerry Archibald <kerrya@element.io >
* tidy comments
Signed-off-by: Kerry Archibald <kerrya@element.io >
* unit test RoomState.setBeacon
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-03-15 10:31:32 +01:00
Kerry
57d71ccd0f
Move test-utils into a directory ( #2236 )
...
* move test-utils.js into directory
Signed-off-by: Kerry Archibald <kerrya@element.io >
* fix imports
Signed-off-by: Kerry Archibald <kerrya@element.io >
2022-03-14 14:55:11 +01:00
Travis Ralston
016e24472a
Send extensible events structure and support on-demand parsing ( #2091 )
...
* Parse extensible events on demand
* Decorate messages with MSC1767 when appropriate
We do this automatically to force a pool of messages in the wild we can use for testing.
* Include the SDK
* Appease linter and tests
* Change property name to appease linter
* Update SDK
2022-01-13 09:56:11 -07:00
Michael Telatynski
b1b7522b80
Fix tests by updating private field names and spies
2021-06-17 15:18:52 +01:00
Germain Souquet
5caf05cfa1
Apply new linting rules
2021-05-11 11:25:43 +01:00
Travis Ralston
95c2c1643e
Remove "source-map-support" from tests because it makes sourcemaps worse
...
Now that we're pointing at `src/` for tests, we can stop trying to load source maps from random places. With this dependency used, source maps are off by a few lines.
2019-12-17 15:45:15 -07:00
Travis Ralston
f952f6742f
Remove ancient "use strict" annotations
...
We don't need these anymore. Theoretically this commit could go to develop, but for safety it's going to `travis/sourcemaps` first.
2019-12-17 15:43:02 -07:00
Travis Ralston
034b8db070
Convert tests to ES6
...
The earlier commit, d3ce0cb82f , has most of the juicy details on this. In addition to d3ce's changes, we also:
* Use `TestClient` in many integration tests due to subtle behaviour changes in imports when switching to ES6. Namely the behaviour where setting the request function is less reliable in the way we did it, but `TestClient` is very reliable.
* We now use the Olm loader more often to avoid having to maintain so much duplicate code. This makes the imports slightly easier to read.
2019-12-17 15:16:37 -07:00
Michael Telatynski
fd58957b06
migrate to jest from mocha+expect+istanbul
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com >
2019-11-20 19:52:50 +00:00
J. Ryan Stinnett
761806c678
Add support for class properties
...
This enables compiler and linting features to allow class properties like we do
in the React SDK.
2019-05-13 13:52:37 +01:00
Bruno Windels
2ed694b041
remove supersedes OOB logic
2018-10-11 14:32:03 +02:00
David Baker
a0639a32c7
Revert "Revert "Don't rely on members to query if syncing user can post to room""
2018-09-06 11:47:40 +01:00
David Baker
04ad3d7c3c
Revert "Don't rely on members to query if syncing user can post to room"
2018-09-05 18:04:19 +01:00
Bruno Windels
8b00083bca
check power levels without relying on membership
...
as this might not be known for the syncing user.
instead, add a method to room which always knows the syncing user's membership
2018-09-05 12:36:53 +02:00
Bruno Windels
bb490faefe
fix lint
2018-08-15 11:59:40 +02:00
Bruno Windels
d8f673ed51
make sure invited count cache gets reset when updating member
2018-08-15 11:59:40 +02:00
Bruno Windels
6ce7170cf4
counts from summary api should override count members manually as members might not be complete
2018-08-15 11:59:40 +02:00
Bruno Windels
48c3dcc08a
fix lint & fix and add tests
2018-08-15 11:59:39 +02:00
Bruno Windels
df758b31b7
fix lint
2018-08-15 11:59:39 +02:00
Bruno Windels
198d2c780d
test that modifications to clone'd() room state dont affect the old
2018-08-15 11:59:39 +02:00
Bruno Windels
0234f11914
some tests for room member + state, and some fixes to make them pass
2018-08-15 11:59:39 +02:00
Bruno Windels
1c81a17298
Fix tests
...
getSentinelMember now does return a member (with just the userid) when there is no corresponding member yet.
With lazy loading it's perfectly possible the member is not available, and null breaks continuation in the timeline.
2018-08-15 11:59:39 +02:00
Bruno Windels
e3e48944e0
add test
2018-07-27 11:49:55 +02:00
Richard van der Hoff
bd226d94d8
Switch from jasmine to mocha + expect + lolex
...
Much of this transformation has been done automatically:
* add expect import to each file
* replace `not.to` with `toNot`
* replace `to[Not]Be{Undefined,Null}` with equivalents
* replace `jasmine.createSpy(...)` with `except.createSpy`, and `andCallFake`
with `andCall`
Also:
* replace `jasmine.createSpyObj` with manual alternatives
* replace `jasmine.Clock` with `lolex`
2017-02-08 14:32:37 +00:00
Richard van der Hoff
80d0aadbd0
Install source-map-support in each test
...
This makes exception traces use the source map, which is much more helpful when
debugging.
2017-02-07 22:57:09 +00:00
David Baker
423175f539
eslint --fix for dangley commas on function calls
2017-01-20 16:12:02 +00:00
David Baker
7bca05af64
eslint ---fix for prefer-const
2017-01-19 17:42:10 +00:00
Kegan Dougal
7ed65407e6
Pass through eslint --fix
2017-01-13 10:49:32 +00:00
David Baker
e057956ede
Add google eslint rules as a base
...
Remove some we don't care about. Set some other ones we do care
about but don't currently adhere to to warn. Set the max warnings
threshold to the current number of warnings, so we don't introduce
more of them. Fix a bunch of legit lint errors and add exceptions
to various places in the test code that does funny things with
'this'.
2017-01-12 14:35:58 +00:00
David Baker
88cc63e2a2
Add maySendEvent to match maySendStateEvent. Make them use the same function internally. Also add convenience maySendMessage. Also tests.
2016-03-23 15:10:51 +00:00
David Baker
f324e4c72f
lint
2016-03-03 17:48:23 +00:00
David Baker
9328a12ccb
Add maySendStateEvent method, ported from react-sdk (but fixed). Plus tests.
2016-03-03 17:44:27 +00:00
Kegan Dougal
8f16948430
Appease linters
2015-06-24 14:57:48 +01:00
Kegan Dougal
1b665c176a
Add RoomState UTs
2015-06-24 14:57:04 +01:00
Kegan Dougal
0bc9951f13
Add RoomState UT stubs.
2015-06-24 13:52:17 +01:00
Kegan Dougal
fc2c6f403d
Re-add power-level/typing UTs as RoomMember tests.
2015-06-10 17:19:56 +01:00
Kegan Dougal
5cf29ae1b1
Make RoomMember set its own properties, not RoomState.
...
Also make it clear which methods may fire events off using @fires. This
shifts a lot of RoomState logic to RoomMember.
2015-06-10 17:06:28 +01:00
Kegan Dougal
13462ad1aa
Add more Room and RoomState unit tests.
2015-06-09 16:07:44 +01:00
Kegan Dougal
a0bd25a6d2
Handle power levels and update RoomMember properties.
...
Add unit tests for RoomState.
2015-06-09 15:23:04 +01:00