diff --git a/swh/deposit/loader/tasks.py b/swh/deposit/loader/tasks.py --- a/swh/deposit/loader/tasks.py +++ b/swh/deposit/loader/tasks.py @@ -4,7 +4,8 @@ # See top-level LICENSE file for more information from swh.scheduler.task import Task -from swh.deposit.loader import loader, checker +from swh.deposit.loader.loader import DepositLoader +from swh.deposit.loader.checker import DepositChecker class LoadDepositArchiveTsk(Task): @@ -26,7 +27,7 @@ Args: see :func:`DepositLoader.load`. """ - _loader = loader.DepositLoader() + _loader = DepositLoader() _loader.log = self.log return _loader.load(archive_url=archive_url, deposit_meta_url=deposit_meta_url, @@ -45,6 +46,6 @@ Args: see :func:`DepositChecker.check`. """ - _checker = checker.DepositChecker() + _checker = DepositChecker() _checker.log = self.log return _checker.check(deposit_check_url) diff --git a/swh/deposit/tests/loader/test_tasks.py b/swh/deposit/tests/loader/test_tasks.py new file mode 100644 --- /dev/null +++ b/swh/deposit/tests/loader/test_tasks.py @@ -0,0 +1,50 @@ +# Copyright (C) 2018 The Software Heritage developers +# See the AUTHORS file at the top-level directory of this distribution +# License: GNU General Public License version 3, or any later version +# See top-level LICENSE file for more information + +import unittest +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') + def test_task(self, mock_loader): + mock_loader.return_value = {'status': 'eventful'} + task = LoadDepositArchiveTsk() + + # given + actual_result = task.run_task( + archive_url='archive_url', + deposit_meta_url='deposit_meta_url', + deposit_update_url='deposit_update_url') + + self.assertEqual(actual_result, {'status': 'eventful'}) + + mock_loader.assert_called_once_with( + archive_url='archive_url', + deposit_meta_url='deposit_meta_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') + def test_task(self, mock_checker): + mock_checker.return_value = {'status': 'uneventful'} + task = ChecksDepositTsk() + + # given + actual_result = task.run_task('check_deposit_url') + self.assertEqual(actual_result, {'status': 'uneventful'}) + + mock_checker.assert_called_once_with('check_deposit_url')