def uses_braced_list_for_member_setters(self): node = cs.new(cs.ref("A"), [], [("X", cs.ref("x")), ("Y", cs.ref("y"))]) expected = """new A { X = x, Y = y, }""" assert_equal(expected, cs.dumps(node))
def object_members_are_assigned_with_equals_sign(self): node = cs.obj([("X", cs.ref("x")), ("Y", cs.ref("y"))]) expected = """new { X = x, Y = y, }""" assert_equal(expected, cs.dumps(node))
def test_serialize_try_with_filtered_catch_with_name(self): node = cs.try_( [cs.ret(cs.ref("x"))], handlers=[cs.catch(cs.ref("Exception"), "exception", [cs.expression_statement(cs.ref("y"))])], ) expected = """try { return x; } catch (Exception exception) { y; } """ assert_equal(expected, cs.dumps(node))
def test_serialize_try_with_unfiltered_catch(self): node = cs.try_( [cs.ret(cs.ref("x"))], handlers=[cs.catch(None, None, [cs.expression_statement(cs.ref("y"))])], ) expected = """try { return x; } catch { y; } """ assert_equal(expected, cs.dumps(node))
def test_serialize_try_with_finally_body(self): node = cs.try_( [cs.ret(cs.ref("x"))], finally_body=[cs.expression_statement(cs.ref("y"))], ) expected = """try { return x; } finally { y; } """ assert_equal(expected, cs.dumps(node))
def lambda_without_arguments_has_body_serialized(self): node = cs.lambda_([], [cs.ret(cs.ref("x"))]) expected = """(() => { return x; })""" assert_equal(expected, cs.dumps(node))
def method_has_body(self): node = cs.method("f", [], [cs.ret(cs.ref("x"))]) expected = """internal dynamic f() { return x; } """ assert_equal(expected, cs.dumps(node))
def uses_parens_to_surround_arguments(self): node = cs.new(cs.ref("A"), [cs.ref("x"), cs.ref("y")]) assert_equal("new A(x, y)", cs.dumps(node))
def calls_reference_with_new_keyword(self): node = cs.new(cs.ref("A"), []) assert_equal("new A()", cs.dumps(node))