Пример #1
0
 def test_summary_with_absolute_path(self):
     filename = os.sep.join([self.ctxt.basedir, 'test', 'module.py'])
     pickle.dump({
         filename: set([1, 4, 5]),
     }, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(self._create_file('test', 'module.py'))
     open(sourcefile, 'w').write("if foo: # line 1\n"
                                 "  print 'uncovered' # line 2\n"
                                 "else: # line 3 (uninteresting)\n"
                                 "  print 'covered' # line 4\n"
                                 "print 'covered' # line 6\n")
     pythontools.figleaf(self.ctxt,
                         summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(1, len(xml.children))
     child = xml.children[0]
     self.assertEqual('coverage', child.name)
     self.assertEqual('test.module', child.attr['name'])
     self.assertEqual('test/module.py', child.attr['file'])
     self.assertEqual(75, child.attr['percentage'])
     self.assertEqual(4, child.attr['lines'])
     self.assertEqual('1 0 - 1 1', child.attr['line_hits'])
Пример #2
0
 def test_summary_with_absolute_path(self):
     filename = os.sep.join([self.ctxt.basedir, 'test', 'module.py'])
     pickle.dump({
         filename: set([1, 4, 5]),
     }, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(self._create_file('test', 'module.py'))
     open(sourcefile, 'w').write(
         "if foo: # line 1\n"
         "  print 'uncovered' # line 2\n"
         "else: # line 3 (uninteresting)\n"
         "  print 'covered' # line 4\n"
         "print 'covered' # line 6\n"
     )
     pythontools.figleaf(self.ctxt, summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(1, len(xml.children))
     child = xml.children[0]
     self.assertEqual('coverage', child.name)
     self.assertEqual('test.module', child.attr['name'])
     self.assertEqual('test/module.py', child.attr['file'])
     self.assertEqual(75, child.attr['percentage'])
     self.assertEqual(4, child.attr['lines'])
     self.assertEqual('1 0 - 1 1', child.attr['line_hits'])
Пример #3
0
 def test_empty_summary(self):
     pickle.dump({}, self.summary)
     self.summary.close()
     pythontools.figleaf(self.ctxt, summary=self.summary.name, include='*.py')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(0, len(xml.children))
Пример #4
0
 def test_empty_summary(self):
     pickle.dump({}, self.summary)
     self.summary.close()
     pythontools.figleaf(self.ctxt,
                         summary=self.summary.name,
                         include='*.py')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(0, len(xml.children))
Пример #5
0
 def test_summary_with_non_python_files(self):
     "Figleaf coverage reports should not include files that do not end in .py"
     pickle.dump({}, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(self._create_file('test', 'document.txt'))
     open(sourcefile, 'w').write("\n")
     pythontools.figleaf(self.ctxt, summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(0, len(xml.children))
Пример #6
0
 def test_summary_with_non_python_files(self):
     "Figleaf coverage reports should not include files that do not end in .py"
     pickle.dump({}, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(
         self._create_file('test', 'document.txt'))
     open(sourcefile, 'w').write("\n")
     pythontools.figleaf(self.ctxt,
                         summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(0, len(xml.children))
Пример #7
0
 def test_summary_with_non_covered_file(self):
     pickle.dump({}, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(self._create_file('test', 'module.py'))
     open(sourcefile, 'w').write("print 'line 1'\n"
                                 "print 'line 2'\n"
                                 "print 'line 3'\n"
                                 "print 'line 4'\n"
                                 "print 'line 5'\n")
     pythontools.figleaf(self.ctxt,
                         summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(1, len(xml.children))
     child = xml.children[0]
     self.assertEqual('coverage', child.name)
     self.assertEqual('test.module', child.attr['name'])
     self.assertEqual('test/module.py', child.attr['file'])
     self.assertEqual(0, child.attr['percentage'])
     self.assertEqual(5, child.attr['lines'])
Пример #8
0
 def test_summary_with_non_covered_file(self):
     pickle.dump({}, self.summary)
     self.summary.close()
     sourcefile = self.ctxt.resolve(self._create_file('test', 'module.py'))
     open(sourcefile, 'w').write(
         "print 'line 1'\n"
         "print 'line 2'\n"
         "print 'line 3'\n"
         "print 'line 4'\n"
         "print 'line 5'\n"
     )
     pythontools.figleaf(self.ctxt, summary=self.summary.name,
                         include='test/*')
     type, category, generator, xml = self.ctxt.output.pop()
     self.assertEqual(Recipe.REPORT, type)
     self.assertEqual('coverage', category)
     self.assertEqual(1, len(xml.children))
     child = xml.children[0]
     self.assertEqual('coverage', child.name)
     self.assertEqual('test.module', child.attr['name'])
     self.assertEqual('test/module.py', child.attr['file'])
     self.assertEqual(0, child.attr['percentage'])
     self.assertEqual(5, child.attr['lines'])
Пример #9
0
 def test_missing_coverage_file(self):
     self.summary.close()
     pythontools.figleaf(self.ctxt,
                         summary='non-existant-file',
                         include='*.py')
     self.assertEqual([], self.ctxt.output)
Пример #10
0
 def test_missing_coverage_file(self):
     self.summary.close()
     pythontools.figleaf(self.ctxt, summary='non-existant-file', include='*.py')
     self.assertEqual([], self.ctxt.output)