예제 #1
0
def test_failed_item_added_to_drop_failed_log():
    # Verifies that the import command adds a failed item to the
    # drop-failed log
    mock_job = create_mock_job()
    mock_run = create_mock_run(mock_job)
    mock_job.new_run = MagicMock(return_value=mock_run)
    args = create_args(mock_job.id)
    failed_item = create_mock_item(is_valid=True)

    Command.create_import_job = MagicMock(return_value=mock_job)
    config = {}

    command = Command(config)
    repo = None

    repo_changeset = RepoChangeset(failed_item, Graph(), Graph())

    plastron.commands.importcommand.create_repo_changeset = MagicMock(return_value=repo_changeset)
    command.get_source = MagicMock()
    command.get_source.exists = MagicMock(return_value=True)
    command.update_repo = MagicMock(side_effect=FailureException)

    for _ in command.execute(repo, args):
        pass

    plastron.commands.importcommand.create_repo_changeset.assert_called_once()
    command.update_repo.assert_called_once()
    mock_run.drop_failed.assert_called_once()
예제 #2
0
def test_invalid_item_added_to_drop_invalid_log():
    # Verifies that the import command adds an invalid item to the
    # drop-invalid log
    mock_job = create_mock_job()
    mock_run = create_mock_run(mock_job)
    mock_job.new_run = MagicMock(return_value=mock_run)
    args = create_args(mock_job.id)

    invalid_item = create_mock_item(is_valid=False)

    Command.create_import_job = MagicMock(return_value=mock_job)
    config = {}

    command = Command(config)
    repo = None

    repo_changeset = RepoChangeset(invalid_item, None, None)

    plastron.commands.importcommand.create_repo_changeset = MagicMock(return_value=repo_changeset)
    command.update_repo = MagicMock()

    for _ in command.execute(repo, args):
        pass

    plastron.commands.importcommand.create_repo_changeset.assert_called_once()
    command.update_repo.assert_not_called()
    mock_run.drop_invalid.assert_called_once()