summaryrefslogtreecommitdiff
path: root/tests/pkgs/permbugapp/__init__.py
blob: 594acc8d6e7e82af9316dff70be3d47d52655e85 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from html import escape

from pyramid.response import Response
from pyramid.security import view_execution_permitted


def x_view(request):  # pragma: no cover
    return Response('this is private!')


def test(context, request):
    # should return false
    msg = 'Allow ./x? %s' % repr(
        view_execution_permitted(context, request, 'x')
    )
    return Response(escape(msg))


def includeme(config):
    from pyramid.authentication import AuthTktAuthenticationPolicy
    from pyramid.authorization import ACLAuthorizationPolicy

    authn_policy = AuthTktAuthenticationPolicy('seekt1t', hashalg='sha512')
    authz_policy = ACLAuthorizationPolicy()
    config.set_authentication_policy(authn_policy)
    config.set_authorization_policy(authz_policy)
    config.add_view(test, name='test')
    config.add_view(x_view, name='x', permission='private')