Changeset View
Changeset View
Standalone View
Standalone View
swh/deposit/tests/loader/test_tasks.py
# Copyright (C) 2018 The Software Heritage developers | # Copyright (C) 2018 The Software Heritage developers | ||||
# See the AUTHORS file at the top-level directory of this distribution | # See the AUTHORS file at the top-level directory of this distribution | ||||
# License: GNU General Public License version 3, or any later version | # License: GNU General Public License version 3, or any later version | ||||
# See top-level LICENSE file for more information | # See top-level LICENSE file for more information | ||||
import unittest | |||||
from unittest.mock import patch | from unittest.mock import patch | ||||
from swh.deposit.loader.tasks import LoadDepositArchiveTsk, ChecksDepositTsk | |||||
class TestTasks(unittest.TestCase): | |||||
def test_check_task_name(self): | |||||
task = LoadDepositArchiveTsk() | |||||
self.assertEqual(task.task_queue, 'swh_loader_deposit') | |||||
@patch('swh.deposit.loader.loader.DepositLoader.load') | @patch('swh.deposit.loader.loader.DepositLoader.load') | ||||
def test_task(self, mock_loader): | def test_deposit_load(mock_loader, swh_app, celery_session_worker): | ||||
mock_loader.return_value = {'status': 'eventful'} | mock_loader.return_value = {'status': 'eventful'} | ||||
task = LoadDepositArchiveTsk() | |||||
# given | res = swh_app.send_task( | ||||
actual_result = task.run_task( | 'swh.deposit.loader.tasks.LoadDepositArchiveTsk', | ||||
archive_url='archive_url', | kwargs=dict(archive_url='archive_url', | ||||
deposit_meta_url='deposit_meta_url', | deposit_meta_url='deposit_meta_url', | ||||
deposit_update_url='deposit_update_url') | deposit_update_url='deposit_update_url')) | ||||
assert res | |||||
self.assertEqual(actual_result, {'status': 'eventful'}) | res.wait() | ||||
assert res.successful() | |||||
assert res.result == {'status': 'eventful'} | |||||
mock_loader.assert_called_once_with( | mock_loader.assert_called_once_with( | ||||
archive_url='archive_url', | archive_url='archive_url', | ||||
deposit_meta_url='deposit_meta_url', | deposit_meta_url='deposit_meta_url', | ||||
deposit_update_url='deposit_update_url') | deposit_update_url='deposit_update_url') | ||||
class TestTasks2(unittest.TestCase): | |||||
def test_check_task_name(self): | |||||
task = ChecksDepositTsk() | |||||
self.assertEqual(task.task_queue, 'swh_checker_deposit') | |||||
@patch('swh.deposit.loader.checker.DepositChecker.check') | @patch('swh.deposit.loader.checker.DepositChecker.check') | ||||
def test_task(self, mock_checker): | def test_check_deposit(mock_checker, swh_app, celery_session_worker): | ||||
mock_checker.return_value = {'status': 'uneventful'} | mock_checker.return_value = {'status': 'uneventful'} | ||||
task = ChecksDepositTsk() | |||||
# given | res = swh_app.send_task( | ||||
actual_result = task.run_task('check_deposit_url') | 'swh.deposit.loader.tasks.ChecksDepositTsk', | ||||
self.assertEqual(actual_result, {'status': 'uneventful'}) | args=('check_deposit_url',)) | ||||
assert res | |||||
res.wait() | |||||
assert res.successful() | |||||
assert res.result == {'status': 'uneventful'} | |||||
mock_checker.assert_called_once_with('check_deposit_url') | mock_checker.assert_called_once_with('check_deposit_url') |