Commit Graph

38 Commits

Author SHA1 Message Date
Andrea Spacca
1168bcf7ff CR fixes 2020-12-22 17:12:21 +01:00
Galen Abell
c13bd1329b tests: Don't use keyring during tests
Many systems don't have a keyring configured for DBus by default, which
requires extra setup in order to run the proxy tests successfully.
2020-08-14 11:51:49 +02:00
Damir Jelić
bf8bded354 tests: Don't use the loop argument for janus queues. 2020-04-29 16:48:43 +02:00
Damir Jelić
d25989cfd7 store: Add methods to store media info in the store. 2020-02-20 13:14:47 +01:00
Damir Jelić
01dd31eec2 proxy_test: Remove the deprecated encoding argument. 2020-02-20 13:08:55 +01:00
Damir Jelić
a4b826a92c tests: Test the to-device event handling on the client sync stream. 2019-12-19 16:02:31 +01:00
Damir Jelić
c8b31fce2f tests: Format the pan client test. 2019-12-19 16:02:18 +01:00
Damir Jelić
5c3753a6e1 client: Add support for the Sqlite Queue database from peewee. 2019-07-22 16:21:54 +02:00
Damir Jelić
8c0b1f53df tests: Add a test for history fetching resumption. 2019-07-22 11:31:52 +02:00
Damir Jelić
1a8f28b90a tests: Skip test that require tantivy. 2019-07-12 15:38:04 +02:00
Damir Jelić
b7cc1d60f3 tests: Fix a typo in the fixtures. 2019-07-12 15:37:35 +02:00
Damir Jelić
8c831cee1e tests: Rename a test with a duplicate name. 2019-07-12 10:55:20 +02:00
Damir Jelić
a9b00dfa37 tests: Test fetcher task creation and handling. 2019-07-04 14:58:30 +02:00
Damir Jelić
25f284f8de tests: Improve the pan client test. 2019-07-04 14:58:15 +02:00
Damir Jelić
c17a737c42 tests: Add initial pan client tests. 2019-07-03 17:49:45 +02:00
Damir Jelić
f2415738f3 ui: Don't load the devices from the store.
The device list in the UI thread is replicated so we can show UI clients
the list without the need for a lock.

The previous implementation relied on loading and reloading of the device
list from the store every time an event changed either the devices or their
trust state.

This leads to a couple of ineficiencies leading to timeouts while
waiting on the database lock if a user has a large number of devices.

The new implementation never loads devices in the UI thread from the
database, they get passed through the thread queue by the main thread
which already holds them in memory.
2019-07-01 18:19:30 +02:00
Damir Jelić
9308dfec3f tests: Test that we're sending out user updates from the daemon. 2019-06-19 15:55:40 +02:00
Damir Jelić
dae6084919 tests: Check if the proxy uploaded keys. 2019-06-19 13:38:04 +02:00
Damir Jelić
531d686d8f pantalaimon: Run isort. 2019-06-19 12:07:56 +02:00
Damir Jelić
1311dbdef0 tests: Make the indexstore test async. 2019-06-19 12:01:11 +02:00
Damir Jelić
42e363fafc tests: Test pan client syncs. 2019-06-19 11:57:01 +02:00
Damir Jelić
92267f9fc9 tests: Add initial proxy_tests. 2019-06-19 11:22:47 +02:00
Damir Jelić
315c4bb6f7 tests: Add fixtures for proxydaemon tests. 2019-06-19 11:22:11 +02:00
Damir Jelić
3a1b001244 index: Rewrite the search logic.
This patch moves all the indexing, event storing and searching into a
separate class.

The index and message store are now represented as a single class and
messages are indexed and stored atomically now which should minimize the
chance of store/index inconsistencies.

Messages are now loaded from the store as a single SQL query and the
context for the messages is as well loaded from the store instead of
fetched from the server.

The room state and start/end tokens for the context aren't currently
loaded.
2019-06-14 14:53:25 +02:00
Damir Jelić
b4e60b603a client: Store the history fetcher tasks to the db. 2019-06-12 15:39:08 +02:00
Damir Jelić
383f197e58 client: Store and load sync tokens. 2019-06-11 16:11:53 +02:00
Damir Jelić
a164924b28 tests: Fix the event searching tests. 2019-06-10 16:48:40 +02:00
Damir Jelić
725c043e87 pantalaimon: Initial search support.
This patch adds support for the Matrix search API endpoint.

Events are stored in the pan sqlite database while the indexing is
handled by tanvity.

An tantivy index is created for each pan user. Currently only ordering
by ranking is supported, and all the search options are ignored for now.
2019-06-06 14:25:14 +02:00
Damir Jelić
e5e3f361c2 tests: Remove dbus tests.
The dbus tests require system packages on travis but that limits us to
using the system provided python version which is 3.4 currently.
2019-05-23 15:25:08 +02:00
Damir Jelić
212baad49e store: Remove unused client info storing functionality. 2019-05-21 16:55:07 +02:00
Damir Jelić
a823d85cd8 pantalaimon: Isort the repo. 2019-05-21 16:48:46 +02:00
Damir Jelić
cb38112160 tests: Fix the dbus test. 2019-05-21 13:42:48 +02:00
Damir Jelić
6dc126d03c tests: Add initial dbus tests. 2019-05-14 21:51:03 +02:00
Damir Jelić
e9d0f52a5c pantalaimon: Isort the tree. 2019-05-14 21:50:30 +02:00
Damir Jelić
ea33359daa store: The daemon clients need to be per homeserver. 2019-04-12 17:59:30 +02:00
Damir Jelić
1bbf38e240 daemon: Store and restore client info of our children. 2019-04-11 16:59:37 +02:00
Damir Jelić
51700068b9 pantalaimon: Isort the repo. 2019-04-10 12:25:21 +02:00
Damir Jelić
d0ba6c26da pantalaimon: Add tests. 2019-04-10 12:14:00 +02:00