def test(): figleaf.start() common() figleaf.start_section('a') a() figleaf.stop_section() common2() figleaf.start_section('b') b() figleaf.start_section('c') c() figleaf.stop() in_common = set() union = set() expected = dict(a = set([17, 18, 11, 14]), b = set([22, 11, 21, 14]), c = set([25, 26, 11, 14])) for i in ('a', 'b', 'c'): actual = figleaf.get_info(section_name=i).get(thisfile()) print '******', thisfile() print 'section:', i, '; lines:', actual print expected[i] x = list(expected[i]) x.sort() y = list(actual) y.sort() print x, y assert x == y # note: depends on absolute line no. # so don't shift lines in this file ;) if not in_common: in_common.update(actual) else: in_common.intersection_update(actual) union.update(actual) in_common = list(in_common) in_common.sort() print 'common:', in_common assert in_common == [11, 14] union = list(union) union.sort() print 'union:', union assert union == [11, 14, 17, 18, 21, 22, 25, 26]
def _intercept(self, env, start_response): import figleaf try: import cPickle as pickle except ImportError: import pickle coverage = figleaf.get_info() s = pickle.dumps(coverage) start_response("200 OK", [('Content-type', 'application/x-pickle')]) return [s]
def _getModuleCoverage(self, module): """Yield coverage for files that belongs to module. """ coverageMap = figleaf.get_info() self._gatherFiles(coverageMap) if module in self.moduleFilenameMap: for filename in sorted(self.moduleFilenameMap[module]): try: yield filename, self._getFileCoverage(filename, coverageMap) except IOError: continue
def __call__(self, env, start_response): import figleaf try: import cPickle as pickle except ImportError: import pickle if env['PATH_INFO'] == '/_coverage': coverage = figleaf.get_info() s = pickle.dumps(coverage) start_response("200 OK", [('Content-type', 'application/x-pickle')]) return [s] return self.app(env, start_response)
def _getFileCoverage(self, filename, coverageMap=None): """Return coverage information about file specified by filename. """ if coverageMap is None: coverageMap = figleaf.get_info() num_total, num_covered = 0, 0, lines = figleaf.get_lines(open(filename)) for i, line in enumerate(open(filename)): if (i + 1) in coverageMap[filename]: num_total += 1 num_covered += 1 elif (i + 1) in lines: num_total += 1 return num_covered, num_total
error = None result = None figleaf.start() try: if hasattr(handler, "process"): result = handler(args, remoteHost, session).process() else: result = handler(args, remoteHost, session) except Exception, e: error = "%s: %s" % (e.__class__, str(e)) results[methodName] = { 'parameters': args, 'result': result, 'error': error } coverage = figleaf.get_info() fData = cPickle.dumps(coverage) figleaf.stop() return {"results": results, "figLeafData": fData} methodMap = {"login": SystemLogin, "echo": echo, "runCoverage": runCoverage}
res = {} total_failed = 0 score ={}#[1,2,3] for file in os.listdir('.'): if fnmatch.fnmatch(file, 'test_*.py'): print(file) figleaf.get_trace_obj(); figleaf.start() f = file[:-3] mod=importlib.import_module(f) funcName = getName(file) result = getattr(mod,funcName)() score[i]=result print("result :"+str(result)) figleaf.stop() res[i]=figleaf.get_info('test3.py') # res[i]=figleaf.annotate_coverage('test3.py') # figleaf.stop() print(res) i+=1 print("score: "+str(score)) print("res: "+str(res)) print("---------------------------------------") for x in range(0,len(score)): total_failed += score[x] total_tests = len(res) print("Total tests: " + str(total_tests)) total_passed = total_tests - total_failed passed = 0 print("total failed: "+str(total_failed))
figleaf.start() try: if hasattr(handler, "process"): result = handler(args, remoteHost, session).process() else: result = handler(args, remoteHost, session) except Exception, e: error = "%s: %s" % (e.__class__, str(e)) results[methodName] = { 'parameters': args, 'result': result, 'error': error } coverage = figleaf.get_info() fData = cPickle.dumps(coverage) figleaf.stop() return {"results": results, "figLeafData": fData } methodMap = { "login": SystemLogin, "echo": echo, "runCoverage": runCoverage }
def test(): figleaf.start() common() figleaf.start_section('a') a() figleaf.stop_section() common2() figleaf.start_section('b') b() figleaf.start_section('c') c() figleaf.stop() in_common = set() union = set() expected = dict(a = set([17, 18, 11, 14]), b = set([11, 14, 21, 22]), c = set([11, 14, 25, 26])) expected_in_common = [11, 14] expected_union = [11, 14, 17, 18, 21, 22, 25, 26] if figleaf.internals.PythonCollector is not figleaf.internals.Collector: expected['a'].update([40, 42, 43, 44, 45, 47]) expected['b'].update([40, 42, 45, 47, 48, 49]) expected['c'].update([40, 42, 45, 47, 50, 51]) expected_in_common += [40, 42, 45, 47] expected_union += [40, 42, 43, 44, 45, 47, 48, 49, 50, 51] for i in ('a', 'b', 'c'): actual = figleaf.get_info(section_name=i).get(thisfile()) print '******', thisfile() print 'section:', i, '; lines:', actual print expected[i] x = list(expected[i]) x.sort() y = list(actual) y.sort() print x, y assert x == y # note: depends on absolute line no. # so don't shift lines in this file ;) if not in_common: in_common.update(actual) else: in_common.intersection_update(actual) union.update(actual) in_common = list(in_common) in_common.sort() print 'common:', in_common assert in_common == expected_in_common union = list(union) union.sort() print 'union:', union assert union == expected_union
res = {} total_failed = 0 score = {} #[1,2,3] for file in os.listdir('.'): if fnmatch.fnmatch(file, 'test_*.py'): print(file) figleaf.get_trace_obj() figleaf.start() f = file[:-3] mod = importlib.import_module(f) funcName = getName(file) result = getattr(mod, funcName)() score[i] = result print("result :" + str(result)) figleaf.stop() res[i] = figleaf.get_info('test3.py') # res[i]=figleaf.annotate_coverage('test3.py') # figleaf.stop() print(res) i += 1 print("score: " + str(score)) print("res: " + str(res)) print("---------------------------------------") for x in range(0, len(score)): total_failed += score[x] total_tests = len(res) print("Total tests: " + str(total_tests)) total_passed = total_tests - total_failed passed = 0 print("total failed: " + str(total_failed))