Add tests for an empty environment variable

This commit is contained in:
Roman Mogylatov 2021-12-20 19:15:19 +02:00
parent d9984a55ef
commit 3cc54462bd
2 changed files with 14 additions and 0 deletions

View File

@ -106,9 +106,11 @@ def environment_variables():
os.environ["CONFIG_TEST_ENV"] = "test-value"
os.environ["CONFIG_TEST_PATH"] = "test-path"
os.environ["DEFINED"] = "defined"
os.environ["EMPTY"] = ""
os.environ["CONFIG_INT"] = "42"
yield
os.environ.pop("CONFIG_TEST_ENV", None)
os.environ.pop("CONFIG_TEST_PATH", None)
os.environ.pop("DEFINED", None)
os.environ.pop("EMPTY", None)
os.environ.pop("CONFIG_INT", None)

View File

@ -49,6 +49,12 @@ def test_as__undefined_required(config):
assert config() == {}
def test_as__defined_empty(config):
with raises(ValueError):
config.from_env("EMPTY", as_=int)
assert config() == {}
def test_option_as_(config):
config.option.from_env("CONFIG_INT", as_=int)
assert config.option() == 42
@ -67,6 +73,12 @@ def test_option_as__undefined_required(config):
assert config.option() is None
def test_option_as__defined_empty(config):
with raises(ValueError):
config.option.from_env("EMPTY", as_=int)
assert config.option() is None
@mark.parametrize("config_type", ["strict"])
def test_undefined_in_strict_mode(config):
with raises(ValueError):