tests/coverage.py
changeset 2067 3094becfd8e8
parent 2066 a5d072f38a4a
child 2144 d3bddedfdbd0
equal deleted inserted replaced
2066:a5d072f38a4a 2067:3094becfd8e8
   346             execfile(sys.argv[0], __main__.__dict__)
   346             execfile(sys.argv[0], __main__.__dict__)
   347         if not args:
   347         if not args:
   348             args = self.cexecuted.keys()
   348             args = self.cexecuted.keys()
   349         ignore_errors = settings.get('ignore-errors')
   349         ignore_errors = settings.get('ignore-errors')
   350         show_missing = settings.get('show-missing')
   350         show_missing = settings.get('show-missing')
   351         directory = settings.get('directory=')
   351         directory = settings.get('directory')
   352         omit = settings.get('omit=')
   352         omit = filter(None, settings.get('omit', '').split(','))
   353         if omit is not None:
       
   354             omit = omit.split(',')
       
   355         else:
       
   356             omit = []
       
   357 
   353 
   358         if settings.get('report'):
   354         if settings.get('report'):
   359             self.report(args, show_missing, ignore_errors, omit_prefixes=omit)
   355             self.report(args, show_missing, ignore_errors, omit_prefixes=omit)
   360         if settings.get('annotate'):
   356         if settings.get('annotate'):
   361             self.annotate(args, directory, ignore_errors, omit_prefixes=omit)
   357             self.annotate(args, directory, ignore_errors, omit_prefixes=omit)
   363     def use_cache(self, usecache):
   359     def use_cache(self, usecache):
   364         self.usecache = usecache
   360         self.usecache = usecache
   365         
   361         
   366     def get_ready(self):
   362     def get_ready(self):
   367         if self.usecache and not self.cache:
   363         if self.usecache and not self.cache:
   368             self.cache = os.environ.get(self.cache_env, self.cache_default)
   364             self.cache = os.path.abspath(os.environ.get(self.cache_env,
       
   365                                                         self.cache_default))
   369             self.restore()
   366             self.restore()
   370         self.analysis_cache = {}
   367         self.analysis_cache = {}
   371         
   368         
   372     def start(self):
   369     def start(self):
   373         self.get_ready()
   370         self.get_ready()
   406         self.exclude_re = self.xstack.pop()
   403         self.exclude_re = self.xstack.pop()
   407 
   404 
   408     # save().  Save coverage data to the coverage cache.
   405     # save().  Save coverage data to the coverage cache.
   409 
   406 
   410     def save(self):
   407     def save(self):
       
   408         # move to directory that must exist.
       
   409         os.chdir(os.sep)
   411         if self.usecache and self.cache:
   410         if self.usecache and self.cache:
   412             self.canonicalize_filenames()
   411             self.canonicalize_filenames()
   413             cache = open(self.cache, 'wb')
   412             cache = open(self.cache, 'wb')
   414             import marshal
   413             import marshal
   415             marshal.dump(self.cexecuted, cache)
   414             marshal.dump(self.cexecuted, cache)