diff options
author | Ned Batchelder <ned@nedbatchelder.com> | 2009-04-18 20:01:57 -0400 |
---|---|---|
committer | Ned Batchelder <ned@nedbatchelder.com> | 2009-04-18 20:01:57 -0400 |
commit | b97380c4a3a97ac2469ace44005dc63857daf245 (patch) | |
tree | 72d2bc9e6ba280c21c2bdc41d0f764b2fcd5ee39 /test/test_data.py | |
parent | d0a794abfae0fb1d115c5979c9a8dc5c07a12b9c (diff) | |
download | python-coveragepy-git-b97380c4a3a97ac2469ace44005dc63857daf245.tar.gz |
New more flexible data storage.
Diffstat (limited to 'test/test_data.py')
-rw-r--r-- | test/test_data.py | 31 |
1 files changed, 22 insertions, 9 deletions
diff --git a/test/test_data.py b/test/test_data.py index 568fd380..39d5ecd3 100644 --- a/test/test_data.py +++ b/test/test_data.py @@ -1,32 +1,28 @@ """Tests for coverage.data""" +import cPickle as pickle from coverage.data import CoverageData from coveragetest import CoverageTest -try: - set() -except NameError: - # pylint: disable-msg=W0622 - # (Redefining built-in 'set') - 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' ] +A_PY_LINES_1 = [1,2] +B_PY_LINES_1 = [3] 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 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) + self.assert_equal_sets(covdata.executed_files(), execed) def test_reading_empty(self): covdata = CoverageData() @@ -74,3 +70,20 @@ class DataTest(CoverageTest): covdata2 = CoverageData() covdata2.read() self.assert_summary(covdata2, {}) + + def test_file_format(self): + # Write with CoverageData, then read the pickle explicitly. + covdata = CoverageData() + covdata.add_line_data(DATA_1) + covdata.write() + + fdata = open(".coverage", 'rb') + try: + data = pickle.load(fdata) + finally: + fdata.close() + + lines = data['lines'] + self.assert_equal_sets(lines.keys(), EXECED_FILES_1) + self.assert_equal_sets(lines['a.py'], A_PY_LINES_1) + self.assert_equal_sets(lines['b.py'], B_PY_LINES_1) |