Ñò ñ” ]c@stdZddkZddkZddkZddkZddkZddkZddkZddkZddk Z ddk Z yddk Z e Z Wne j oddk Z nXd„ZdZeidƒZddd„ƒYZd„Zd „Zd dd „ƒYZd „Zd „Zd„Zd„Zddd„ƒYZd„Zdd„Zedjo eƒndS(sªprogram/module to trace Python program or function execution Sample use, command line: trace.py -c -f counts --ignore-dir '$prefix' spam.py eggs trace.py -t --ignore-dir '$prefix' spam.py eggs trace.py --trackcalls spam.py eggs Sample use, programmatically import sys # create a Trace object, telling it what to ignore, and whether to # do tracing or line-counting or both. tracer = trace.Trace(ignoredirs=[sys.prefix, sys.exec_prefix,], trace=0, count=1) # run the new command using the given tracer tracer.run('main()') # make a report, placing output in /tmp r = tracer.results() r.write_results(show_missing=True, coverdir="/tmp") iÿÿÿÿNcCs|idtidƒdS(Ns Usage: %s [OPTIONS] [ARGS] Meta-options: --help Display this help then exit. --version Output version information then exit. Otherwise, exactly one of the following three options must be given: -t, --trace Print each line to sys.stdout before it is executed. -c, --count Count the number of times each line is executed and write the counts to .cover for each module executed, in the module's directory. See also `--coverdir', `--file', `--no-report' below. -l, --listfuncs Keep track of which functions are executed at least once and write the results to sys.stdout after the program exits. -T, --trackcalls Keep track of caller/called pairs and write the results to sys.stdout after the program exits. -r, --report Generate a report from a counts file; do not execute any code. `--file' must specify the results file to read, which must have been created in a previous run with `--count --file=FILE'. Modifiers: -f, --file= File to accumulate counts over several runs. -R, --no-report Do not generate the coverage report files. Useful if you want to accumulate over several runs. -C, --coverdir= Directory where the report files. The coverage report for . is written to file //.cover. -m, --missing Annotate executable lines that were not executed with '>>>>>> '. -s, --summary Write a brief summary on stdout for each file. (Can only be used with --count or --report.) -g, --timing Prefix each line with the time since the program started. Only used while tracing. Filters, may be repeated multiple times: --ignore-module= Ignore the given module(s) and its submodules (if it is a package). Accepts comma separated list of module names --ignore-dir= Ignore files in the given directory (multiple directories can be joined by os.pathsep). i(twritetsystargv(toutfile((s/usr/lib64/python2.6/trace.pytusageCs*s#pragma NO COVERs ^\s*(#.*)?$tIgnorecBs eZddd„Zd„ZRS(cCsO|pg|_|pg|_ttii|iƒ|_hdd6|_dS(Nis(t_modst_dirstmaptostpathtnormpatht_ignore(tselftmodulestdirs((s/usr/lib64/python2.6/trace.pyt__init__vscCsÿ|ii|ƒo |i|Sxp|iD]e}||jod|i|s %s.%s -> %s.%sss >>>>> i(ii( R9R<RR?t enumerateRtrx_blanktmatchtPRAGMA_NOCOVERt expandtabstclose( R R tlinesRiRfRR@RmRltitlineRe((s/usr/lib64/python2.6/trace.pyRTUs0         N( RRRRR:tTruetFalseRqRT(((s/usr/lib64/python2.6/trace.pyR/Ís   [c Cs’h}g}|iddd…D]}|t|ƒq!~}t|ƒ}t}|i}x3|D]+} || 7}||jod|||iD]3}t|tiƒo|it||ƒƒqqW|S(s<Return lineno dict for all code objects reachable from code.(RŠt co_constst isinstancettypestCodeTypeR:t find_lines(RR‚RƒR…((s/usr/lib64/python2.6/trace.pyR‰s  cCsÃh}ti}t|ƒ}x—ti|iƒD]ƒ\}}}}}|tijoX|tijoD|\} } |\} } x)t| | dƒD]} d|| s cCs1|djo |i|ƒ}d|i|| ƒnY|t_|d}tii |ƒdtid| ƒndS(JNiÿÿÿÿistcrRf:d:msC:lTgthelptversionR¬Rhtreports no-reportRXsfile=tmissingsignore-module=s ignore-dir=s coverdir=t listfuncst trackcallsR¾s%s: %s is%Try `%s --help' for more information s--helps --versions trace 2.0 s-Ts --trackcallss-ls --listfuncss-gs--timings-ts--traces-cs--counts-rs--reports-Rs --no-reports-fs--files-ms --missings-Cs --coverdirs-ss --summarys--ignore-modulet,s --ignore-dirs$prefixtlibtpythonis $exec_prefixs8cannot specify both --listfuncs and (--trace or --count)sLmust specify one of --trace, --count, --report, --listfuncs, or --trackcallss,cannot specify both --report and --no-reports--report requires a --filesmissing name of file to runR6RRYRºR»R¼R½R£RæR¿Rt __package__t __cached__sCannot run file %r because: %s('tgetoptRRRterrorR?RRíR}RtstdoutR|R×tappendtstripR tpathsepR t expandvarsR'RStprefixRñt exec_prefixR RïRR/RqR§R9t__exit__t __enter__R¥R¤RÈR<t SystemExitRì(RRûtoptst prog_argvRîR¬RhRòt no_reportt counts_fileRótignore_modulest ignore_dirsRYRXRôR»R¾topttvalRtsRìtprognamettR„tfpRtglobsR@((s/usr/lib64/python2.6/trace.pytmain—sú     !         #    #  R¿((((t__doc__RQR treRRÂR±RR’RRÓtcPickleR7t ImportErrorRRvR¥RtRR#R.R/RŠRR¡RPR§RïRRR(((s/usr/lib64/python2.6/trace.pyt0s>             -5  ¬   Û  Ÿ