summary refs log tree commit diff
path: root/tests/storage/test_state.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Allow selecting "prejoin" events by state keys (#14642)David Robertson2022-12-131-622/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Declare new config * Parse new config * Read new config * Don't use trial/our TestCase where it's not needed Before: ``` $ time trial tests/events/test_utils.py > /dev/null real 0m2.277s user 0m2.186s sys 0m0.083s ``` After: ``` $ time trial tests/events/test_utils.py > /dev/null real 0m0.566s user 0m0.508s sys 0m0.056s ``` * Helper to upsert to event fields without exceeding size limits. * Use helper when adding invite/knock state Now that we allow admins to include events in prejoin room state with arbitrary state keys, be a good Matrix citizen and ensure they don't accidentally create an oversized event. * Changelog * Move StateFilter tests should have done this in #14668 * Add extra methods to StateFilter * Use StateFilter * Ensure test file enforces typed defs; alphabetise * Workaround surprising get_current_state_ids * Whoops, fix mypy
* Move `StateFilter` to `synapse.types` (#14668)David Robertson2022-12-121-1/+1
| | | | | * Move `StateFilter` to `synapse.types` * Changelog
* Require types in tests.storage. (#14646)Patrick Cloke2022-12-091-16/+30
| | | | Adds missing type hints to `tests.storage` package and does not allow untyped definitions.
* Make DictionaryCache have better expiry properties (#13292)Erik Johnston2022-07-211-5/+5
|
* Rename storage classes (#12913)Erik Johnston2022-05-311-1/+1
|
* Remove `HomeServer.get_datastore()` (#12031)Richard van der Hoff2022-02-231-1/+1
| | | | | | | The presence of this method was confusing, and mostly present for backwards compatibility. Let's get rid of it. Part of #11733
* Fix bug in `StateFilter.return_expanded()` and add some tests. (#12016)reivilibre2022-02-181-0/+109
|
* Add an approximate difference method to StateFilters (#10825)reivilibre2021-10-121-2/+511
|
* Make StateFilter frozen so we can hash it (#10816)reivilibre2021-09-141-17/+29
| | | Also enables Mypy for related tests.
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-141-1/+0
| | | | | | | Part of #9744 Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now. `Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>`
* Convert storage test cases to HomeserverTestCase. (#9736)Patrick Cloke2021-04-061-105/+40
|
* Add type hints to DictionaryCache and TTLCache. (#9442)Patrick Cloke2021-03-291-14/+8
|
* Convert some of the data store to async. (#7976)Patrick Cloke2020-07-301-5/+7
|
* Convert storage layer to async/await. (#7963)Patrick Cloke2020-07-281-25/+39
|
* Convert the message handler to async/await. (#7884)Patrick Cloke2020-07-221-2/+2
|
* Clarify list/set/dict/tuple comprehensions and enforce via flake8 (#6957)Patrick Cloke2020-02-211-1/+1
| | | | Ensure good comprehension hygiene using flake8-comprehensions.
* Add `rooms.room_version` column (#6729)Erik Johnston2020-01-271-1/+4
| | | This is so that we don't have to rely on pulling it out from `current_state_events` table.
* Split state groups into a separate data store (#6296)Erik Johnston2019-12-201-1/+1
|
* Port to use state storageErik Johnston2019-10-301-48/+102
|
* Use new EventPersistenceStoreErik Johnston2019-10-231-1/+2
|
* Replace returnValue with return (#5736)Amber Brown2019-07-231-1/+1
|
* Run Black. (#5482)Amber Brown2019-06-201-8/+8
|
* Run Black on the tests again (#5170)Amber Brown2019-05-101-52/+31
|
* Collect room-version variations into one place (#4969)Richard van der Hoff2019-04-011-2/+3
| | | | Collect all the things that make room-versions different to one another into one place, so that it's easier to define new room versions.
* Fix flake8 (#4519)Amber Brown2019-01-301-3/+0
|
* Fix testsErik Johnston2019-01-251-1/+2
|
* Revert "Require event format version to parse or create events"Erik Johnston2019-01-251-2/+1
|
* Fix testsErik Johnston2019-01-241-1/+2
|
* Refactor state group lookup to reduce DB hits (#4011)Erik Johnston2018-10-251-65/+110
| | | | | | | | Currently when fetching state groups from the data store we make two hits two the database: once for members and once for non-members (unless request is filtered to one or the other). This adds needless load to the datbase, so this PR refactors the lookup to make only a single database hit.
* docstrings and unittests for storage.state (#3958)Richard van der Hoff2018-09-271-0/+39
| | | | I spent ages trying to figure out how I was going mad...
* Port tests/ to Python 3 (#3808)Amber Brown2018-09-071-64/+38
|
* Split the state_group_cache in two (#3726)Matthew Hodgson2018-08-221-11/+94
| | | | | | | | | Splits the state_group_cache in two. One half contains normal state events; the other contains member events. The idea is that the lazyloading common case of: "I want a subset of member events plus all of the other state" can be accomplished efficiently by splitting the cache into two, and asking for "all events" from the non-members cache, and "just these keys" from the members cache. This means we can avoid having to make DictionaryCache aware of these sort of complicated queries, whilst letting LL requests benefit from the caching. Previously we were unable to sensibly use the caching and had to pull all state from the DB irrespective of the filtering, which made things slow. Hopefully fixes https://github.com/matrix-org/synapse/issues/3720.
* speed up /members and add at= and membership params (#3568)Matthew Hodgson2018-08-151-1/+1
|
* Run tests under PostgreSQL (#3423)Amber Brown2018-08-131-1/+1
|
* Run black.black2018-08-101-108/+141
|
* Test fixes for Python 3 (#3647)Amber Brown2018-08-091-1/+1
|
* flake8Matthew Hodgson2018-07-251-12/+12
|
* add tests for _get_some_state_from_cacheMatthew Hodgson2018-07-251-0/+150
|
* incorporate more reviewMatthew Hodgson2018-07-241-0/+9
|
* make test workMatthew Hodgson2018-07-191-37/+46
|
* first cut of a UT for testing state store (untested)Matthew Hodgson2018-07-191-0/+151