From a78d33da76cb07ac36451b9cf4390d7126d0fc37 Mon Sep 17 00:00:00 2001 From: Andrew Morgan Date: Wed, 30 Dec 2020 18:19:42 +0000 Subject: [PATCH 1/3] Allow tests.federation.transport tests to run --- tests/federation/transport/__init__.py | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 tests/federation/transport/__init__.py diff --git a/tests/federation/transport/__init__.py b/tests/federation/transport/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 From 1b5115b9304441c64f4271af276f5b340d34b4d1 Mon Sep 17 00:00:00 2001 From: Andrew Morgan Date: Wed, 30 Dec 2020 18:23:18 +0000 Subject: [PATCH 2/3] Fix RoomDirectoryFederationTests --- tests/federation/transport/test_server.py | 39 +++++++++++------------ 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/tests/federation/transport/test_server.py b/tests/federation/transport/test_server.py index 212fb79a007b..85500e169c88 100644 --- a/tests/federation/transport/test_server.py +++ b/tests/federation/transport/test_server.py @@ -1,5 +1,5 @@ # -*- coding: utf-8 -*- -# Copyright 2019 The Matrix.org Foundation C.I.C. +# Copyright 2020 The Matrix.org Foundation C.I.C. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -13,34 +13,31 @@ # See the License for the specific language governing permissions and # limitations under the License. - -from twisted.internet import defer - -from synapse.config.ratelimiting import FederationRateLimitConfig -from synapse.federation.transport import server -from synapse.util.ratelimitutils import FederationRateLimiter - from tests import unittest from tests.unittest import override_config -class RoomDirectoryFederationTests(unittest.HomeserverTestCase): - def prepare(self, reactor, clock, homeserver): - class Authenticator: - def authenticate_request(self, request, content): - return defer.succeed("otherserver.nottld") - - ratelimiter = FederationRateLimiter(clock, FederationRateLimitConfig()) - server.register_servlets( - homeserver, self.resource, Authenticator(), ratelimiter - ) - +class RoomDirectoryFederationTests(unittest.FederatingHomeserverTestCase): @override_config({"allow_public_rooms_over_federation": False}) def test_blocked_public_room_list_over_federation(self): - channel = self.make_request("GET", "/_matrix/federation/v1/publicRooms") + """Test that unauthenticated requests to the public rooms directory 403 when + allow_public_rooms_over_federation is False. + """ + channel = self.make_request( + "GET", + "/_matrix/federation/v1/publicRooms", + federation_auth_origin=b"example.com", + ) self.assertEquals(403, channel.code) @override_config({"allow_public_rooms_over_federation": True}) def test_open_public_room_list_over_federation(self): - channel = self.make_request("GET", "/_matrix/federation/v1/publicRooms") + """Test that unauthenticated requests to the public rooms directory 200 when + allow_public_rooms_over_federation is True. + """ + channel = self.make_request( + "GET", + "/_matrix/federation/v1/publicRooms", + federation_auth_origin=b"example.com", + ) self.assertEquals(200, channel.code) From 938eb2be4b1dfae7851a73d2ae5b33da8f0b13ce Mon Sep 17 00:00:00 2001 From: Andrew Morgan Date: Wed, 30 Dec 2020 18:41:26 +0000 Subject: [PATCH 3/3] Changelog --- changelog.d/8998.misc | 1 + 1 file changed, 1 insertion(+) create mode 100644 changelog.d/8998.misc diff --git a/changelog.d/8998.misc b/changelog.d/8998.misc new file mode 100644 index 000000000000..81346694bd3a --- /dev/null +++ b/changelog.d/8998.misc @@ -0,0 +1 @@ +Fix `tests.federation.transport.RoomDirectoryFederationTests` and ensure it runs in CI. \ No newline at end of file