aboutsummaryrefslogtreecommitdiffstats
path: root/paste/__init__.py
diff options
context:
space:
mode:
Diffstat (limited to 'paste/__init__.py')
-rw-r--r--paste/__init__.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/paste/__init__.py b/paste/__init__.py
index c54791b..4e0a0ef 100644
--- a/paste/__init__.py
+++ b/paste/__init__.py
@@ -169,8 +169,13 @@ def authenticate(get_auth: Callable[[Env], Auth]) -> Middleware:
return authenticate
-def application(environ: Env, start_response: StartResponse, /) -> Response:
- store = Store(environ["paste.db_conn"])
+def paste_application(
+ environ: Env,
+ start_response: StartResponse,
+ get_store: Callable[[Env], Store] = lambda environ: Store(environ["paste.db_conn"]),
+ /,
+) -> Response:
+ store = get_store(environ)
name = environ["PATH_INFO"]
if environ["REQUEST_METHOD"] == "GET":
row = store.get(name)
@@ -248,5 +253,6 @@ middlewares = [
authenticate(lambda environ: Auth(environ["paste.db_conn"])),
]
+application = paste_application
for m in reversed(middlewares):
application = m(application)