diff options
Diffstat (limited to 'tests/urlparser_data/not_found/user')
-rw-r--r-- | tests/urlparser_data/not_found/user/__init__.py | 12 | ||||
-rw-r--r-- | tests/urlparser_data/not_found/user/list.py | 8 |
2 files changed, 20 insertions, 0 deletions
diff --git a/tests/urlparser_data/not_found/user/__init__.py b/tests/urlparser_data/not_found/user/__init__.py new file mode 100644 index 0000000..4126c04 --- /dev/null +++ b/tests/urlparser_data/not_found/user/__init__.py @@ -0,0 +1,12 @@ +from paste import request + +def not_found_hook(environ, start_response): + urlparser = environ['paste.urlparser.not_found_parser'] + first, rest = request.path_info_split(environ.get('PATH_INFO', '')) + if not first: + # No username + return + environ['app.user'] = first + environ['SCRIPT_NAME'] += '/' + first + environ['PATH_INFO'] = rest + return urlparser(environ, start_response) diff --git a/tests/urlparser_data/not_found/user/list.py b/tests/urlparser_data/not_found/user/list.py new file mode 100644 index 0000000..fd7482f --- /dev/null +++ b/tests/urlparser_data/not_found/user/list.py @@ -0,0 +1,8 @@ +import six + +def application(environ, start_response): + start_response('200 OK', [('Content-type', 'text/plain')]) + body = 'user: %s' % environ.get('app.user') + if six.PY3: + body = body.encode('ascii') + return [body] |