ACC SHELL
Path : /usr/lib/python/ |
|
Current File : //usr/lib/python/trace.pyc |
oMc @ st d Z d d k Z d d k Z d d k Z d d k Z d d k Z d d k Z d d k Z d d k Z d d k Z d d k
Z
y d d k Z e Z Wn e
j
o d d k Z n Xd Z d Z e i d Z d d d YZ d Z d Z d
d d YZ d Z d
Z d Z d Z d d d YZ d Z d d Z e d j o e n d S( 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")
iNc C s | i d t i d d S( Ns Usage: %s [OPTIONS] <file> [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 <module>.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> 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=<dir> Directory where the report files. The coverage
report for <package>.<module> is written to file
<dir>/<package>/<module>.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=<mod> Ignore the given module(s) and its submodules
(if it is a package). Accepts comma separated
list of module names
--ignore-dir=<dir> Ignore files in the given directory (multiple
directories can be joined by os.pathsep).
i ( t writet syst argv( t outfile( ( s /usr/lib/python2.6/trace.pyt usageD s *s #pragma NO COVERs ^\s*(#.*)?$t Ignorec B s e Z d d d Z d Z RS( c C sO | p g | _ | p g | _ t t i i | i | _ h d d 6| _ d S( Ni s <string>( t _modst _dirst mapt ost patht normpatht _ignore( t selft modulest dirs( ( s /usr/lib/python2.6/trace.pyt __init__w s c C s | i i | o | i | Sxp | i D]e } | | j o d | i | <d St | } | | | j o# | | d j o d | i | <d Sq) W| d j o d | i | <d Sx: | i D]/ } | i | t i o d | i | <d Sq Wd | i | <d S( Ni t .i ( R t has_keyR t lent NoneR t
startswithR t sep( R
t filenamet
modulenamet modt nt d( ( s /usr/lib/python2.6/trace.pyt names~ s*
"
N( t __name__t
__module__R R R ( ( ( s /usr/lib/python2.6/trace.pyR v s c C s. t i i | } t i i | \ } } | S( s- Return a plausible module name for the patch.( R R
t basenamet splitext( R
t baseR t ext( ( s /usr/lib/python2.6/trace.pyt modname s c C s t i i | } d } xt t i D]i } t i i | } | i | oA | t | t i j o' t | t | j o
| } q q"