예제 #1
0
def test_call_encodes_lists_with_values_doing_calls():
    assert str(Call(args=[[Call(args=["second", 123], parent="")]],
                    parent="")) == r"""([("second", 123)])"""
예제 #2
0
def test_call_encodes_dicts_with_escapes_keys():
    assert str(Call(args=[{
        "key\\1": "item1"
    }], parent="")) == r"""({"key\\1": "item1"})"""
예제 #3
0
def test_call_encodes_dicts_with_values_doing_calls():
    assert (str(
        Call(args=[{
            "key": Call(args=["second", 123], parent="")
        }], parent="")) == r"""({"key": ("second", 123)})""")
예제 #4
0
def test_call_encodes_dicts():
    assert str(Call(args=[{
        "key1": "item1",
        "key2": "item2"
    }], parent="")) == """({"key1": "item1", "key2": "item2"})"""
예제 #5
0
def test_call_encodes_ordereddict():
    assert (str(
        Call(args=[OrderedDict({
            "key1": "item1",
            "key2": "item2"
        })], parent="")) == """({"key1": "item1", "key2": "item2"})""")
예제 #6
0
def test_call_encodes_lists():
    assert str(Call(args=[["item1", "item2"]],
                    parent="")) == """(["item1", "item2"])"""
예제 #7
0
def test_call_encodes_strings_with_quotes_includes_escapes():
    assert str(Call(args=['he"llo'], parent="")) == """("he\\"llo")"""
예제 #8
0
def test_require_function_is_available(node_server):
    node_server("{} = {}".format(Identifier("readline"),
                                 Call(args=["readline"], parent="require")))
    assert node_server("return readline") is not None
예제 #9
0
def test_value_error_if_encoding_is_broken():
    with raises(ValueError):
        str(Call(args=[object()], parent=""))
예제 #10
0
def test_call_encodes_none_to_null():
    assert str(Call(args=[None], parent="")) == r"""(null)"""