[Checkins] SVN: GenericSetup/branches/wichert-zcml-steps/ Structure is still completely wrong, but we have some passing tests now

Wichert Akkerman wichert at wiggy.net
Sun Sep 23 18:16:59 EDT 2007


Log message for revision 79870:
  Structure is still completely wrong, but we have some passing tests now

Changed:
  U   GenericSetup/branches/wichert-zcml-steps/registry.py
  U   GenericSetup/branches/wichert-zcml-steps/tests/test_stepzcml.py
  U   GenericSetup/branches/wichert-zcml-steps/zcml.py

-=-
Modified: GenericSetup/branches/wichert-zcml-steps/registry.py
===================================================================
--- GenericSetup/branches/wichert-zcml-steps/registry.py	2007-09-23 21:46:42 UTC (rev 79869)
+++ GenericSetup/branches/wichert-zcml-steps/registry.py	2007-09-23 22:16:58 UTC (rev 79870)
@@ -111,7 +111,7 @@
 
     security.declarePrivate( 'unregisterStep' )
     def unregisterStep( self, id ):
-        def self._registered[id]
+        del self._registered[id]
 
     security.declarePrivate( 'clear' )
     def clear( self ):

Modified: GenericSetup/branches/wichert-zcml-steps/tests/test_stepzcml.py
===================================================================
--- GenericSetup/branches/wichert-zcml-steps/tests/test_stepzcml.py	2007-09-23 21:46:42 UTC (rev 79869)
+++ GenericSetup/branches/wichert-zcml-steps/tests/test_stepzcml.py	2007-09-23 22:16:58 UTC (rev 79870)
@@ -14,35 +14,57 @@
 """
 import unittest
 from Products.GenericSetup.zcml import cleanUpImportSteps
-#import Products.GenericSetup
+import Products.GenericSetup
 from Products.GenericSetup.registry import _import_step_registry
 from Products.GenericSetup.testing import ExportImportZCMLLayer
-#from Products.Five import zcml
+from Products.Five import zcml
 
 EMPTY_ZCML = '''<configure xmlns:genericsetup="http://namespaces.zope.org/genericsetup">
 </configure>'''
 
+ONE_STEP_ZCML = '''<configure xmlns:genericsetup="http://namespaces.zope.org/genericsetup" i18n_domain="genericsetup">
+<genericsetup:importStep
+    name="Products.GenericSetup.teststep"
+    title="step title"
+    description="step description"
+    handler="Products.GenericSetup.initialize"
+    version="1.0"
+    />
+</configure>'''
 
 class ImportStepTests(unittest.TestCase):
     layer = ExportImportZCMLLayer
 
-#    def setUp(self):
-#        zcml.load_config('meta.zcml', Products.GenericSetup)
+    def setUp(self):
+        zcml.load_config('meta.zcml', Products.GenericSetup)
 
     def tearDown(self):
         cleanUpImportSteps()
 
     def testEmptyImport(self):
         zcml.load_string(EMPTY_ZCML)
-        self.assertEqual(_import_step_registry._registry, {})
+        self.assertEqual(_import_step_registry._registered, {})
 
-    def testFail(self):
-        self.fail()
+    def testOneStepImport(self):
+        zcml.load_string(ONE_STEP_ZCML)
+        self.assertEqual(_import_step_registry._registered.keys(),
+            [ u'Products.GenericSetup.teststep'  ])
+        info = _import_step_registry._registered[ u'Products.GenericSetup.teststep' ]
+        self.assertEqual( info['description'],
+                u'step description' )
+        self.assertEqual( info['title'],
+                u'step title' )
+        self.assertEqual( info['handler'],
+                'Products.GenericSetup.initialize')
+        self.assertEqual( info['version'],
+                u'1.0' )
+        self.assertEqual( info['id'],
+                u'Products.GenericSetup.teststep' )
 
 
 def test_suite():
     return unittest.TestSuite((
-        unittest.MakeSuite(ImportStepTests),
+        unittest.makeSuite(ImportStepTests),
         ))
 
 if __name__ == '__main__':

Modified: GenericSetup/branches/wichert-zcml-steps/zcml.py
===================================================================
--- GenericSetup/branches/wichert-zcml-steps/zcml.py	2007-09-23 21:46:42 UTC (rev 79869)
+++ GenericSetup/branches/wichert-zcml-steps/zcml.py	2007-09-23 22:16:58 UTC (rev 79870)
@@ -1,4 +1,4 @@
-##############################################################################
+
 #
 # Copyright (c) 2006 Zope Corporation and Contributors. All Rights Reserved.
 #
@@ -122,7 +122,8 @@
 def importStep(_context, name, version, title, description, handler):
     """ Add a new import step to the registry.
     """
-    _import_steps_regs.append(name)
+    global _import_step_regs
+    _import_step_regs.append(name)
 
     _context.action(
         discriminator = ('importStep', name),
@@ -233,11 +234,15 @@
 
     _upgrade_registry.clear()
 
+
 def cleanUpImportSteps():
     global _import_step_regs
     for name in  _import_step_regs:
+        try:
+             _import_step_registry.unregisterStep( name )
+        except KeyError:
+            pass
 
-
 from zope.testing.cleanup import addCleanUp
 addCleanUp(cleanUpProfiles)
 addCleanUp(cleanUpImportSteps)



More information about the Checkins mailing list