[Repoze-dev] Repoze CVS: test_publisher.py

Tres Seaver tseaver at agendaless.com
Wed Sep 12 15:19:11 UTC 2007


Update of /home/repoze/cvs/repoze.obob/repoze/obob/tests
In directory laguna.palladion.com:/tmp/cvs-serv16102/repoze/obob/tests

Modified Files:
	test_publisher.py 
Log Message:
 - Turn private methods into defaults with override via Paste config.

Index: test_publisher.py
===================================================================
RCS file: /home/repoze/cvs/repoze.obob/repoze/obob/tests/test_publisher.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- test_publisher.py	11 Sep 2007 01:19:51 -0000	1.1
+++ test_publisher.py	12 Sep 2007 15:19:09 -0000	1.2
@@ -26,42 +26,96 @@
         self.failUnless(obob.before_invoke is None)
 
         klass = self._getTargetClass()
-        self.failUnless(obob.traverse.im_func is klass.traverse.im_func)
+        for defaulted in ('request_factory',
+                          'traverse',
+                          'invoke',
+                          'map_result',
+                         ):
+            from_instance = getattr(obob, defaulted).im_func
+            from_class = getattr(klass, defaulted).im_func
+
+            self.failUnless(from_instance is from_class)
 
     def test_ctor_root_and_others(self):
 
         def _root(request): pass
+        def _rf(environ): pass
         def _bt(current, name, request): pass
         def _t(current, name): pass
         def _bi(published, request): pass
+        def _i(published, request): pass
+        def _mr(request, result): pass
 
         obob = self._makeOne(root=_root,
+                             request_factory=_rf,
                              before_traverse=_bt,
                              traverse =_t,
                              before_invoke=_bi,
+                             invoke=_i,
+                             map_result=_mr,
                             )
 
         self.failUnless(obob.root is _root)
+        self.failUnless(obob.request_factory is _rf)
         self.failUnless(obob.before_traverse is _bt)
         self.failUnless(obob.traverse is _t)
         self.failUnless(obob.before_invoke is _bi)
+        self.failUnless(obob.invoke is _i)
+        self.failUnless(obob.map_result is _mr)
 
     def test_ctor_before_traverse_not_callable_raises(self):
-        self.assertRaises(ValueError, self._makeOne, lambda *r: object(),
+        self.assertRaises(ValueError, self._makeOne, root=lambda *r: object(),
                                       before_traverse=object())
 
     def test_ctor_traverse_not_callable_raises(self):
-        self.assertRaises(ValueError, self._makeOne, lambda *r: object(),
+        self.assertRaises(ValueError, self._makeOne, root=lambda *r: object(),
                                       traverse=object())
 
     def test_ctor_before_traverse_not_callable_raises(self):
-        self.assertRaises(ValueError, self._makeOne, lambda *r: object(),
+        self.assertRaises(ValueError, self._makeOne, root=lambda *r: object(),
                                       before_invoke=object())
 
+    def test_ctor_invoke_not_callable_raises(self):
+        self.assertRaises(ValueError, self._makeOne, root=lambda *r: object(),
+                                      invoke=object())
+
+    def test_ctor_map_result_not_callable_raises(self):
+        self.assertRaises(ValueError, self._makeOne, root=lambda *r: object(),
+                                      map_result=object())
+
+    def test_request_factory_default(self):
+        obob = self._makeOne(root=lambda *request: object())
+        environ = object()
+        self.failUnless(obob.request_factory(environ) is environ)
+
     def test_traverse_default(self):
-        obob = self._makeOne(lambda *request: object())
+        obob = self._makeOne(root=lambda *request: object())
         d = {'key': 'value'}
         self.assertEqual(obob.traverse(d, 'key'), 'value')
 
-    # def test_makeRequestResponse_...
-    # def test_publish_...
+    def test_invoke_default(self):
+        obob = self._makeOne(root=lambda *request: object())
+        called_with = []
+        request = object()
+        RESULT = object()
+        def _published(*args, **kw):
+            called_with.append((args, kw))
+            return RESULT
+
+        result = obob.invoke(_published, request)
+
+        self.assertEqual(len(called_with), 1)
+        self.assertEqual(called_with[0][0], (request,))
+        self.assertEqual(called_with[0][1], {})
+        self.failUnless(result is RESULT)
+
+    def test_map_result_default(self):
+        obob = self._makeOne(root=lambda *request: object())
+        request = object()
+        result = object()
+
+        status, headers, body_iter = obob.map_result(request, result)
+
+        self.assertEqual(status, 200)
+        self.assertEqual(headers, {})
+        self.assertEqual(body_iter, [result])

_______________________________________________
Repoze-dev mailing list
Repoze-dev at lists.repoze.org
http://lists.repoze.org/mailman/listinfo/repoze-dev



More information about the Repoze-dev mailing list