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()}}
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'}]
# Setup a session, configure retry policy _requests_session = requests.Session() # Prefix "http" will cover both "http" & "https" _requests_session.mount( "http", HTTPAdapter( max_retries=Retry( connect=Options.max_tries_to_connect_to_coordinator, read=Options.max_tries_to_connect_to_coordinator, backoff_factor=Options.request_backoff_factor, ) ), ) _encoder = BfJsonEncoder() __all__ = [ "add_issue_config", "delete_issue_config", "delete_network", "delete_node_role_dimension", "delete_reference_book", "delete_snapshot", "delete_snapshot_object", "fork_snapshot", "get_answer", "get_issue_config", "get_network", "get_network_object", "get_node_role_dimension",
def test_json_serialization(): i = Interface(hostname='host', interface='iface') # Load into dict from json to ignore key ordering assert json.loads(BfJsonEncoder().encode(i)) == json.loads( json.dumps(i.dict()))
def test_json_serialization(): i = Interface(hostname='host', interface='iface') assert BfJsonEncoder().encode(i) == json.dumps(i.dict())