def testEmptyResult(self, print_result, os_walk, mock_open, _): def check_empty_result(result, options, scheme, _): self.assertEqual([], list(result)) return 0 os_walk.return_value = [('.', [], [])] print_result.side_effect = check_empty_result lizard.main(['lizard'])
def run_with_mocks(self, argv, src, print_result, mock_open): def store_result(result, options, scheme): self.fileInfos = list(result) return self.returned_warning_count mock_open.return_value = src print_result.side_effect = store_result lizard.main(argv) return self.fileInfos
def testEmptyResult(self, print_result, os_walk, mock_open, _): def check_empty_result(result, options, scheme): self.assertEqual([], list(result)) return 0 os_walk.return_value = [('.', [], [])] print_result.side_effect = check_empty_result lizard.main(['lizard'])
def testFilesWithFunction(self, print_result, os_walk, mock_open, _): def check_result(result, options, scheme): fileInfos = list(result) self.assertEqual(1, len(fileInfos)) self.assertEqual('foo', fileInfos[0].function_list[0].name) return 0 os_walk.return_value = [('.', [], ['a.cpp'])] mock_open.return_value = "void foo(){}" print_result.side_effect = check_result lizard.main(['lizard'])
def output_test(self, file_name, expected_first_line): path = join(self.tmp_dir, file_name) args = ["lizard", "--verbose", "--output_file", path, "test/data"] main(args) first_line = open(path, 'r').readline().strip('\n') self.assertEqual(first_line, expected_first_line)
raise ValueError('variance requires at least two data points') ss = _ss(data) pvar = ss / (n - ddof) return pvar**0.5 def stddev(data, ddof=0): return 0 if __name__ == '__main__': for test in tests: for _ in xrange(lizard_loops): start_time = time.time() lizard.main([ '/Users/ben/thesis/lizard/lizard.py', test, '-Einstructioncount' ]) total_time.append(time.time() - start_time) mean_time = mean(total_time) std = stddev(total_time) print("Lizard & %s & %d & %d" % (mean_time, lizard_loops, std)) total_time = [] for _ in xrange(clang_loops): start_time = time.time() process = call(['clang', 'main.cpp']) total_time.append(time.time() - start_time) mean_time = mean(total_time) std = stddev(total_time)
import re import lizard import os import sys import re import sys import pandas as pd import numpy as np str = "minVal = a < b ? a : b;" x = re.findall(r'(^[_a-zA-Z0-9]*( *)=(.*?)[\?](.*?):( *)(.*))', str) print(lizard.__file__) path = os.path.dirname(os.path.realpath(__file__)) + "/jfiles2/" data = lizard.main(["lizard.py", "-l", "java", "jfiles/"]) df = pd.DataFrame(data, columns=[ "Filename", "total.nloc", "avg.nloc", "avg.ccn", "avg.token", "function_cnt" ]) print(df) # argv = ["lizard.py", "-l", "java", path] # print(lizard.main(["lizard.py", "-l", "java", "--csv", path])) # print(lizard.print_extension_results()) # for x in lizard.analyze(path): # # average_nloc = str(x.average_nloc) # print(x) # # print(lizard.analyze("jfiles/")) # x = os.popen("lizard -l java jfiles2/").read() """Command-line entrance to Lizard. Args:
from lizard import main import cProfile, pstats, StringIO import sys if __name__ == "__main__": pr = cProfile.Profile() pr.enable() main() pr.disable() s = StringIO.StringIO() sortby = 'tottime' ps = pstats.Stats(pr, stream=s).sort_stats(sortby) ps.print_stats() print s.getvalue()