[Checkins] SVN: Products.GenericSetup/trunk/Products/GenericSetup/t
- made sure getSortedImportSteps doesn't return duplicates
Yvo Schubbe
y.2007- at wcm-solutions.de
Thu Dec 20 06:34:27 EST 2007
Log message for revision 82370:
- made sure getSortedImportSteps doesn't return duplicates
- replaced '_registered' usage by registry API methods
- added tests for listExportSteps and getSortedImportSteps
Changed:
U Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py
U Products.GenericSetup/trunk/Products/GenericSetup/tool.py
-=-
Modified: Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py
===================================================================
--- Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py 2007-12-20 06:47:44 UTC (rev 82369)
+++ Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py 2007-12-20 11:34:26 UTC (rev 82370)
@@ -891,6 +891,33 @@
(profile_registry._profile_info,
profile_registry._profile_ids) = orig_profile_reg
+ def test_listExportSteps(self):
+ site = self._makeSite()
+ site.setup_tool = self._makeOne('setup_tool')
+ tool = site.setup_tool
+ self.assertEqual(tool.listExportSteps(),
+ (u'step_registries',))
+
+ tool._export_registry.registerStep(u'foo', handler='foo.export')
+ tool._export_registry.registerStep(u'toolset',
+ handler='toolset.export')
+ self.assertEqual(tool.listExportSteps(),
+ (u'toolset', u'step_registries', u'foo'))
+
+ def test_getSortedImportSteps(self):
+ site = self._makeSite()
+ site.setup_tool = self._makeOne('setup_tool')
+ tool = site.setup_tool
+ self.assertEqual(tool.getSortedImportSteps(),
+ ())
+
+ tool._import_registry.registerStep(u'foo', handler='foo.import')
+ tool._import_registry.registerStep(u'toolset',
+ handler='toolset.import')
+ self.assertEqual(tool.getSortedImportSteps(),
+ (u'foo', u'toolset'))
+
+
_DEFAULT_STEP_REGISTRIES_EXPORT_XML = """\
<?xml version="1.0"?>
<export-steps>
Modified: Products.GenericSetup/trunk/Products/GenericSetup/tool.py
===================================================================
--- Products.GenericSetup/trunk/Products/GenericSetup/tool.py 2007-12-20 06:47:44 UTC (rev 82369)
+++ Products.GenericSetup/trunk/Products/GenericSetup/tool.py 2007-12-20 11:34:26 UTC (rev 82370)
@@ -270,8 +270,8 @@
security.declareProtected(ManagePortal, 'listExportSteps')
def listExportSteps(self):
- steps = _export_step_registry._registered.keys() + \
- self._export_registry._registered.keys()
+ steps = _export_step_registry.listSteps() + \
+ self._export_registry.listSteps()
return tuple(set(steps))
security.declareProtected(ManagePortal, 'getImportStep')
@@ -284,9 +284,11 @@
security.declareProtected(ManagePortal, 'getSortedImportSteps')
def getSortedImportSteps(self):
- steps = _import_step_registry._registered.values() + \
- self._import_registry._registered.values()
- return _computeTopologicalSort(steps)
+ steps = _import_step_registry.listSteps() + \
+ self._import_registry.listSteps()
+ step_infos = [ self.getImportStepMetadata(step)
+ for step in set(steps) ]
+ return tuple(_computeTopologicalSort(step_infos))
security.declareProtected(ManagePortal, 'getImportStepMetadata')
def getImportStepMetadata(self, step, default=None):
More information about the Checkins
mailing list