def test_unstructure__datetime():
    result = unstructure(
        datetime.datetime(2018, 2, 1, 2, 2, 2, tzinfo=datetime.timezone.utc))
    assert result == "2018-02-01T02:02:02+00:00"

    result = unstructure(datetime.datetime(2018, 2, 1, 2, 2, 2))
    assert result == "2018-02-01T02:02:02"
def test_unstructure__invite_with_a_guest():
    value_type = Invite(email="*****@*****.**",
                        guests=[Guest(first_name="Bobby Jim")])
    expected = {
        "email": "*****@*****.**",
        "guests": [{
            "first_name": "Bobby Jim"
        }],
    }
    assert unstructure(value_type) == expected
def test_unstructure__date():
    assert unstructure(datetime.date(2018, 8, 28)) == "2018-08-28"
def test_unstructure__decimal():
    assert unstructure(decimal.Decimal("1.0")) == "1.0"
def test_unstructure__float():
    assert unstructure(1.0) == 1.0
def test_unstructure__invite_with_no_guests():
    value_type = Invite(email="*****@*****.**", guests=[])
    expected = {"email": "*****@*****.**", "guests": []}
    assert unstructure(value_type) == expected
Esempio n. 7
0
def test_unstructure__guest_without_first_name():
    expected = {"first_name": None}
    assert unstructure(SlottedGuest(first_name=None)) == expected
def test_unstructure__uuid():
    expected = "d1337d56-4e6a-4cf7-8f7a-730bf4ea3fac"
    assert unstructure(uuid.UUID(expected)) == expected
def unstructure_assorted_simple_types():
    unstructure(decimal.Decimal(1.0))
    unstructure(datetime.datetime(2018, 2, 1, 2, 2, 2))
    unstructure(datetime.date(2018, 8, 28))
Esempio n. 10
0
def unstructure_assorted_primatives():
    unstructure("Potato")
    unstructure(1)
    unstructure(1.0)
    unstructure(True)
Esempio n. 11
0
def test_unstructure__animal():
    assert unstructure(Animal.ANT) == "ANT"
Esempio n. 12
0
def test_unstructure__sounds():
    assert unstructure(Sounds.CAT) == "CAT"
Esempio n. 13
0
def test_unstructure__set():
    assert unstructure(set([])) == set([])
    assert unstructure(set(["x"])) == set(["x"])
    assert unstructure(set([1])) == set([1])
    assert unstructure(set([2, "y"])) == set([2, "y"])
def test_unstructure__str():
    assert unstructure("Potato") == "Potato"
Esempio n. 15
0
def unstructure_enums():
    unstructure(AnimalEnum.ANT)
    unstructure(SoundsEnum.CAT)
def test_unstructure__bool():
    assert unstructure(True) is True
    assert unstructure(False) is False
Esempio n. 17
0
def unstructure_dataclass():
    unstructure(DataClassGuest(first_name="Bobby Jim"))
Esempio n. 18
0
def test_unstructure__list():
    assert unstructure([]) == []
    assert unstructure(["x"]) == ["x"]
    assert unstructure([1]) == [1]
    assert unstructure([2, "y"]) == [2, "y"]
def test_unstructure__int():
    assert unstructure(1) == 1
Esempio n. 20
0
def test_unstructure__guest_with_first_name():
    expected = {"first_name": "Bobby Jim"}
    assert unstructure(SlottedGuest(first_name="Bobby Jim")) == expected
Esempio n. 21
0
def test_unstructure__tuple():
    assert unstructure(tuple([])) == tuple([])
    assert unstructure(tuple(["x"])) == tuple(["x"])
    assert unstructure(tuple([1])) == tuple([1])