Пример #1
0
class FileHandlerTest(unittest.TestCase):
    def setUp(self) -> None:
        self.path1 = 'xyz'
        with patch("builtins.open",
                   mock_open(read_data="test data")) as mock_file:
            self.sut = FileHandler(self.path1)

    def test_funnelFileFormat_path(self):
        with patch("builtins.open",
                   mock_open(read_data="test data")) as mock_file:
            sut = FileHandler(self.path1)
            assert sut.data == "test data"
            mock_file.assert_called_with(self.path1, 'r')

    def test_funnelFileFormat_file(self):
        file1 = StringIO("test data")
        sut = FileHandler(file1)
        assert sut.data == "test data"

    def test_readFile_valid(self):
        with patch("builtins.open",
                   mock_open(read_data="test data")) as mock_file:
            data = self.sut.readFile(self.path1)
            assert data == "test data"
            mock_file.assert_called_with(self.path1, 'r')

    def test_readFile_invalid(self):
        data = self.sut.readFile("abc")
        assert data == None

    def test_toString(self):
        assert self.sut.toString() == "test data"

    def test_saveAnyDataTo(self):
        m = mock_open()
        with patch("builtins.open", m, create=True) as mock_file:
            with patch('os.path.isdir') as dir_mock:
                dir_mock.return_value = lambda x: True
                FileHandler.saveAnyDataTo("test data", 'abc/images.jpg')
                m.assert_called_with('abc/images.jpg', 'wb+')

    def test_saveDataTo(self):
        m = mock_open()
        with patch("builtins.open", m, create=True) as mock_file:
            with patch('os.path.isdir') as dir_mock:
                dir_mock.return_value = lambda x: True
                self.sut.saveDataTo('abc/images.jpg')
                m.assert_called_with('abc/images.jpg', 'wb+')

    def test_getFileAsList(self):
        self.sut.data = 'abc\ndef'
        assert self.sut.getFileAsList() == ['abc', 'def']
Пример #2
0
 def fromFile(self, path):
     file_handler = FileHandler(path)
     self.urls = file_handler.getFileAsList()
     logging.info('list of urls - \n{}'.format('\n'.join(self.urls)))
     # returning self for enabling method chaining
     return self