def testStoreAndLoadFromNamedTuple(self): ty = self.Infer(""" import collections t = collections.namedtuple('t', ['x', 'y', 'z']) t.x = 3 t.y = "foo" t.z = 1j x = t.x y = t.y z = t.z """) name = collections_overlay.namedtuple_name("t", ["x", "y", "z"]) ast = collections_overlay.namedtuple_ast(name, ["x", "y", "z"], self.python_version) expected = pytd.Print(ast) + textwrap.dedent(""" collections = ... # type: module t = {name} x = ... # type: int y = ... # type: str z = ... # type: complex""").format(name=name) self.assertTypesMatchPytd(ty, expected)
def _namedtuple_ast(self, name, fields): return collections_overlay.namedtuple_ast(name, fields, self.PYTHON_VERSION)
def _namedtuple_ast(self, name, fields): return collections_overlay.namedtuple_ast(name, fields, self.python_version)