Example #1
0
def test_destroy_docs(db_request, flash):
    user = UserFactory.create()
    project = ProjectFactory.create(name="foo", has_docs=True)
    RoleFactory.create(user=user, project=project)

    db_request.user = user
    db_request.remote_addr = "192.168.1.1"
    db_request.session = stub(flash=call_recorder(lambda *a, **kw: stub()))
    remove_documentation_recorder = stub(
        delay=call_recorder(lambda *a, **kw: None))
    db_request.task = call_recorder(
        lambda *a, **kw: remove_documentation_recorder)

    destroy_docs(project, db_request, flash=flash)

    journal_entry = (db_request.db.query(JournalEntry).filter(
        JournalEntry.name == "foo").one())
    assert journal_entry.action == "docdestroy"
    assert journal_entry.submitted_by == db_request.user
    assert journal_entry.submitted_from == db_request.remote_addr

    assert not (db_request.db.query(Project).filter(
        Project.name == project.name).first().has_docs)

    assert remove_documentation_recorder.delay.calls == [call('foo')]

    if flash:
        assert db_request.session.flash.calls == [
            call("Deleted docs for project 'foo'", queue="success"),
        ]
    else:
        assert db_request.session.flash.calls == []
Example #2
0
def destroy_project_docs(project, request):
    confirm_project(project,
                    request,
                    fail_route="manage.project.documentation")
    destroy_docs(project, request)

    return HTTPSeeOther(
        request.route_path("manage.project.documentation",
                           project_name=project.normalized_name))
Example #3
0
def destroy_project_docs(project, request):
    confirm_project(project, request, fail_route="manage.project.documentation")
    destroy_docs(project, request)

    return HTTPSeeOther(
        request.route_path(
            "manage.project.documentation", project_name=project.normalized_name
        )
    )
Example #4
0
def test_destroy_docs(db_request, flash):
    user = UserFactory.create()
    project = ProjectFactory.create(name="foo", has_docs=True)
    RoleFactory.create(user=user, project=project)

    db_request.user = user
    db_request.remote_addr = "192.168.1.1"
    db_request.session = stub(flash=call_recorder(lambda *a, **kw: stub()))
    remove_documentation_recorder = stub(
        delay=call_recorder(lambda *a, **kw: None)
    )
    db_request.task = call_recorder(
        lambda *a, **kw: remove_documentation_recorder
    )

    destroy_docs(project, db_request, flash=flash)

    journal_entry = (
        db_request.db.query(JournalEntry)
                     .filter(JournalEntry.name == "foo")
                     .one()
    )
    assert journal_entry.action == "docdestroy"
    assert journal_entry.submitted_by == db_request.user
    assert journal_entry.submitted_from == db_request.remote_addr

    assert not (db_request.db.query(Project)
                             .filter(Project.name == project.name)
                             .first().has_docs)

    assert remove_documentation_recorder.delay.calls == [
        call('foo')
    ]

    if flash:
        assert db_request.session.flash.calls == [
            call(
                "Deleted docs for project 'foo'",
                queue="success"
            ),
        ]
    else:
        assert db_request.session.flash.calls == []