[Checkins] SVN: zope.traversing/trunk/ zcml now only depends on zope.component meta, not zope.app.component

Gary Poster gary at modernsongs.com
Thu Apr 2 02:46:53 EDT 2009


Log message for revision 98787:
  zcml now only depends on zope.component meta, not zope.app.component

Changed:
  U   zope.traversing/trunk/CHANGES.txt
  U   zope.traversing/trunk/src/zope/traversing/configure.zcml
  A   zope.traversing/trunk/src/zope/traversing/tests/ftest_zcml_dependencies.zcml
  A   zope.traversing/trunk/src/zope/traversing/tests/test_dependencies.py

-=-
Modified: zope.traversing/trunk/CHANGES.txt
===================================================================
--- zope.traversing/trunk/CHANGES.txt	2009-04-02 02:22:07 UTC (rev 98786)
+++ zope.traversing/trunk/CHANGES.txt	2009-04-02 06:46:52 UTC (rev 98787)
@@ -5,7 +5,7 @@
 3.5.4 (unreleased)
 ------------------
 
-- ...
+- Change configure.zcml to not depend on zope.app.component.
 
 3.5.3 (2009-03-10)
 ------------------

Modified: zope.traversing/trunk/src/zope/traversing/configure.zcml
===================================================================
--- zope.traversing/trunk/src/zope/traversing/configure.zcml	2009-04-02 02:22:07 UTC (rev 98786)
+++ zope.traversing/trunk/src/zope/traversing/configure.zcml	2009-04-02 06:46:52 UTC (rev 98787)
@@ -16,10 +16,10 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.etc"
     />
-<view
+<adapter
     name="etc"
-    type="zope.interface.Interface"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.etc"
     />
 
@@ -28,10 +28,10 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.attr"
     />
-<view
+<adapter
     name="attribute"
-    type="zope.interface.Interface"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.attr"
     />
 
@@ -40,10 +40,10 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.adapter"
     />
-<view
+<adapter
     name="adapter"
-    type="zope.interface.Interface"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.adapter"
     />
 
@@ -52,9 +52,10 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.item"
     />
-<view
-    name="item" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="item"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.item"
     />
 
@@ -63,21 +64,24 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.acquire"
     />
-<view
-    name="acquire" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="acquire"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.acquire"
     />
 
-<view
-    name="view" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="view"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.view"
     />
 
-<view
-    name="resource" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="resource"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.resource"
     />
 
@@ -86,21 +90,24 @@
     provides="zope.traversing.interfaces.ITraversable" for="*"
     factory="zope.traversing.namespace.lang"
     />
-<view
-    name="lang" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="lang"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.lang"
     />
 
-<view
-    name="skin" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="skin"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.skin"
     />
 
-<view
-    name="vh" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+<adapter
+    name="vh"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.vh"
     />
 
@@ -110,10 +117,11 @@
  See issue 507 for the rationale of binding this to developer-mode only.
  -->
 
-<view
+<adapter
     zcml:condition="have devmode"
-    name="debug" type="*"
-    provides="zope.traversing.interfaces.ITraversable" for="*"
+    name="debug"
+    for="* zope.publisher.interfaces.IRequest"
+    provides="zope.traversing.interfaces.ITraversable"
     factory="zope.traversing.namespace.debug"
     />
 

Added: zope.traversing/trunk/src/zope/traversing/tests/ftest_zcml_dependencies.zcml
===================================================================
--- zope.traversing/trunk/src/zope/traversing/tests/ftest_zcml_dependencies.zcml	                        (rev 0)
+++ zope.traversing/trunk/src/zope/traversing/tests/ftest_zcml_dependencies.zcml	2009-04-02 06:46:52 UTC (rev 98787)
@@ -0,0 +1,10 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:webservice="http://namespaces.canonical.com/webservice"
+    i18n_domain="lazr">
+
+    <include package="zope.component" file="meta.zcml"/>
+
+    <include package="zope.traversing"/>
+
+</configure>

Added: zope.traversing/trunk/src/zope/traversing/tests/test_dependencies.py
===================================================================
--- zope.traversing/trunk/src/zope/traversing/tests/test_dependencies.py	                        (rev 0)
+++ zope.traversing/trunk/src/zope/traversing/tests/test_dependencies.py	2009-04-02 06:46:52 UTC (rev 98787)
@@ -0,0 +1,37 @@
+import os
+import unittest
+
+import zope.component
+from zope.app.testing import functional
+from zope.publisher.browser import TestRequest
+
+from zope.traversing.interfaces import ITraversable
+import zope.traversing.namespace
+
+
+TraversingLayer = functional.ZCMLLayer(
+    os.path.join(os.path.dirname(__file__), 'ftest_zcml_dependencies.zcml'),
+    __name__, 'TraversingLayer', allow_teardown=True)
+
+
+class ZCMLDependencies(functional.BrowserTestCase):
+
+    def test_zcml_can_load_with_only_zope_component_meta(self):
+        # this is just an example.  It is supposed to show that the
+        # configure.zcml file has loaded successfully, with only loading the
+        # meta.zcml from zope.component.
+        request = TestRequest()
+        res = zope.component.getMultiAdapter(
+            (self, request), ITraversable, 'lang')
+        self.failUnless(isinstance(res, zope.traversing.namespace.lang))
+        self.failUnless(res.context is self)
+
+def test_suite():
+    suite = unittest.TestSuite()
+    ZCMLDependencies.layer = TraversingLayer
+    suite.addTest(unittest.makeSuite(ZCMLDependencies))
+    return suite
+
+
+if __name__ == '__main__':
+    unittest.main()



More information about the Checkins mailing list