add some tests for interpret env var functions

This commit is contained in:
Benedikt Bartscher 2024-10-28 11:55:45 +01:00
parent 2cbd32c735
commit 06f26780ee
No known key found for this signature in database

View File

@ -7,8 +7,13 @@ import pytest
import reflex as rx import reflex as rx
import reflex.config import reflex.config
from reflex.config import environment from reflex.config import (
from reflex.constants import Endpoint environment,
interpret_boolean_env,
interpret_enum_env,
interpret_int_env,
)
from reflex.constants import Endpoint, Env
def test_requires_app_name(): def test_requires_app_name():
@ -208,11 +213,11 @@ def test_replace_defaults(
assert getattr(c, key) == value assert getattr(c, key) == value
def reflex_dir_constant(): def reflex_dir_constant() -> Path:
return environment.REFLEX_DIR return environment.REFLEX_DIR
def test_reflex_dir_env_var(monkeypatch, tmp_path): def test_reflex_dir_env_var(monkeypatch: pytest.MonkeyPatch, tmp_path: Path) -> None:
"""Test that the REFLEX_DIR environment variable is used to set the Reflex.DIR constant. """Test that the REFLEX_DIR environment variable is used to set the Reflex.DIR constant.
Args: Args:
@ -224,3 +229,16 @@ def test_reflex_dir_env_var(monkeypatch, tmp_path):
mp_ctx = multiprocessing.get_context(method="spawn") mp_ctx = multiprocessing.get_context(method="spawn")
with mp_ctx.Pool(processes=1) as pool: with mp_ctx.Pool(processes=1) as pool:
assert pool.apply(reflex_dir_constant) == tmp_path assert pool.apply(reflex_dir_constant) == tmp_path
def test_interpret_enum_env() -> None:
assert interpret_enum_env(Env.PROD.value, Env, "REFLEX_ENV") == Env.PROD
def test_interpret_int_env() -> None:
assert interpret_int_env("3001", "FRONTEND_PORT") == 3001
@pytest.mark.parametrize("value, expected", [("true", True), ("false", False)])
def test_interpret_bool_env(value: str, expected: bool) -> None:
assert interpret_boolean_env(value, "TELEMETRY_ENABLED") == expected