def test_transform_compound_assignments(self): _assert_transform( nodes.assign(["x", "y"], nodes.ref("z")), cc.statements([ cc.declare("__nope_u_tmp0", cc.ref("z")), cc.assign(cc.ref("x"), cc.ref("__nope_u_tmp0")), cc.assign(cc.ref("y"), cc.ref("__nope_u_tmp0")), ]), )
def test_import_of_module_in_package_assigns_values_for_both_package_and_module(self): _assert_transform( nodes.import_([ nodes.import_alias("os.path", None), ]), cc.statements([ cc.assign(cc.ref("os"), cc.module_ref(["os"])), cc.assign(cc.attr(cc.ref("os"), "path"), cc.module_ref(["os", "path"])), ]) )
def test_import_multiple_values_in_single_import_statement(self): _assert_transform( nodes.import_([ nodes.import_alias("os", None), nodes.import_alias("sys", None) ]), cc.statements([ cc.assign(cc.ref("os"), cc.module_ref(["os"])), cc.assign(cc.ref("sys"), cc.module_ref(["sys"])), ]) )
def test_multiple_imported_names_in_one_statement_generates_multiple_assignments(self): _assert_transform( nodes.import_from(["."], [ nodes.import_alias("x", None), nodes.import_alias("y", None), ]), cc.statements([ cc.assign(cc.ref("x"), cc.attr(cc.module_ref(["."]), "x")), cc.assign(cc.ref("y"), cc.attr(cc.module_ref(["."]), "y")), ]), )