Skip to content

Commit f597f83

Browse files
committed
test: add envflag default parameter tests and relocate to test_helpers
1 parent bd3b530 commit f597f83

File tree

2 files changed

+39
-22
lines changed

2 files changed

+39
-22
lines changed

tests/unit/test_utils/test_envflag.py

Lines changed: 0 additions & 21 deletions
This file was deleted.

tests/unit/test_utils/test_helpers.py

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
import os
12
from functools import partial
23
from typing import Any, Generic, TypeVar
34

45
import pytest
56

6-
from litestar.utils.helpers import get_name, unique_name_for_scope, unwrap_partial
7+
from litestar.utils.helpers import envflag, get_name, unique_name_for_scope, unwrap_partial
78

89
T = TypeVar("T")
910

@@ -45,3 +46,40 @@ def test_unique_name_for_scope() -> None:
4546
assert unique_name_for_scope("a", ["a", "a_0", "b"]) == "a_1"
4647

4748
assert unique_name_for_scope("b", ["a", "a_0", "b"]) == "b_0"
49+
50+
51+
def test_envflag_truthy_values() -> None:
52+
for value in ("1", "true", "TRUE", "t", "T", "yes", "YES", "on", "ON", "y", "Y"):
53+
os.environ["TEST_FLAG"] = value
54+
assert envflag("TEST_FLAG") is True
55+
del os.environ["TEST_FLAG"]
56+
57+
58+
def test_envflag_falsy_values() -> None:
59+
for value in ("0", "false", "no", "off", ""):
60+
os.environ["TEST_FLAG"] = value
61+
assert envflag("TEST_FLAG") is False
62+
del os.environ["TEST_FLAG"]
63+
64+
65+
def test_envflag_missing() -> None:
66+
assert envflag("NONEXISTENT_VAR") is False
67+
assert envflag("NONEXISTENT_VAR_123", default=True) is True
68+
assert envflag("NONEXISTENT_VAR_456", default=False) is False
69+
70+
71+
def test_envflag_overrides_default() -> None:
72+
os.environ["TEST_FLAG"] = "true"
73+
assert envflag("TEST_FLAG", default=False) is True
74+
del os.environ["TEST_FLAG"]
75+
76+
os.environ["TEST_FLAG"] = "0"
77+
assert envflag("TEST_FLAG", default=True) is False
78+
del os.environ["TEST_FLAG"]
79+
80+
81+
def test_envflag_empty_string_uses_default() -> None:
82+
os.environ["TEST_FLAG"] = ""
83+
assert envflag("TEST_FLAG", default=True) is True
84+
assert envflag("TEST_FLAG", default=False) is False
85+
del os.environ["TEST_FLAG"]

0 commit comments

Comments
 (0)