File: p011_libcall_nested.py

package info (click to toggle)
uftrace 0.18.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 5,356 kB
  • sloc: ansic: 49,770; python: 11,181; asm: 837; makefile: 769; sh: 637; cpp: 627; javascript: 191
file content (32 lines) | stat: -rw-r--r-- 1,232 bytes parent folder | download | duplicates (2)
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
26
27
28
29
30
31
32
#!/usr/bin/env python3

from runtest import PyTestBase

# json.dumps() might be implemented differently depending on versions
class TestCase(PyTestBase):
    def __init__(self):
        PyTestBase.__init__(self, 'libmain', """
# DURATION     TID     FUNCTION
            [ 12889] | __main__.<module>() {
            [ 12889] |   myfunc() {
            [ 12889] |     mymod.public_func() {
            [ 12889] |       mymod.internal() {
            [ 12889] |         json.dumps() {
  16.521 us [ 12889] |           json.encoder.JSONEncoder.encode();
  19.719 us [ 12889] |         } /* json.dumps */
  23.313 us [ 12889] |       } /* mymod.internal */
            [ 12889] |       mymod.internal() {
            [ 12889] |         json.dumps() {
   6.233 us [ 12889] |           json.encoder.JSONEncoder.encode();
   7.311 us [ 12889] |         } /* json.dumps */
   8.484 us [ 12889] |       } /* mymod.internal */
  34.855 us [ 12889] |     } /* mymod.public_func */
  37.884 us [ 12889] |   } /* myfunc */
  10.610 ms [ 12889] | } /* __main__.<module> */
""")

    def setup(self):
        self.option = '--nest-libcall -N ^importlib -D 6'

    def fixup(self, cflags, result):
        return result.replace(".JSONEncoder", "")