synapse/tests
Val Lorentz cb8e274c07
Speedup tests by caching HomeServerConfig instances (#15284)
These two lines:

```
config_obj = HomeServerConfig()
config_obj.parse_config_dict(config, "", "")
```

are called many times with the exact same value for `config`.

As the test suite is CPU-bound and non-negligeably time is spent in
`parse_config_dict`, this saves ~5% on the overall runtime of the Trial
test suite (tested with both `-j2` and `-j12` on a 12t CPU).

This is sadly rather limited, as the cache cannot be shared between
processes (it contains at least jinja2.Template and RLock objects which
aren't pickleable), and Trial tends to run close tests in different
processes.
2023-04-18 13:50:27 +00:00
..
api Use immutabledict instead of frozendict (#15113) 2023-03-22 17:15:34 +00:00
app Add final type hint to tests.unittest. (#15072) 2023-02-14 14:03:35 -05:00
appservice Call appservices on modern paths, falling back to legacy paths. (#15317) 2023-04-03 13:20:32 -04:00
config Throw if the appservice config list is the wrong type (#15425) 2023-04-12 11:28:46 +00:00
crypto Improve robustness when handling a perspective key response by deduplicating received server keys. (#15423) 2023-04-13 15:35:03 +01:00
events Implement MSC2174: move redacts to a content property. (#15395) 2023-04-13 13:47:07 +00:00
federation Ensure fed-sender catchup does not block for full state (#15248) 2023-03-13 12:31:19 +00:00
handlers Move Spam Checker callbacks to a dedicated file (#15453) 2023-04-18 00:57:40 +00:00
http Pull in netaddr type hints. (#15231) 2023-03-09 07:09:49 -05:00
logging Use mypy 1.0 (#15052) 2023-02-16 16:09:11 +00:00
media Move Spam Checker callbacks to a dedicated file (#15453) 2023-04-18 00:57:40 +00:00
metrics Add missing type hints to tests. (#14687) 2022-12-28 08:29:35 -05:00
module_api Delete pushers after calling on_logged_out module hook on device delete (#15410) 2023-04-14 14:12:37 +02:00
push Make cleaning up pushers depend on the device_id instead of the token_id (#15280) 2023-03-24 11:09:39 -04:00
replication to_device updates could be dropped when consuming the replication stream (#15349) 2023-03-30 19:41:14 +02:00
rest Move Spam Checker callbacks to a dedicated file (#15453) 2023-04-18 00:57:40 +00:00
scripts Add more missing type hints to tests. (#15028) 2023-02-08 16:29:49 -05:00
server_notices Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
state Fix typechecks against twisted trunk (#13061) 2022-06-15 11:49:58 +01:00
storage Improve robustness when handling a perspective key response by deduplicating received server keys. (#15423) 2023-04-13 15:35:03 +01:00
test_utils Ensure fed-sender catchup does not block for full state (#15248) 2023-03-13 12:31:19 +00:00
types Use immutabledict instead of frozendict (#15113) 2023-03-22 17:15:34 +00:00
util Add final type hint to tests.unittest. (#15072) 2023-02-14 14:03:35 -05:00
__init__.py Remove redundant "coding: utf-8" lines (#9786) 2021-04-14 15:34:27 +01:00
server.py Move Spam Checker callbacks to a dedicated file (#15453) 2023-04-18 00:57:40 +00:00
test_distributor.py Add missing type hints to tests. (#15027) 2023-02-08 19:52:37 +00:00
test_event_auth.py Add missing type hints to tests. (#15027) 2023-02-08 19:52:37 +00:00
test_federation.py Remove unused room_alias field from /createRoom response (#15093) 2023-02-22 11:07:28 +00:00
test_mau.py Bump black from 22.12.0 to 23.1.0 (#15103) 2023-02-22 15:29:09 -05:00
test_phone_home.py Add final type hint to tests.unittest. (#15072) 2023-02-14 14:03:35 -05:00
test_rust.py Add missing type hints to tests. (#15027) 2023-02-08 19:52:37 +00:00
test_server.py Add Synapse-Trace-Id to access-control-expose-headers header (#14974) 2023-03-20 11:14:05 -07:00
test_state.py Add missing types to test_state. (#14985) 2023-02-06 16:11:09 +00:00
test_terms_auth.py Proper types for tests.test_terms_auth (#15007) 2023-02-07 12:03:39 +00:00
test_test_utils.py Add missing type hints to tests. (#15027) 2023-02-08 19:52:37 +00:00
test_types.py Add missing type hints to tests. (#15027) 2023-02-08 19:52:37 +00:00
test_visibility.py Refactor filter_events_for_server (#15240) 2023-03-10 15:31:25 +00:00
unittest.py Speedup tests by caching HomeServerConfig instances (#15284) 2023-04-18 13:50:27 +00:00
utils.py Use mypy 1.0 (#15052) 2023-02-16 16:09:11 +00:00