mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-22 21:32:31 +00:00
Improve Python tree-shaking
This commit is contained in:
parent
5bb2275788
commit
4f41f2184d
169 changed files with 4182 additions and 2411 deletions
128
third_party/python/Lib/test/test_reprlib.py
vendored
128
third_party/python/Lib/test/test_reprlib.py
vendored
|
@ -273,75 +273,75 @@ class LongReprTest(unittest.TestCase):
|
|||
elif os.name == 'nt' and verbose:
|
||||
print("cached_path_len =", cached_path_len)
|
||||
|
||||
def test_module(self):
|
||||
self.maxDiff = None
|
||||
self._check_path_limitations(self.pkgname)
|
||||
create_empty_file(os.path.join(self.subpkgname, self.pkgname + '.py'))
|
||||
importlib.invalidate_caches()
|
||||
from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import areallylongpackageandmodulenametotestreprtruncation
|
||||
module = areallylongpackageandmodulenametotestreprtruncation
|
||||
self.assertEqual(repr(module), "<module %r from %r>" % (module.__name__, module.__file__))
|
||||
self.assertEqual(repr(sys), "<module 'sys' (built-in)>")
|
||||
# def test_module(self):
|
||||
# self.maxDiff = None
|
||||
# self._check_path_limitations(self.pkgname)
|
||||
# create_empty_file(os.path.join(self.subpkgname, self.pkgname + '.py'))
|
||||
# importlib.invalidate_caches()
|
||||
# from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import areallylongpackageandmodulenametotestreprtruncation
|
||||
# module = areallylongpackageandmodulenametotestreprtruncation
|
||||
# self.assertEqual(repr(module), "<module %r from %r>" % (module.__name__, module.__file__))
|
||||
# self.assertEqual(repr(sys), "<module 'sys' (built-in)>")
|
||||
|
||||
def test_type(self):
|
||||
self._check_path_limitations('foo')
|
||||
eq = self.assertEqual
|
||||
write_file(os.path.join(self.subpkgname, 'foo.py'), '''\
|
||||
class foo(object):
|
||||
pass
|
||||
''')
|
||||
importlib.invalidate_caches()
|
||||
from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import foo
|
||||
eq(repr(foo.foo),
|
||||
"<class '%s.foo'>" % foo.__name__)
|
||||
# def test_type(self):
|
||||
# self._check_path_limitations('foo')
|
||||
# eq = self.assertEqual
|
||||
# write_file(os.path.join(self.subpkgname, 'foo.py'), '''\
|
||||
# class foo(object):
|
||||
# pass
|
||||
# ''')
|
||||
# importlib.invalidate_caches()
|
||||
# from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import foo
|
||||
# eq(repr(foo.foo),
|
||||
# "<class '%s.foo'>" % foo.__name__)
|
||||
|
||||
@unittest.skip('need a suitable object')
|
||||
def test_object(self):
|
||||
# XXX Test the repr of a type with a really long tp_name but with no
|
||||
# tp_repr. WIBNI we had ::Inline? :)
|
||||
pass
|
||||
# @unittest.skip('need a suitable object')
|
||||
# def test_object(self):
|
||||
# # XXX Test the repr of a type with a really long tp_name but with no
|
||||
# # tp_repr. WIBNI we had ::Inline? :)
|
||||
# pass
|
||||
|
||||
def test_class(self):
|
||||
self._check_path_limitations('bar')
|
||||
write_file(os.path.join(self.subpkgname, 'bar.py'), '''\
|
||||
class bar:
|
||||
pass
|
||||
''')
|
||||
importlib.invalidate_caches()
|
||||
from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import bar
|
||||
# Module name may be prefixed with "test.", depending on how run.
|
||||
self.assertEqual(repr(bar.bar), "<class '%s.bar'>" % bar.__name__)
|
||||
# def test_class(self):
|
||||
# self._check_path_limitations('bar')
|
||||
# write_file(os.path.join(self.subpkgname, 'bar.py'), '''\
|
||||
# class bar:
|
||||
# pass
|
||||
# ''')
|
||||
# importlib.invalidate_caches()
|
||||
# from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import bar
|
||||
# # Module name may be prefixed with "test.", depending on how run.
|
||||
# self.assertEqual(repr(bar.bar), "<class '%s.bar'>" % bar.__name__)
|
||||
|
||||
def test_instance(self):
|
||||
self._check_path_limitations('baz')
|
||||
write_file(os.path.join(self.subpkgname, 'baz.py'), '''\
|
||||
class baz:
|
||||
pass
|
||||
''')
|
||||
importlib.invalidate_caches()
|
||||
from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import baz
|
||||
ibaz = baz.baz()
|
||||
self.assertTrue(repr(ibaz).startswith(
|
||||
"<%s.baz object at 0x" % baz.__name__))
|
||||
# def test_instance(self):
|
||||
# self._check_path_limitations('baz')
|
||||
# write_file(os.path.join(self.subpkgname, 'baz.py'), '''\
|
||||
# class baz:
|
||||
# pass
|
||||
# ''')
|
||||
# importlib.invalidate_caches()
|
||||
# from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import baz
|
||||
# ibaz = baz.baz()
|
||||
# self.assertTrue(repr(ibaz).startswith(
|
||||
# "<%s.baz object at 0x" % baz.__name__))
|
||||
|
||||
def test_method(self):
|
||||
self._check_path_limitations('qux')
|
||||
eq = self.assertEqual
|
||||
write_file(os.path.join(self.subpkgname, 'qux.py'), '''\
|
||||
class aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
|
||||
def amethod(self): pass
|
||||
''')
|
||||
importlib.invalidate_caches()
|
||||
from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import qux
|
||||
# Unbound methods first
|
||||
r = repr(qux.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod)
|
||||
self.assertTrue(r.startswith('<function aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod'), r)
|
||||
# Bound method next
|
||||
iqux = qux.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa()
|
||||
r = repr(iqux.amethod)
|
||||
self.assertTrue(r.startswith(
|
||||
'<bound method aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod of <%s.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa object at 0x' \
|
||||
% (qux.__name__,) ), r)
|
||||
# def test_method(self):
|
||||
# self._check_path_limitations('qux')
|
||||
# eq = self.assertEqual
|
||||
# write_file(os.path.join(self.subpkgname, 'qux.py'), '''\
|
||||
# class aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
|
||||
# def amethod(self): pass
|
||||
# ''')
|
||||
# importlib.invalidate_caches()
|
||||
# from areallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncation import qux
|
||||
# # Unbound methods first
|
||||
# r = repr(qux.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod)
|
||||
# self.assertTrue(r.startswith('<function aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod'), r)
|
||||
# # Bound method next
|
||||
# iqux = qux.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa()
|
||||
# r = repr(iqux.amethod)
|
||||
# self.assertTrue(r.startswith(
|
||||
# '<bound method aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod of <%s.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa object at 0x' \
|
||||
# % (qux.__name__,) ), r)
|
||||
|
||||
@unittest.skip('needs a built-in function with a really long name')
|
||||
def test_builtin_function(self):
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue