[Checkins] SVN: five.clids/trunk/five/clids/ basic tests pass

Godefroid Chapelle gotcha at bubblenet.be
Sat Oct 11 19:14:10 EDT 2008


Log message for revision 92064:
  basic tests pass

Changed:
  A   five.clids/trunk/five/clids/tests/
  A   five.clids/trunk/five/clids/tests/__init__.py
  A   five.clids/trunk/five/clids/tests/test_zodb.py
  A   five.clids/trunk/five/clids/tests/tests.zcml
  U   five.clids/trunk/five/clids/zodb.py

-=-
Added: five.clids/trunk/five/clids/tests/__init__.py
===================================================================
--- five.clids/trunk/five/clids/tests/__init__.py	                        (rev 0)
+++ five.clids/trunk/five/clids/tests/__init__.py	2008-10-11 23:14:08 UTC (rev 92064)
@@ -0,0 +1 @@
+#package

Added: five.clids/trunk/five/clids/tests/test_zodb.py
===================================================================
--- five.clids/trunk/five/clids/tests/test_zodb.py	                        (rev 0)
+++ five.clids/trunk/five/clids/tests/test_zodb.py	2008-10-11 23:14:08 UTC (rev 92064)
@@ -0,0 +1,41 @@
+import os
+
+from Testing import ZopeTestCase
+
+from zope.app.testing.functional import ZCMLLayer
+
+zcmlPath = os.path.join(os.path.dirname(__file__), "tests.zcml")
+testLayer = ZCMLLayer(zcmlPath, "five.clids",
+                      'testLayer')
+
+
+from zope.component import getMultiAdapter
+from zope.component import getUtility
+from zope.publisher.browser import TestRequest
+
+from plone.clids.interfaces import IHTML
+from plone.clids.interfaces import IHTMLIdRegistry
+
+
+class TestZodb(ZopeTestCase.ZopeTestCase):
+
+    def afterSetUp(self):
+        pass
+
+    def testSomething(self):
+        request = TestRequest()
+        view = getMultiAdapter((self.folder, request), IHTML)
+        htmlid = view.id
+        self.assertEqual(htmlid, 'folder-/test_folder_1_')
+        registry = getUtility(IHTMLIdRegistry)
+        resolved = registry.getObject(htmlid, self.app)
+        self.assertEqual(resolved, self.folder)
+
+
+def test_suite():
+    from unittest import TestSuite, makeSuite
+    suite = TestSuite()
+    test = makeSuite(TestZodb)
+    test.layer = testLayer
+    suite.addTest(test)
+    return suite

Added: five.clids/trunk/five/clids/tests/tests.zcml
===================================================================
--- five.clids/trunk/five/clids/tests/tests.zcml	                        (rev 0)
+++ five.clids/trunk/five/clids/tests/tests.zcml	2008-10-11 23:14:08 UTC (rev 92064)
@@ -0,0 +1,9 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:grok="http://namespaces.zope.org/grok"
+    xmlns:browser="http://namespaces.zope.org/browser">
+
+    <include package="Products.Five" file="configure.zcml"/>
+    <include package="five.clids" />
+
+</configure>

Modified: five.clids/trunk/five/clids/zodb.py
===================================================================
--- five.clids/trunk/five/clids/zodb.py	2008-10-11 21:48:27 UTC (rev 92063)
+++ five.clids/trunk/five/clids/zodb.py	2008-10-11 23:14:08 UTC (rev 92064)
@@ -8,18 +8,18 @@
 from plone.clids.interfaces import IResolver
 from plone.clids.interfaces import IResolvable
 
-from Zope2 import App
 
-
 class Resolver(object):
     implements(IResolver)
 
+    def __init__(self, context):
+        self.context = context
+
     def resolve(self, data):
-        return App().restrictedTraverse('/'.join(data))
+        app = self.context.getPhysicalRoot()
+        return app.unrestrictedTraverse(data)
 
-resolver = Resolver()
 
-
 class Resolvable(grokcore.component.Adapter):
     grokcore.component.context(IItem)
     grokcore.component.implements(IResolvable)
@@ -30,7 +30,7 @@
 
     @property
     def resolver(self):
-        return resolver
+        return Resolver
 
 
 class UniqueForSimpleItem(grokcore.component.Adapter):



More information about the Checkins mailing list