def test_tag_deserialization():
    tags = [
        {"namespace": "Sat", "key": "env", "value": "prod"},
        {"namespace": "Sat", "key": "env", "value": "test"},
        {"namespace": "Sat", "key": "geo", "value": "somewhere"},
        {"namespace": "AWS", "key": "env", "value": "ci"},
        {"namespace": "AWS", "key": "env"},
    ]
    expected_tags = {"Sat": {"env": ["prod", "test"], "geo": ["somewhere"]}, "AWS": {"env": ["ci"]}}
    deserialized_tags = Tag.create_nested_from_tags(Tag.create_structered_tags_from_tag_data_list(tags))

    assert sorted(deserialized_tags["Sat"]["env"]) == sorted(expected_tags["Sat"]["env"])
    assert sorted(deserialized_tags["Sat"]["geo"]) == sorted(expected_tags["Sat"]["geo"])
    assert sorted(deserialized_tags["AWS"]["env"]) == sorted(expected_tags["AWS"]["env"])
Beispiel #2
0
def _deserialize_tags(tags):
    # TODO: Move the deserialization logic to this method.
    return Tag.create_nested_from_tags(
        Tag.create_structered_tags_from_tag_data_list(tags))