def test_rackspace_uploader_upload_wrong_file(self, mock, mock2): """Test RACKSPACE UPLOADER upload wrong file extension works.""" with patch('pybossa.uploader.rackspace.pyrax.cloudfiles') as mycf: mycf.upload_file.return_value = True u = RackspaceUploader() u.init_app(self.flask_app) file = FileStorage(filename='test.docs') err_msg = "Upload file should return False" res = u.upload_file(file, container='user_3') assert res is False, err_msg
def test_rackspace_uploader_upload_file_fails(self, mock, mock2): """Test RACKSPACE UPLOADER upload file fail works.""" with patch('pybossa.uploader.rackspace.pyrax.cloudfiles') as mycf: from pyrax.exceptions import UploadFailed mycf.upload_file.side_effect = UploadFailed u = RackspaceUploader() u.init_app(self.flask_app) file = FileStorage(filename='test.jpg') err_msg = "Upload file should return False" assert u.upload_file(file, container='user_3') is False, err_msg
def test_rackspace_uploader_upload_file_object_fails(self, mock, mock2): """Test RACKSPACE UPLOADER upload file object fail works.""" with patch('pybossa.uploader.rackspace.pyrax.cloudfiles') as mycf: from pyrax.exceptions import NoSuchObject container = MagicMock() container.get_object.side_effect = NoSuchObject mycf.get_container.return_value = container u = RackspaceUploader() u.init_app(self.flask_app) file = FileStorage(filename='test.jpg') err_msg = "Upload file should return True" assert u.upload_file(file, container='user_3') is True, err_msg
def test_rackspace_uploader_upload_correct_file(self, mock, mock2): """Test RACKSPACE UPLOADER upload file works.""" with patch('pybossa.uploader.rackspace.pyrax.cloudfiles') as mycf: mycf.upload_file.return_value=True mycf.get_object.side_effect = NoSuchObject u = RackspaceUploader() u.init_app(self.flask_app) file = FileStorage(filename='test.jpg') err_msg = "Upload file should return True" assert u.upload_file(file, container='user_3') is True, err_msg calls = [call.get_container('user_3'), call.get_container().get_object('test.jpg')] mycf.assert_has_calls(calls, any_order=True)