File: test_getframe.py

package info (click to toggle)
pypy3 7.0.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 111,848 kB
  • sloc: python: 1,291,746; ansic: 74,281; asm: 5,187; cpp: 3,017; sh: 2,533; makefile: 544; xml: 243; lisp: 45; csh: 21; awk: 4
file content (25 lines) | stat: -rw-r--r-- 694 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from pypy.module.pypyjit.test_pypy_c.test_00_model import BaseTestPyPyC


class TestGetFrame(BaseTestPyPyC):
    def test_getframe_one(self):
        def main(n):
            import sys

            i = 0
            while i < n:
                assert sys._getframe(0).f_code.co_filename == __file__
                i += 1
            return i

        log = self.run(main, [300])
        assert log.result == 300
        loop, = log.loops_by_filename(self.filepath)
        assert loop.match("""
        i54 = int_lt(i47, i28)
        guard_true(i54, descr=...)
        guard_not_invalidated(descr=...)
        i55 = int_add(i47, 1)
        --TICK--
        jump(..., descr=...)
        """)