[Checkins] SVN: Products.GenericSetup/trunk/ Forward port fix for LP #553338 from 1.4 branch.
Tres Seaver
tseaver at palladion.com
Thu Apr 1 15:42:36 EDT 2010
Log message for revision 110436:
Forward port fix for LP #553338 from 1.4 branch.
Changed:
U Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py
U Products.GenericSetup/trunk/Products/GenericSetup/tool.py
U Products.GenericSetup/trunk/docs/CHANGES.rst
-=-
Modified: Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py
===================================================================
--- Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py 2010-04-01 19:37:16 UTC (rev 110435)
+++ Products.GenericSetup/trunk/Products/GenericSetup/tests/test_tool.py 2010-04-01 19:42:36 UTC (rev 110436)
@@ -968,6 +968,35 @@
(profile_registry._profile_info,
profile_registry._profile_ids) = orig_profile_reg
+ def test_manage_doUpgrades_no_profile_id_or_updates(self):
+ site = self._makeSite()
+ site.setup_tool = self._makeOne('setup_tool')
+ tool = site.setup_tool
+ request = site.REQUEST
+ tool.manage_doUpgrades()
+ self.assertEqual(tool._profile_upgrade_versions, {})
+
+ def test_manage_doUpgrades_upgrade_w_no_target_version(self):
+ from Products.GenericSetup.upgrade import UpgradeStep
+ from Products.GenericSetup.upgrade import _registerUpgradeStep
+ from Products.GenericSetup.upgrade import _upgrade_registry
+ old = dict(_upgrade_registry._registry)
+ try:
+ step = UpgradeStep('TITLE', 'foo', '*', '*', 'DESC',
+ lambda tool: None)
+ _registerUpgradeStep(step)
+ site = self._makeSite()
+ site.setup_tool = self._makeOne('setup_tool')
+ tool = site.setup_tool
+ request = site.REQUEST
+ request['profile_id'] = ['foo']
+ request['upgrade'] = [step.id]
+ tool.manage_doUpgrades()
+ self.assertEqual(tool._profile_upgrade_versions, {})
+ finally:
+ _upgrade_registry._registry.clear()
+ _upgrade_registry._registry.update(old)
+
def test_listExportSteps(self):
site = self._makeSite()
site.setup_tool = self._makeOne('setup_tool')
Modified: Products.GenericSetup/trunk/Products/GenericSetup/tool.py
===================================================================
--- Products.GenericSetup/trunk/Products/GenericSetup/tool.py 2010-04-01 19:37:16 UTC (rev 110435)
+++ Products.GenericSetup/trunk/Products/GenericSetup/tool.py 2010-04-01 19:42:36 UTC (rev 110436)
@@ -873,6 +873,7 @@
logger = logging.getLogger('GenericSetup')
steps_to_run = request.form.get('upgrades', [])
profile_id = request.get('profile_id', '')
+ step = None
for step_id in steps_to_run:
step = _upgrade_registry.getUpgradeStep(profile_id, step_id)
if step is not None:
@@ -883,7 +884,7 @@
# We update the profile version to the last one we have reached
# with running an upgrade step.
- if step.dest is not None and step.checker is None:
+ if step and step.dest is not None and step.checker is None:
self.setLastVersionForProfile(profile_id, step.dest)
url = self.absolute_url()
Modified: Products.GenericSetup/trunk/docs/CHANGES.rst
===================================================================
--- Products.GenericSetup/trunk/docs/CHANGES.rst 2010-04-01 19:37:16 UTC (rev 110435)
+++ Products.GenericSetup/trunk/docs/CHANGES.rst 2010-04-01 19:42:36 UTC (rev 110436)
@@ -4,8 +4,11 @@
1.6.1 (unreleased)
------------------
-- TBD
+- Fixed bug which broke the took upgrade tab after running an upgrade step
+ which used ``None`` as its destintaion version.
+ https://bugs.launchpad.net/bugs/553338
+
1.6.0 (2010-03-08)
------------------
More information about the checkins
mailing list