Exemplo n.º 1
0
    def test_fix_filenames(self, mock_isfile, mock_walk):
        original_content = """
            filename="/foo.c"
            filename="/bar.c"
            filename="/a/b/c/d/test.c"
        """

        expected_content = """
            filename="/dir1/foo.c"
            filename="/dir2/bar.c"
            filename="/a/b/c/d/test.c"
        """

        def fake_isfile(path):
            return path != '/foo.c' and path != '/bar.c'

        mock_isfile.side_effect = fake_isfile

        mock_walk.return_value = [('/dir1', [], ['foo.c']),
                                  ('/dir2', [], ['bar.c'])]

        fixer = fix_gcovr_paths.PathFixer()
        fixer.content = original_content
        fixer.fix_paths('/')

        self.assertEquals(expected_content, fixer.content)
Exemplo n.º 2
0
    def test_read_when_file_exists(self, mock_open, mock_file):
        text = 'I love mocking files'
        mock_open.return_value = mock_file
        mock_file.read.return_value = text

        fixer = fix_gcovr_paths.PathFixer()
        fixer.read_file('some_file.xml')

        self.assertEquals(text, fixer.content)
Exemplo n.º 3
0
    def test_read_when_no_file(self, mock_open):
        def fake_open(*args, **kwargs):
            raise IOError('No such file or directory')

        mock_open.side_effect = fake_open

        fixer = fix_gcovr_paths.PathFixer()

        self.assertRaises(IOError, fixer.read_file, 'non_existing_file.xml')
Exemplo n.º 4
0
    def test_write_file_with_error(self, mock_open):
        def fake_open(*args, **kwargs):
            raise IOError('No such file or directory')

        mock_open.side_effect = fake_open

        fixer = fix_gcovr_paths.PathFixer()
        fixer.content = 'Empty'

        self.assertRaises(IOError, fixer.write_file, 'some_file.xml')
        self.assertEquals(None, self.file_content)
Exemplo n.º 5
0
    def test_write_file(self, mock_open, mock_file):
        mock_open.return_value = mock_file

        def fake_write(string):
            self.file_content = string

        mock_file.write.side_effect = fake_write

        fixer = fix_gcovr_paths.PathFixer()
        fixer.content = "My file content"
        fixer.write_file('somefile.xml')

        self.assertEquals("My file content", self.file_content)
Exemplo n.º 6
0
    def test_fix_filenames_with_non_existing_file(self, mock_isfile,
                                                  mock_walk):
        original_content = 'filename="/foo.c"'

        def fake_isfile(path):
            return False

        mock_isfile.side_effect = fake_isfile

        mock_walk.return_value = [('/', [], [])]

        fixer = fix_gcovr_paths.PathFixer()
        fixer.content = original_content

        self.assertRaises(fix_gcovr_paths.FileNotFoundException,
                          fixer.fix_paths, '/')