Exemplo n.º 1
0
def test_is_blocked(db_session):
    db_session.add(models.Blocklist(uri="http://example.com"))
    db_session.add(models.Blocklist(uri="http://example.com/bar"))
    db_session.flush()

    assert models.Blocklist.is_blocked(db_session, "http://example.com")
    assert models.Blocklist.is_blocked(db_session, "http://example.com/bar")
    assert not models.Blocklist.is_blocked(db_session, "http://example.com/foo")
Exemplo n.º 2
0
def test_is_blocked_with_wildcards(db_session):
    db_session.add(models.Blocklist(uri="%//example.com%"))
    db_session.flush()

    assert models.Blocklist.is_blocked(db_session, "http://example.com/")
    assert models.Blocklist.is_blocked(db_session, "http://example.com/bar")
    assert models.Blocklist.is_blocked(db_session, "http://example.com/foo")
Exemplo n.º 3
0
def blocked_uris(db_session):
    uris = []
    for uri in ["blocked1", "blocked2", "blocked3"]:
        uris.append(models.Blocklist(uri=uri))
    db_session.add_all(uris)
    db_session.flush()

    return uris
Exemplo n.º 4
0
def blocked_uris(db_session):
    from h import models

    uris = []
    for uri in ['blocked1', 'blocked2', 'blocked3']:
        uris.append(models.Blocklist(uri=uri))
    db_session.add_all(uris)
    db_session.flush()

    return uris
Exemplo n.º 5
0
def badge_add(request):
    uri = request.params['add']
    item = models.Blocklist(uri=uri)
    request.db.add(item)

    # There's a uniqueness constraint on `uri`, so we flush the session,
    # catching any IntegrityError and responding appropriately.
    try:
        request.db.flush()
    except IntegrityError:
        request.db.rollback()
        msg = _("{uri} is already blocked.").format(uri=uri)
        request.session.flash(msg, 'error')

    index = request.route_path('admin_badge')
    return httpexceptions.HTTPSeeOther(location=index)
Exemplo n.º 6
0
def badge_add(request):
    try:
        request.db.add(models.Blocklist(uri=request.params['add']))
    except ValueError as err:
        request.session.flash(err.message, 'error')
    return badge_index(request)