summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests/test_request.py
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2010-09-12 22:33:16 +0000
committerChris McDonough <chrism@agendaless.com>2010-09-12 22:33:16 +0000
commitad6a6706391c60dbdb66073caff1306b771da0bd (patch)
tree058fa1f42f71069112b0258bb249730231941811 /repoze/bfg/tests/test_request.py
parent79c11cc905bcc5eae4f1b6e63aa187551966be34 (diff)
downloadpyramid-ad6a6706391c60dbdb66073caff1306b771da0bd.tar.gz
pyramid-ad6a6706391c60dbdb66073caff1306b771da0bd.tar.bz2
pyramid-ad6a6706391c60dbdb66073caff1306b771da0bd.zip
- Add a new request API: ``request.add_finished_callback``. Finished
callbacks are called by the router unconditionally near the very end of request processing.
Diffstat (limited to 'repoze/bfg/tests/test_request.py')
-rw-r--r--repoze/bfg/tests/test_request.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/repoze/bfg/tests/test_request.py b/repoze/bfg/tests/test_request.py
index 0248e10be..d8a3c09fb 100644
--- a/repoze/bfg/tests/test_request.py
+++ b/repoze/bfg/tests/test_request.py
@@ -184,6 +184,28 @@ class TestRequest(unittest.TestCase):
self.assertEqual(response.called2, True)
self.assertEqual(inst.response_callbacks, ())
+ def test_add_finished_callback(self):
+ inst = self._makeOne({})
+ self.assertEqual(inst.finished_callbacks, ())
+ def callback(request):
+ """ """
+ inst.add_finished_callback(callback)
+ self.assertEqual(inst.finished_callbacks, [callback])
+ inst.add_finished_callback(callback)
+ self.assertEqual(inst.finished_callbacks, [callback, callback])
+
+ def test__process_finished_callbacks(self):
+ inst = self._makeOne({})
+ def callback1(request):
+ request.called1 = True
+ def callback2(request):
+ request.called2 = True
+ inst.finished_callbacks = [callback1, callback2]
+ inst._process_finished_callbacks()
+ self.assertEqual(inst.called1, True)
+ self.assertEqual(inst.called2, True)
+ self.assertEqual(inst.finished_callbacks, ())
+
class Test_route_request_iface(unittest.TestCase):
def _callFUT(self, name):
from repoze.bfg.request import route_request_iface