summaryrefslogtreecommitdiff
path: root/test/test_summary.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_summary.py')
-rw-r--r--test/test_summary.py60
1 files changed, 40 insertions, 20 deletions
diff --git a/test/test_summary.py b/test/test_summary.py
index 1612777d..bbf5f026 100644
--- a/test/test_summary.py
+++ b/test/test_summary.py
@@ -36,7 +36,7 @@ class SummaryTest(CoverageTest):
def test_report(self):
out = self.run_command("coverage -x mycode.py")
self.assertEqual(out, 'done\n')
- report1 = self.report_from_command("coverage -r")
+ report = self.report_from_command("coverage -r")
# Name Stmts Exec Cover
# ---------------------------------------------------------------------
@@ -46,41 +46,61 @@ class SummaryTest(CoverageTest):
# ---------------------------------------------------------------------
# TOTAL 8 8 100%
- self.assert_("/coverage/__init__/" not in report1)
- self.assert_("/test/modules/covmod1 " in report1)
- self.assert_("/test/zipmods.zip/covmodzip1 " in report1)
- self.assert_("mycode " in report1)
- self.assertEqual(self.last_line_squeezed(report1), "TOTAL 8 8 100%")
+ self.assert_("/coverage/__init__/" not in report)
+ self.assert_("/test/modules/covmod1 " in report)
+ self.assert_("/test/zipmods.zip/covmodzip1 " in report)
+ self.assert_("mycode " in report)
+ self.assertEqual(self.last_line_squeezed(report), "TOTAL 8 8 100%")
def test_report_just_one(self):
# Try reporting just one module
self.run_command("coverage -x mycode.py")
- report2 = self.report_from_command("coverage -r mycode.py")
+ report = self.report_from_command("coverage -r mycode.py")
# Name Stmts Exec Cover
# ----------------------------
# mycode 4 4 100%
- self.assertEqual(self.line_count(report2), 3)
- self.assert_("/coverage/" not in report2)
- self.assert_("/test/modules/covmod1 " not in report2)
- self.assert_("/test/zipmods.zip/covmodzip1 " not in report2)
- self.assert_("mycode " in report2)
- self.assertEqual(self.last_line_squeezed(report2), "mycode 4 4 100%")
+ self.assertEqual(self.line_count(report), 3)
+ self.assert_("/coverage/" not in report)
+ self.assert_("/test/modules/covmod1 " not in report)
+ self.assert_("/test/zipmods.zip/covmodzip1 " not in report)
+ self.assert_("mycode " in report)
+ self.assertEqual(self.last_line_squeezed(report), "mycode 4 4 100%")
def test_report_omitting(self):
# Try reporting while omitting some modules
prefix = os.path.split(__file__)[0]
self.run_command("coverage -x mycode.py")
- report3 = self.report_from_command("coverage -r -o %s" % prefix)
+ report = self.report_from_command("coverage -r -o %s" % prefix)
# Name Stmts Exec Cover
# ----------------------------
# mycode 4 4 100%
- self.assertEqual(self.line_count(report3), 3)
- self.assert_("/coverage/" not in report3)
- self.assert_("/test/modules/covmod1 " not in report3)
- self.assert_("/test/zipmods.zip/covmodzip1 " not in report3)
- self.assert_("mycode " in report3)
- self.assertEqual(self.last_line_squeezed(report3), "mycode 4 4 100%")
+ self.assertEqual(self.line_count(report), 3)
+ self.assert_("/coverage/" not in report)
+ self.assert_("/test/modules/covmod1 " not in report)
+ self.assert_("/test/zipmods.zip/covmodzip1 " not in report)
+ self.assert_("mycode " in report)
+ self.assertEqual(self.last_line_squeezed(report), "mycode 4 4 100%")
+
+ def test_report_branches(self):
+ self.make_file("mybranch.py", """\
+ def branch(x):
+ if x:
+ print("x")
+ return x
+ branch(1)
+ """)
+ out = self.run_command("coverage run --branch mybranch.py")
+ self.assertEqual(out, 'x\n')
+ report = self.report_from_command("coverage -r")
+
+ # Name Stmts Exec Branch BrExec Cover
+ # --------------------------------------------
+ # mybranch 5 5 4 3 88%
+
+ self.assertEqual(self.line_count(report), 3)
+ self.assert_("mybranch " in report)
+ self.assertEqual(self.last_line_squeezed(report), "mybranch 5 5 4 3 88%")