From 25a989d8de83e02427438c1bbb774612cfc70d11 Mon Sep 17 00:00:00 2001 From: Jasha <8935917+Jasha10@users.noreply.github.com> Date: Thu, 2 Dec 2021 02:04:47 -0600 Subject: [PATCH] Add failing test based on #831 --- tests/structured_conf/test_structured_config.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/structured_conf/test_structured_config.py b/tests/structured_conf/test_structured_config.py index e3a497677..5d5935af4 100644 --- a/tests/structured_conf/test_structured_config.py +++ b/tests/structured_conf/test_structured_config.py @@ -205,6 +205,13 @@ def validate(cfg: DictConfig) -> None: conf1 = OmegaConf.structured(module.ConfigWithList()) validate(conf1) + def test_config_with_list_nondefault_values(self, module: Any) -> None: + conf1 = OmegaConf.structured(module.ConfigWithList(list1=[4, 5, 6])) + assert conf1.list1 == [4, 5, 6] + + conf2 = OmegaConf.structured(module.ConfigWithList(list1=MISSING)) + assert OmegaConf.is_missing(conf2, "list1") + def test_assignment_to_nested_structured_config(self, module: Any) -> None: conf = OmegaConf.structured(module.NestedConfig) with raises(ValidationError): @@ -229,6 +236,13 @@ def validate(cfg: DictConfig) -> None: conf1 = OmegaConf.structured(module.ConfigWithDict()) validate(conf1) + def test_config_with_dict_nondefault_values(self, module: Any) -> None: + conf1 = OmegaConf.structured(module.ConfigWithDict(dict1={"baz": "qux"})) + assert conf1.dict1 == {"baz": "qux"} + + conf2 = OmegaConf.structured(module.ConfigWithDict(dict1=MISSING)) + assert OmegaConf.is_missing(conf2, "dict1") + def test_structured_config_struct_behavior(self, module: Any) -> None: def validate(cfg: DictConfig) -> None: assert not OmegaConf.is_struct(cfg)