mirror of
https://github.com/pytorch/pytorch.git
synced 2025-10-20 21:14:14 +08:00
Summary: Action following https://github.com/pytorch/pytorch/issues/66232 Pull Request resolved: https://github.com/pytorch/pytorch/pull/66830 Reviewed By: albanD Differential Revision: D31905820 Pulled By: janeyx99 fbshipit-source-id: 9496acc98339d689fa62e18a8781d7344903a64c
44 lines
1.0 KiB
Python
44 lines
1.0 KiB
Python
# Owner(s): ["oncall: package/deploy"]
|
|
|
|
import textwrap
|
|
import types
|
|
|
|
from torch.utils._freeze import Freezer, PATH_MARKER
|
|
from torch.testing._internal.common_utils import run_tests, TestCase
|
|
|
|
|
|
class TestFreezer(TestCase):
|
|
"""Tests the freeze.py script"""
|
|
|
|
def test_compile_string(self):
|
|
freezer = Freezer(True)
|
|
code_str = textwrap.dedent(
|
|
"""
|
|
class MyCls:
|
|
def __init__(self):
|
|
pass
|
|
"""
|
|
)
|
|
co = freezer.compile_string(code_str)
|
|
num_co = 0
|
|
|
|
def verify_filename(co: types.CodeType):
|
|
nonlocal num_co
|
|
|
|
if not isinstance(co, types.CodeType):
|
|
return
|
|
|
|
self.assertEqual(PATH_MARKER, co.co_filename)
|
|
num_co += 1
|
|
|
|
for nested_co in co.co_consts:
|
|
verify_filename(nested_co)
|
|
|
|
verify_filename(co)
|
|
# there is at least one nested code object besides the top level one
|
|
self.assertTrue(num_co >= 2)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
run_tests()
|