[Checkins] SVN: zope.container/trunk/src/zope/container/t wrote a test for ContainerTraverser.browserDefault(), and fixed a typo in it.

Wolfgang Schnerring wosc at wosc.de
Mon Mar 9 03:32:19 EDT 2009


Log message for revision 97680:
  wrote a test for ContainerTraverser.browserDefault(), and fixed a typo in it.
  

Changed:
  U   zope.container/trunk/src/zope/container/tests/test_containertraverser.py
  U   zope.container/trunk/src/zope/container/traversal.py

-=-
Modified: zope.container/trunk/src/zope/container/tests/test_containertraverser.py
===================================================================
--- zope.container/trunk/src/zope/container/tests/test_containertraverser.py	2009-03-09 07:04:30 UTC (rev 97679)
+++ zope.container/trunk/src/zope/container/tests/test_containertraverser.py	2009-03-09 07:32:19 UTC (rev 97680)
@@ -18,7 +18,7 @@
 import unittest
 from zope.interface import Interface, implements
 from zope import component
-from zope.publisher.interfaces import NotFound
+from zope.publisher.interfaces import NotFound, IDefaultViewName
 from zope.publisher.browser import TestRequest
 from zope.publisher.interfaces.browser import IDefaultBrowserLayer
 
@@ -56,21 +56,21 @@
     def setUp(self):
         super(TraverserTest, self).setUp()
         # Create a small object tree
-        self.foo = self._getContainer()
-        foo2 = self._getContainer(Foo=self.foo)
+        self.container = self._getContainer()
+        self.subcontainer = self._getContainer(Foo=self.container)
         # Initiate a request
         self.request = TestRequest()
         # Create the traverser
-        self.traverser = self._getTraverser(foo2, self.request)
+        self.traverser = self._getTraverser(self.subcontainer, self.request)
         # Define a simple view for the container
         component.provideAdapter(
             View, (IReadContainer, IDefaultBrowserLayer), Interface,
             name='viewfoo')
-        
+
     def test_itemTraversal(self):
         self.assertEqual(
             self.traverser.publishTraverse(self.request, 'Foo'),
-            self.foo)
+            self.container)
         self.assertRaises(
             NotFound,
             self.traverser.publishTraverse, self.request, 'morebar')
@@ -81,7 +81,7 @@
             View)
         self.assertEquals(
             self.traverser.publishTraverse(self.request, 'Foo'),
-            self.foo)
+            self.container)
         self.assertRaises(
             NotFound,
             self.traverser.publishTraverse, self.request, 'morebar')
@@ -89,7 +89,18 @@
             NotFound,
             self.traverser.publishTraverse, self.request, '@@morebar')
 
+    def test_browserDefault_without_registration_should_raise(self):
+        self.assertRaises(component.ComponentLookupError,
+                          self.traverser.browserDefault, self.request)
 
+    def test_browserDefault(self):
+        component.provideAdapter(
+            'myDefaultView', (Interface, IDefaultBrowserLayer),
+            IDefaultViewName)
+        self.assertEquals((self.subcontainer, ('@@myDefaultView',)),
+                          self.traverser.browserDefault(self.request))
+
+
 def test_suite():
     return unittest.TestSuite((
         unittest.makeSuite(TraverserTest),

Modified: zope.container/trunk/src/zope/container/traversal.py
===================================================================
--- zope.container/trunk/src/zope/container/traversal.py	2009-03-09 07:04:30 UTC (rev 97679)
+++ zope.container/trunk/src/zope/container/traversal.py	2009-03-09 07:32:19 UTC (rev 97680)
@@ -61,7 +61,7 @@
             map(providedBy, (self.context, request)), IDefaultViewName)
         if view_name is None:
             raise ComponentLookupError("Couldn't find default view name",
-                                       context, request)
+                                       self.context, request)
         view_uri = "@@%s" %view_name
         return self.context, (view_uri,)
 



More information about the Checkins mailing list