Exemple #1
0
    def test_upload_file_on_valid_file(self):

        temp_dir = tempfile.mkdtemp()
        try:
            mockftp = MockFtp()
            mockftp.put = Mock(return_value=3)
            foo = FtpFileTransfer(None)
            foo.set_connection(mockftp)
            foo.set_remote_dir('/remote')
            foo.connect()
            valid_file = os.path.join(temp_dir, 'file')
            f = open(valid_file, 'a')
            f.write('12')
            f.flush()
            f.close()
            foo._upload_file(valid_file)
            mockftp.put.assert_called_with(valid_file,
                                           os.path.normpath('/remote' +
                                                            valid_file))
            self.assertEqual(foo._bytes_transferred, 3)
            self.assertEqual(foo._files_transferred, 1)
            foo._upload_file(valid_file)
            self.assertEqual(foo._bytes_transferred, 6)
            self.assertEqual(foo._files_transferred, 2)
        finally:
            shutil.rmtree(temp_dir)
Exemple #2
0
    def test_upload_file_where_file_is_none(self):

        # test where file is None
        ftpspec = ["put"]
        mockftp = Mock(spec=ftpspec)
        foo = FtpFileTransfer(None)
        foo.set_connection(mockftp)
        foo.connect()
        foo._upload_file(None)
Exemple #3
0
    def test_upload_file_where_file_does_not_exist(self):
        temp_dir = tempfile.mkdtemp()
        try:
            ftpspec = ["put"]
            mockftp = Mock(spec=ftpspec)
            foo = FtpFileTransfer(None)
            foo.set_connection(mockftp)
            foo.connect()
            foo._upload_file(os.path.join(temp_dir, 'nonexist'))
            self.assertEqual(mockftp.call_count, 0)

        finally:
            shutil.rmtree(temp_dir)
Exemple #4
0
    def test_upload_file_that_raises_exception(self):
        temp_dir = tempfile.mkdtemp()
        try:

            mockftp = MockFtp()
            mockftp.put = Mock(side_effect=IOError('hi'))
            foo = FtpFileTransfer(None)
            foo.set_connection(mockftp)
            foo.connect()
            valid_file = os.path.join(temp_dir, 'file')
            f = open(valid_file, 'a')
            f.write('12')
            f.flush()
            f.close()
            try:
                foo._upload_file(valid_file)
                self.fail('Expected IOError')
            except IOError:
                pass
        finally:
            shutil.rmtree(temp_dir)