From bb44fcdaa1652f43c69df99f59dcb53c837b5079 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Brand=C3=A9ho?= Date: Wed, 30 Aug 2023 18:33:54 +0200 Subject: [PATCH] renamed reserved endpoints of Reflex (#1542) --- reflex/constants.py | 4 ++-- reflex/testing.py | 2 +- tests/test_config.py | 27 +++++++++++++++++++-------- 3 files changed, 22 insertions(+), 11 deletions(-) diff --git a/reflex/constants.py b/reflex/constants.py index d235ed653..8b87d717d 100644 --- a/reflex/constants.py +++ b/reflex/constants.py @@ -255,8 +255,8 @@ class Endpoint(Enum): """Endpoints for the reflex backend API.""" PING = "ping" - EVENT = "event" - UPLOAD = "upload" + EVENT = "_event" + UPLOAD = "_upload" def __str__(self) -> str: """Get the string representation of the endpoint. diff --git a/reflex/testing.py b/reflex/testing.py index 5e04fd1e5..caea87308 100644 --- a/reflex/testing.py +++ b/reflex/testing.py @@ -361,7 +361,7 @@ class AppHarness: raise RuntimeError("App is not running.") event_ns: EventNamespace = cast( EventNamespace, - self.app_instance.sio.namespace_handlers["/event"], + self.app_instance.event_namespace, ) pending: list[Coroutine[Any, Any, Any]] = [] for state in self.app_instance.state_manager.states.values(): diff --git a/tests/test_config.py b/tests/test_config.py index f8c9fbde4..da5df7357 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -3,7 +3,8 @@ import os import pytest import reflex as rx -from reflex.config import get_config +import reflex.config +from reflex.constants import Endpoint def test_requires_app_name(): @@ -64,7 +65,7 @@ def test_update_from_env(base_config_values, monkeypatch, env_var, value): env_var: The environment variable name. value: The environment variable value. """ - monkeypatch.setenv(env_var, value) + monkeypatch.setenv(env_var, str(value)) assert os.environ.get(env_var) == str(value) config = rx.Config(**base_config_values) assert getattr(config, env_var.lower()) == value @@ -73,11 +74,20 @@ def test_update_from_env(base_config_values, monkeypatch, env_var, value): @pytest.mark.parametrize( "kwargs, expected", [ - ({"app_name": "test_app", "api_url": "http://example.com"}, "/event"), - ({"app_name": "test_app", "api_url": "http://example.com/api"}, "/api/event"), - ({"app_name": "test_app", "event_namespace": "/event"}, "/event"), - ({"app_name": "test_app", "event_namespace": "event"}, "/event"), - ({"app_name": "test_app", "event_namespace": "event/"}, "/event"), + ( + {"app_name": "test_app", "api_url": "http://example.com"}, + f"{Endpoint.EVENT}", + ), + ( + {"app_name": "test_app", "api_url": "http://example.com/api"}, + f"/api{Endpoint.EVENT}", + ), + ({"app_name": "test_app", "event_namespace": "/event"}, f"/event"), + ({"app_name": "test_app", "event_namespace": "event"}, f"/event"), + ({"app_name": "test_app", "event_namespace": "event/"}, f"/event"), + ({"app_name": "test_app", "event_namespace": "/_event"}, f"{Endpoint.EVENT}"), + ({"app_name": "test_app", "event_namespace": "_event"}, f"{Endpoint.EVENT}"), + ({"app_name": "test_app", "event_namespace": "_event/"}, f"{Endpoint.EVENT}"), ], ) def test_event_namespace(mocker, kwargs, expected): @@ -91,5 +101,6 @@ def test_event_namespace(mocker, kwargs, expected): conf = rx.Config(**kwargs) mocker.patch("reflex.config.get_config", return_value=conf) - config = get_config() + config = reflex.config.get_config() + assert conf == config assert config.get_event_namespace() == expected