Skip to content

Commit db9fe18

Browse files
committed
test_replace_env_var_multiple: missing test case for chain detection
When the same variables appear across separate substitutions, it should not trigger chain detection.
1 parent 2d46a1e commit db9fe18

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

tests/config/loader/ini/replace/test_replace_env_var.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,20 @@ def test_replace_env_missing_default_from_env(replace_one: ReplaceOne, monkeypat
7575
assert result == "yes"
7676

7777

78+
def test_replace_env_var_multiple(replace_one: ReplaceOne, monkeypatch: MonkeyPatch) -> None:
79+
"""Multiple env substitutions on a single line."""
80+
monkeypatch.setenv("MAGIC", "MAGIC")
81+
monkeypatch.setenv("TRAGIC", "TRAGIC")
82+
result = replace_one("{env:MAGIC} {env:TRAGIC} {env:MAGIC}")
83+
assert result == "MAGIC TRAGIC MAGIC"
84+
85+
86+
def test_replace_env_var_multiple_default(replace_one: ReplaceOne) -> None:
87+
"""Multiple env substitutions on a single line with default values."""
88+
result = replace_one("{env:MAGIC:foo} {env:TRAGIC:bar} {env:MAGIC:baz}")
89+
assert result == "foo bar baz"
90+
91+
7892
def test_replace_env_var_circular(replace_one: ReplaceOne, monkeypatch: MonkeyPatch) -> None:
7993
"""Replacement values will not infinitely loop"""
8094
monkeypatch.setenv("MAGIC", "{env:MAGIC}")

0 commit comments

Comments
 (0)