def test_touch(self): other_obj = SourceMap() self.assertEqual(len(other_obj), 0) other_file = 'other_file.py' other_obj.touch(other_file) self.assertEqual(len(other_obj), 1) self.assertEqual(other_obj[other_file], _SourceTestMap(other_file))
def setUp(self): self.obj = SourceMap() self.filenames = ['foo.py', 'bar.py'] self.tests = ['test_foo', 'test_foo_again', 'test_bar'] self.covered_lines = [1, 3, 5] self.coverage_data = (self.tests[2], self.covered_lines) self.obj.touch(self.filenames[0]) self.obj[self.filenames[1]] = self.coverage_data self.expected_reverse_index = self.obj.reverse_index.copy() self.expected_index = self.obj.index.copy() test_bar_index = self.expected_index['test_bar'] self.expected_serialized_data = [ ('foo.py', {}), ('bar.py', { 1: [test_bar_index], 3: [test_bar_index], 5: [test_bar_index], }) ]
class TestSourceMap(TestCase): def setUp(self): self.obj = SourceMap() self.filenames = ['foo.py', 'bar.py'] self.tests = ['test_foo', 'test_foo_again', 'test_bar'] self.covered_lines = [1, 3, 5] self.coverage_data = (self.tests[2], self.covered_lines) self.obj.touch(self.filenames[0]) self.obj[self.filenames[1]] = self.coverage_data self.expected_reverse_index = self.obj.reverse_index.copy() self.expected_index = self.obj.index.copy() test_bar_index = self.expected_index['test_bar'] self.expected_serialized_data = [ ('foo.py', {}), ('bar.py', { 1: [test_bar_index], 3: [test_bar_index], 5: [test_bar_index], }) ] def test_touch(self): other_obj = SourceMap() self.assertEqual(len(other_obj), 0) other_file = 'other_file.py' other_obj.touch(other_file) self.assertEqual(len(other_obj), 1) self.assertEqual(other_obj[other_file], _SourceTestMap(other_file)) def test_getitem(self): expected = _SourceTestMap(self.filenames[1]) for line_num in self.covered_lines: expected.add(line_num, self.tests[2]) self.assertEqual(self.obj[self.filenames[1]], expected) def test_contains(self): self.assertTrue(self.filenames[0] in self.obj) self.assertTrue(self.filenames[1] in self.obj) def test_get(self): self.assertEqual(self.obj.get(self.filenames[0]), _SourceTestMap(self.filenames[0])) self.assertIsNone(self.obj.get('no_such_file.py', None)) def test_delitem(self): del self.obj[self.filenames[1]] with self.assertRaises(KeyError): self.obj[self.filenames[1]].files def test_untested_files_property(self): self.assertEqual(self.obj.untested_files, [self.filenames[0]]) def test_files_property(self): self.assertEqual(self.obj.files, self.filenames) def test_suite(self): self.assertEqual(self.obj.suite(), {self.tests[2]}) self.obj[self.filenames[0]] = (self.tests[0], [1, 2]) self.obj[self.filenames[0]] = (self.tests[1], [3, 4]) self.assertEqual(self.obj.suite(), set(self.tests)) self.assertEqual(self.obj.suite([self.filenames[0]]), set(self.tests[:-1])) self.assertEqual(self.obj.suite([self.filenames[1]]), set(self.tests[-1:])) def test_serialize(self): serialized_data = SourceMap.serialize(self.obj) self.assertEqual(serialized_data[0], self.expected_serialized_data) self.assertEqual(serialized_data[1], self.obj.reverse_index) def test_deserialize(self): actual = SourceMap.deserialize((self.expected_serialized_data, self.obj.reverse_index)) self.assertEqual(actual, self.obj) def test_serialize_deserialize_are_inverses(self): serialized = SourceMap.serialize(self.obj) actual = SourceMap.deserialize(serialized) self.assertEqual(actual, self.obj) def test_file_operations_save_state(self): SourceMap.write_to_file(self.obj) retrieved_obj = SourceMap.read_from_file() self.assertEqual(self.obj, retrieved_obj)
def test_file_operations_save_state(self): SourceMap.write_to_file(self.obj) retrieved_obj = SourceMap.read_from_file() self.assertEqual(self.obj, retrieved_obj)
def test_serialize_deserialize_are_inverses(self): serialized = SourceMap.serialize(self.obj) actual = SourceMap.deserialize(serialized) self.assertEqual(actual, self.obj)
def test_deserialize(self): actual = SourceMap.deserialize((self.expected_serialized_data, self.obj.reverse_index)) self.assertEqual(actual, self.obj)
def test_serialize(self): serialized_data = SourceMap.serialize(self.obj) self.assertEqual(serialized_data[0], self.expected_serialized_data) self.assertEqual(serialized_data[1], self.obj.reverse_index)