summary refs log tree commit diff
path: root/tests/storage
diff options
context:
space:
mode:
authorreivilibre <oliverw@matrix.org>2023-04-13 14:35:03 +0000
committerGitHub <noreply@github.com>2023-04-13 15:35:03 +0100
commitedae20f926d9d1225111f1d40a1073ce3f1d3fb7 (patch)
tree900cb6fdfa14849a766f009655911ab0e52e9249 /tests/storage
parentAdd comma missing from #15382. (#15429) (diff)
downloadsynapse-edae20f926d9d1225111f1d40a1073ce3f1d3fb7.tar.xz
Improve robustness when handling a perspective key response by deduplicating received server keys. (#15423)
* Change `store_server_verify_keys` to take a `Mapping[(str, str), FKR]`

This is because we already can't handle duplicate keys — leads to cardinality violation

* Newsfile

Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>

---------

Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org>
Diffstat (limited to 'tests/storage')
-rw-r--r--tests/storage/test_keys.py18
1 files changed, 9 insertions, 9 deletions
diff --git a/tests/storage/test_keys.py b/tests/storage/test_keys.py
index ba68171ad7..5901d80f26 100644
--- a/tests/storage/test_keys.py
+++ b/tests/storage/test_keys.py
@@ -46,10 +46,10 @@ class KeyStoreTestCase(tests.unittest.HomeserverTestCase):
             store.store_server_verify_keys(
                 "from_server",
                 10,
-                [
-                    ("server1", key_id_1, FetchKeyResult(KEY_1, 100)),
-                    ("server1", key_id_2, FetchKeyResult(KEY_2, 200)),
-                ],
+                {
+                    ("server1", key_id_1): FetchKeyResult(KEY_1, 100),
+                    ("server1", key_id_2): FetchKeyResult(KEY_2, 200),
+                },
             )
         )
 
@@ -90,10 +90,10 @@ class KeyStoreTestCase(tests.unittest.HomeserverTestCase):
             store.store_server_verify_keys(
                 "from_server",
                 0,
-                [
-                    ("srv1", key_id_1, FetchKeyResult(KEY_1, 100)),
-                    ("srv1", key_id_2, FetchKeyResult(KEY_2, 200)),
-                ],
+                {
+                    ("srv1", key_id_1): FetchKeyResult(KEY_1, 100),
+                    ("srv1", key_id_2): FetchKeyResult(KEY_2, 200),
+                },
             )
         )
 
@@ -119,7 +119,7 @@ class KeyStoreTestCase(tests.unittest.HomeserverTestCase):
             signedjson.key.generate_signing_key("key2")
         )
         d = store.store_server_verify_keys(
-            "from_server", 10, [("srv1", key_id_2, FetchKeyResult(new_key_2, 300))]
+            "from_server", 10, {("srv1", key_id_2): FetchKeyResult(new_key_2, 300)}
         )
         self.get_success(d)