def test_updates_manual_clear(update_handler: UpdateHandler, mocker: MockerFixture) -> None: """ requesting manual updates must clear packages directory """ mocker.patch("pathlib.Path.iterdir", return_value=[]) mocker.patch( "ahriman.core.repository.update_handler.UpdateHandler.packages") update_handler.updates_manual() from ahriman.core.repository.cleaner import Cleaner Cleaner.clear_manual.assert_called_once()
def test_updates_manual_status_unknown(update_handler: UpdateHandler, package_ahriman: Package, mocker: MockerFixture) -> None: """ must create record for unknown package via reporter """ mocker.patch("pathlib.Path.iterdir", return_value=[package_ahriman.base]) mocker.patch( "ahriman.core.repository.update_handler.UpdateHandler.packages", return_value=[]) mocker.patch("ahriman.models.package.Package.load", return_value=package_ahriman) status_client_mock = mocker.patch( "ahriman.core.status.client.Client.set_unknown") update_handler.updates_manual() status_client_mock.assert_called_once()
def test_updates_manual_with_failures(update_handler: UpdateHandler, package_ahriman: Package, mocker: MockerFixture) -> None: """ must process through the packages with failure """ mocker.patch("pathlib.Path.iterdir", return_value=[package_ahriman.base]) mocker.patch( "ahriman.core.repository.update_handler.UpdateHandler.packages", return_value=[]) mocker.patch("ahriman.models.package.Package.load", side_effect=Exception()) assert update_handler.updates_manual() == []