diff options
Diffstat (limited to 'test/test_data.py')
-rw-r--r-- | test/test_data.py | 68 |
1 files changed, 66 insertions, 2 deletions
diff --git a/test/test_data.py b/test/test_data.py index 6e3d13f0..04dd9f28 100644 --- a/test/test_data.py +++ b/test/test_data.py @@ -3,8 +3,72 @@ from coverage.data import CoverageData from coveragetest import CoverageTest +try: + set() +except: + from sets import Set as set + +DATA_1 = [ ('a.py',1), ('a.py',2), ('b.py',3) ] +SUMMARY_1 = { 'a.py':2, 'b.py':1 } +EXECED_FILES_1 = [ 'a.py', 'b.py' ] + +DATA_2 = [ ('a.py',1), ('a.py',5), ('c.py',17) ] +SUMMARY_1_2 = { 'a.py':3, 'b.py':1, 'c.py':1 } +EXECED_FILES_1_2 = [ 'a.py', 'b.py', 'c.py' ] + class DataTest(CoverageTest): - def test_reading(self): + + def assert_summary(self, covdata, summary): + self.assertEqual(covdata.summary(), summary) + + def assert_executed_files(self, covdata, execed): + e1 = set(covdata.executed_files()) + e2 = set(execed) + self.assertEqual(e1, e2) + + def test_reading_empty(self): covdata = CoverageData() covdata.read() - self.assertEqual(covdata.summary(), {}) + self.assert_summary(covdata, {}) + + def test_adding_data(self): + covdata = CoverageData() + covdata.add_line_data(DATA_1) + self.assert_summary(covdata, SUMMARY_1) + self.assert_executed_files(covdata, EXECED_FILES_1) + + def test_writing_and_reading(self): + covdata1 = CoverageData() + covdata1.add_line_data(DATA_1) + covdata1.write() + + covdata2 = CoverageData() + covdata2.read() + self.assert_summary(covdata2, SUMMARY_1) + + def test_combining(self): + covdata1 = CoverageData() + covdata1.set_suffix('1') + covdata1.add_line_data(DATA_1) + covdata1.write() + + covdata2 = CoverageData() + covdata2.set_suffix('2') + covdata2.add_line_data(DATA_2) + covdata2.write() + + covdata3 = CoverageData() + covdata3.combine_parallel_data() + self.assert_summary(covdata3, SUMMARY_1_2) + self.assert_executed_files(covdata3, EXECED_FILES_1_2) + + def test_erasing(self): + covdata1 = CoverageData() + covdata1.add_line_data(DATA_1) + covdata1.write() + covdata1.erase() + self.assert_summary(covdata1, {}) + + covdata2 = CoverageData() + covdata2.read() + self.assert_summary(covdata2, {}) |