def test_same_as_configuration():  # type: ignore
    cfg = config_from_dict(DICT2_1, lowercase_keys=True)

    cfgset = ConfigurationSet(config_from_dict(DICT2_1, lowercase_keys=True))

    assert cfg.get_dict("a2") == cfgset.get_dict("a2")
    assert cfg.a2.as_dict() == cfgset.a2.as_dict()
    assert dict(cfg.a2) == dict(cfgset.a2)

    assert dict(cfg.a2) == dict(cfg.a2.items())
    assert dict(cfgset.a2) == dict(cfgset.a2.items())

    assert cfg.as_dict() == cfgset.as_dict()
    assert dict(cfg) == dict(cfgset)
def test_dict_methods_keys_values():  # type: ignore
    cfg = ConfigurationSet(
        config_from_dict(DICT2_1, lowercase_keys=True),
        config_from_dict(DICT2_2, lowercase_keys=True),
        config_from_env(prefix=PREFIX, lowercase_keys=True),
    )

    assert sorted(cfg.keys()) == [
        "a1",
        "a2",
    ]

    assert dict(zip(cfg.keys(), cfg.values())) == {
        "a1": {
            "b1.c1": "1",
            "b1.c2": "2",
            "b1.c3": "3",
            "b2.c1": "a",
            "b2.c2": "True",
            "b2.c3": "1.1",
        },
        "a2": {
            "b1.c1": "f",
            "b1.c2": False,
            "b1.c3": None,
            "b2.c1": 10,
            "b2.c2": "YWJjZGVmZ2g=",
            "b2.c3": "abcdefgh",
        },
    }

    with cfg.dotted_iter():
        assert sorted(cfg.keys()) == [
            "a1.b1.c1",
            "a1.b1.c2",
            "a1.b1.c3",
            "a1.b2.c1",
            "a1.b2.c2",
            "a1.b2.c3",
            "a2.b1.c1",
            "a2.b1.c2",
            "a2.b1.c3",
            "a2.b2.c1",
            "a2.b2.c2",
            "a2.b2.c3",
        ]

        assert dict(zip(cfg.keys(), cfg.values())) == cfg.as_dict()
Пример #3
0
def test_dict_methods_keys_values():  # type: ignore
    cfg = ConfigurationSet(
        config_from_dict(DICT2_1, lowercase_keys=True),
        config_from_dict(DICT2_2, lowercase_keys=True),
        config_from_env(prefix=PREFIX, lowercase_keys=True),
    )

    assert sorted(cfg.keys()) == [
        "a1.b1.c1",
        "a1.b1.c2",
        "a1.b1.c3",
        "a1.b2.c1",
        "a1.b2.c2",
        "a1.b2.c3",
        "a2.b1.c1",
        "a2.b1.c2",
        "a2.b1.c3",
        "a2.b2.c1",
        "a2.b2.c2",
        "a2.b2.c3",
    ]

    assert dict(zip(cfg.keys(), cfg.values())) == cfg.as_dict()