mirror of
https://git.anonymousland.org/anonymousland/synapse.git
synced 2025-12-15 22:23:53 -05:00
Convert stats and related calls to async/await (#8192)
This commit is contained in:
parent
b71d4a094c
commit
b49a5b9307
8 changed files with 78 additions and 77 deletions
|
|
@ -24,6 +24,7 @@ from synapse.api.errors import ResourceLimitError
|
|||
from synapse.handlers.auth import AuthHandler
|
||||
|
||||
from tests import unittest
|
||||
from tests.test_utils import make_awaitable
|
||||
from tests.utils import setup_test_homeserver
|
||||
|
||||
|
||||
|
|
@ -142,7 +143,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
def test_mau_limits_exceeded_large(self):
|
||||
self.auth_blocking._limit_usage_by_mau = True
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.large_number_of_users)
|
||||
side_effect=lambda: make_awaitable(self.large_number_of_users)
|
||||
)
|
||||
|
||||
with self.assertRaises(ResourceLimitError):
|
||||
|
|
@ -153,7 +154,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
)
|
||||
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.large_number_of_users)
|
||||
side_effect=lambda: make_awaitable(self.large_number_of_users)
|
||||
)
|
||||
with self.assertRaises(ResourceLimitError):
|
||||
yield defer.ensureDeferred(
|
||||
|
|
@ -168,7 +169,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
|
||||
# If not in monthly active cohort
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.auth_blocking._max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.auth_blocking._max_mau_value)
|
||||
)
|
||||
with self.assertRaises(ResourceLimitError):
|
||||
yield defer.ensureDeferred(
|
||||
|
|
@ -178,7 +179,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
)
|
||||
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.auth_blocking._max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.auth_blocking._max_mau_value)
|
||||
)
|
||||
with self.assertRaises(ResourceLimitError):
|
||||
yield defer.ensureDeferred(
|
||||
|
|
@ -188,10 +189,10 @@ class AuthTestCase(unittest.TestCase):
|
|||
)
|
||||
# If in monthly active cohort
|
||||
self.hs.get_datastore().user_last_seen_monthly_active = Mock(
|
||||
return_value=defer.succeed(self.hs.get_clock().time_msec())
|
||||
side_effect=lambda user_id: make_awaitable(self.hs.get_clock().time_msec())
|
||||
)
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.auth_blocking._max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.auth_blocking._max_mau_value)
|
||||
)
|
||||
yield defer.ensureDeferred(
|
||||
self.auth_handler.get_access_token_for_user_id(
|
||||
|
|
@ -199,10 +200,10 @@ class AuthTestCase(unittest.TestCase):
|
|||
)
|
||||
)
|
||||
self.hs.get_datastore().user_last_seen_monthly_active = Mock(
|
||||
return_value=defer.succeed(self.hs.get_clock().time_msec())
|
||||
side_effect=lambda user_id: make_awaitable(self.hs.get_clock().time_msec())
|
||||
)
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.auth_blocking._max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.auth_blocking._max_mau_value)
|
||||
)
|
||||
yield defer.ensureDeferred(
|
||||
self.auth_handler.validate_short_term_login_token_and_get_user_id(
|
||||
|
|
@ -215,7 +216,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
self.auth_blocking._limit_usage_by_mau = True
|
||||
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.small_number_of_users)
|
||||
side_effect=lambda: make_awaitable(self.small_number_of_users)
|
||||
)
|
||||
# Ensure does not raise exception
|
||||
yield defer.ensureDeferred(
|
||||
|
|
@ -225,7 +226,7 @@ class AuthTestCase(unittest.TestCase):
|
|||
)
|
||||
|
||||
self.hs.get_datastore().get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.small_number_of_users)
|
||||
side_effect=lambda: make_awaitable(self.small_number_of_users)
|
||||
)
|
||||
yield defer.ensureDeferred(
|
||||
self.auth_handler.validate_short_term_login_token_and_get_user_id(
|
||||
|
|
|
|||
|
|
@ -15,8 +15,6 @@
|
|||
|
||||
from mock import Mock
|
||||
|
||||
from twisted.internet import defer
|
||||
|
||||
from synapse.api.auth import Auth
|
||||
from synapse.api.constants import UserTypes
|
||||
from synapse.api.errors import Codes, ResourceLimitError, SynapseError
|
||||
|
|
@ -102,7 +100,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
|
|||
def test_get_or_create_user_mau_not_blocked(self):
|
||||
self.hs.config.limit_usage_by_mau = True
|
||||
self.store.count_monthly_users = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value - 1)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value - 1)
|
||||
)
|
||||
# Ensure does not throw exception
|
||||
self.get_success(self.get_or_create_user(self.requester, "c", "User"))
|
||||
|
|
@ -110,7 +108,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
|
|||
def test_get_or_create_user_mau_blocked(self):
|
||||
self.hs.config.limit_usage_by_mau = True
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.lots_of_users)
|
||||
side_effect=lambda: make_awaitable(self.lots_of_users)
|
||||
)
|
||||
self.get_failure(
|
||||
self.get_or_create_user(self.requester, "b", "display_name"),
|
||||
|
|
@ -118,7 +116,7 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
|
|||
)
|
||||
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value)
|
||||
)
|
||||
self.get_failure(
|
||||
self.get_or_create_user(self.requester, "b", "display_name"),
|
||||
|
|
@ -128,14 +126,14 @@ class RegistrationTestCase(unittest.HomeserverTestCase):
|
|||
def test_register_mau_blocked(self):
|
||||
self.hs.config.limit_usage_by_mau = True
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.lots_of_users)
|
||||
side_effect=lambda: make_awaitable(self.lots_of_users)
|
||||
)
|
||||
self.get_failure(
|
||||
self.handler.register_user(localpart="local_part"), ResourceLimitError
|
||||
)
|
||||
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value)
|
||||
)
|
||||
self.get_failure(
|
||||
self.handler.register_user(localpart="local_part"), ResourceLimitError
|
||||
|
|
|
|||
|
|
@ -20,8 +20,6 @@ import urllib.parse
|
|||
|
||||
from mock import Mock
|
||||
|
||||
from twisted.internet import defer
|
||||
|
||||
import synapse.rest.admin
|
||||
from synapse.api.constants import UserTypes
|
||||
from synapse.api.errors import HttpResponseException, ResourceLimitError
|
||||
|
|
@ -29,6 +27,7 @@ from synapse.rest.client.v1 import login
|
|||
from synapse.rest.client.v2_alpha import sync
|
||||
|
||||
from tests import unittest
|
||||
from tests.test_utils import make_awaitable
|
||||
from tests.unittest import override_config
|
||||
|
||||
|
||||
|
|
@ -338,7 +337,7 @@ class UserRegisterTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Set monthly active users to the limit
|
||||
store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value)
|
||||
)
|
||||
# Check that the blocking of monthly active users is working as expected
|
||||
# The registration of a new user fails due to the limit
|
||||
|
|
@ -592,7 +591,7 @@ class UserRestTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Set monthly active users to the limit
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value)
|
||||
)
|
||||
# Check that the blocking of monthly active users is working as expected
|
||||
# The registration of a new user fails due to the limit
|
||||
|
|
@ -632,7 +631,7 @@ class UserRestTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
# Set monthly active users to the limit
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(self.hs.config.max_mau_value)
|
||||
side_effect=lambda: make_awaitable(self.hs.config.max_mau_value)
|
||||
)
|
||||
# Check that the blocking of monthly active users is working as expected
|
||||
# The registration of a new user fails due to the limit
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ class TestResourceLimitsServerNotices(unittest.HomeserverTestCase):
|
|||
raise Exception("Failed to find reference to ResourceLimitsServerNotices")
|
||||
|
||||
self._rlsn._store.user_last_seen_monthly_active = Mock(
|
||||
return_value=defer.succeed(1000)
|
||||
side_effect=lambda user_id: make_awaitable(1000)
|
||||
)
|
||||
self._rlsn._server_notices_manager.send_notice = Mock(
|
||||
return_value=defer.succeed(Mock())
|
||||
|
|
@ -158,7 +158,7 @@ class TestResourceLimitsServerNotices(unittest.HomeserverTestCase):
|
|||
"""
|
||||
self._rlsn._auth.check_auth_blocking = Mock(return_value=defer.succeed(None))
|
||||
self._rlsn._store.user_last_seen_monthly_active = Mock(
|
||||
return_value=defer.succeed(None)
|
||||
side_effect=lambda user_id: make_awaitable(None)
|
||||
)
|
||||
self.get_success(self._rlsn.maybe_send_server_notice_to_user(self.user_id))
|
||||
|
||||
|
|
@ -261,10 +261,12 @@ class TestResourceLimitsServerNoticesWithRealRooms(unittest.HomeserverTestCase):
|
|||
self.user_id = "@user_id:test"
|
||||
|
||||
def test_server_notice_only_sent_once(self):
|
||||
self.store.get_monthly_active_count = Mock(return_value=defer.succeed(1000))
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
side_effect=lambda: make_awaitable(1000)
|
||||
)
|
||||
|
||||
self.store.user_last_seen_monthly_active = Mock(
|
||||
return_value=defer.succeed(1000)
|
||||
side_effect=lambda user_id: make_awaitable(1000)
|
||||
)
|
||||
|
||||
# Call the function multiple times to ensure we only send the notice once
|
||||
|
|
|
|||
|
|
@ -16,13 +16,12 @@
|
|||
|
||||
from mock import Mock
|
||||
|
||||
from twisted.internet import defer
|
||||
|
||||
import synapse.rest.admin
|
||||
from synapse.http.site import XForwardedForRequest
|
||||
from synapse.rest.client.v1 import login
|
||||
|
||||
from tests import unittest
|
||||
from tests.test_utils import make_awaitable
|
||||
from tests.unittest import override_config
|
||||
|
||||
|
||||
|
|
@ -155,7 +154,7 @@ class ClientIpStoreTestCase(unittest.HomeserverTestCase):
|
|||
user_id = "@user:server"
|
||||
|
||||
self.store.get_monthly_active_count = Mock(
|
||||
return_value=defer.succeed(lots_of_users)
|
||||
side_effect=lambda: make_awaitable(lots_of_users)
|
||||
)
|
||||
self.get_success(
|
||||
self.store.insert_client_ip(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue