Changeset 421
- Timestamp:
- 07/07/05 00:33:34
- Files:
-
- trunk/cherrypy/lib/covercp.py (modified) (4 diffs)
- trunk/cherrypy/test/test.py (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/cherrypy/lib/covercp.py
r419 r421 37 37 import sys 38 38 import os, os.path 39 localFile = os.path.join(os.path.dirname(__file__), "coverage.cache") 39 40 40 41 try: … … 46 47 try: 47 48 from coverage import the_coverage as coverage 48 coverage.cache_default = os.path.join(os.path.dirname(__file__),49 "coverage.cache")50 51 49 def start(): 52 50 coverage.start() … … 77 75 def menu(self): 78 76 yield "<h2>CherryPy Coverage</h2>" 79 if coverage is None: 80 yield "<p>The coverage module could not be imported.</p>" 81 else: 82 yield "<p>Click on one of the modules below to see coverage analysis.</p>" 83 coverage.get_ready() 84 runs = coverage.cexecuted.keys() 85 runs.sort() 86 if runs: 87 base = "" 88 for i in runs: 89 newbase, fname = os.path.split(i) 90 if base != newbase: 91 base = newbase 92 yield "<h3>%s</h3>\n" % newbase 93 yield ("<a href='report?name=%s' target='main'>%s</a><br />\n" 94 % (i, fname)) 77 yield "<p>Click on one of the modules below to see coverage analysis.</p>" 78 coverage.get_ready() 79 runs = [os.path.split(x) for x in coverage.cexecuted.keys()] 80 runs.sort() 81 if runs: 82 base = "" 83 for x in runs: 84 newbase, fname = x 85 if base != newbase: 86 base = newbase 87 yield "<h3>%s</h3>\n" % newbase 88 yield ("<a href='report?name=%s' target='main'>%s</a><br />\n" 89 % (os.path.join(newbase, fname), fname)) 95 90 menu.exposed = True 96 91 … … 139 134 140 135 def report(self, name): 141 if coverage is None: 142 return "<p>The coverage module could not be imported.</p>" 143 else: 144 import cherrypy 145 cherrypy.response.headerMap['Content-Type'] = 'text/plain' 146 filename, statements, excluded, missing, _ = coverage.analysis2(name) 147 return self.annotated_file(filename, statements, excluded, missing) 136 import cherrypy 137 cherrypy.response.headerMap['Content-Type'] = 'text/plain' 138 filename, statements, excluded, missing, _ = coverage.analysis2(name) 139 return self.annotated_file(filename, statements, excluded, missing) 148 140 report.exposed = True 149 141 150 142 151 def serve(port=8080): 143 def serve(path=localFile, port=8080): 144 if coverage is None: 145 raise ImportError("<p>The coverage module could not be imported.</p>") 146 coverage.cache_default = path 147 152 148 import cherrypy 153 149 cherrypy.root = CoverStats() trunk/cherrypy/test/test.py
r418 r421 186 186 try: 187 187 from coverage import the_coverage as coverage 188 coverage.cache_default = os.path.join(os.path.dirname(__file__), 189 "../lib/coverage.cache") 188 coverage.cache_default = c = os.path.join(os.path.dirname(__file__), 189 "../lib/coverage.cache") 190 if c and os.path.exists(c): 191 os.remove(c) 190 192 coverage.start() 191 193 except ImportError: … … 248 250 249 251 if coverage: 252 coverage.save() 250 253 report_coverage(coverage) 251 254 print "run /cherrypy/lib/covercp.py as a script to serve coverage results on port 8080"

