Пример #1
0
def test_encoder_with_datamodel_element():
    encoder = BfJsonEncoder()

    iface = Interface(hostname='node', interface="iface")
    assert encoder.default(iface) == iface.dict()

    assert json.loads(
        json.dumps({"name": {"nested": iface}},
                   cls=BfJsonEncoder)) == {"name": {"nested": iface.dict()}}
Пример #2
0
def test_encoder_with_primitives():
    encoder = BfJsonEncoder()
    assert encoder.default(1) == 1
    assert encoder.default(3.14) == 3.14
    assert encoder.default("some_string") == "some_string"
    assert encoder.default([1, 2, "some_string"]) == [1, 2, "some_string"]
    assert encoder.default({1})
    assert encoder.default(None) is None
    assert json.loads(
        json.dumps({"name": {"nested": "foo"}},
                   cls=BfJsonEncoder)) == {"name": {"nested": "foo"}}
    assert json.loads(
        json.dumps([{'name': 'value'}],
                   cls=BfJsonEncoder)) == [{'name': 'value'}]