[Testbot] Plone 5.0 - Python 2.7 - Build # 4070 - Still failing! - 0 failure(s)

jenkins at plone.org jenkins at plone.org
Wed Jan 28 09:54:38 UTC 2015


-------------------------------------------------------------------------------
Plone 5.0 - Python 2.7 - Build # 4070 - Still Failing!
-------------------------------------------------------------------------------

http://jenkins.plone.org/job/plone-5.0-python-2.7/4070/


-------------------------------------------------------------------------------
CHANGES
-------------------------------------------------------------------------------

Repository: plone.app.upgrade
Branch: refs/heads/master
Date: 2015-01-27T22:14:24+01:00
Author: Jens W. Klein (jensens) <jk at kleinundpartner.at>
Commit: https://github.com/plone/plone.app.upgrade/commit/e33e06cc73b14fe73ac60ff83616ee7a4ff8d9e3

Do not run tests not suited for the current Plone version (implemented for 4.0 and below)

Files changed:
M CHANGES.rst
M plone/app/upgrade/tests/base.py
M plone/app/upgrade/utils.py
M plone/app/upgrade/v25/tests.py
M plone/app/upgrade/v30/tests.py
M plone/app/upgrade/v31/tests.py
M plone/app/upgrade/v32/tests.py
M plone/app/upgrade/v33/tests.py
M plone/app/upgrade/v40/tests.py

diff --git a/CHANGES.rst b/CHANGES.rst
index 1bf846a..f75c955 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -4,6 +4,10 @@ Changelog
 1.3.9 (unreleased)
 ------------------
 
+- Do not run tests not suited for the current Plone version 
+  (implemented for 4.0 and below)
+  [jensens]
+
 - Add upgrade step for the security control panel.
   [jcerjak]
 
diff --git a/plone/app/upgrade/tests/base.py b/plone/app/upgrade/tests/base.py
index 840416c..5359e35 100644
--- a/plone/app/upgrade/tests/base.py
+++ b/plone/app/upgrade/tests/base.py
@@ -10,9 +10,9 @@
 from zope.site.hooks import setSite
 
 from Testing.ZopeTestCase.sandbox import Sandboxed
+from Products.PloneTestCase.PloneTestCase import PloneTestCase
 from Products.PloneTestCase.layer import PloneSiteLayer
-from Products.PloneTestCase.ptc import PloneTestCase
-from Products.PloneTestCase.ptc import setupPloneSite
+from Products.PloneTestCase.setup import setupPloneSite
 
 from Products.CMFCore.interfaces import IActionCategory
 from Products.CMFCore.interfaces import IActionInfo
@@ -20,8 +20,9 @@
 from Products.CMFCore.tests.base.testcase import WarningInterceptor
 from Products.GenericSetup.context import TarballImportContext
 
-setupPloneSite()
+from Products.Five import zcml
 
+setupPloneSite(products=["plone.app.folder"])
 
 class MigrationTest(PloneTestCase):
 
diff --git a/plone/app/upgrade/utils.py b/plone/app/upgrade/utils.py
index 5f1b5c7..f4ecf69 100644
--- a/plone/app/upgrade/utils.py
+++ b/plone/app/upgrade/utils.py
@@ -11,10 +11,18 @@
 from Products.ZCatalog.ProgressHandler import ZLogHandler
 from ZODB.POSException import ConflictError
 
+import pkg_resources
+
 _marker = []
 
 logger = logging.getLogger('plone.app.upgrade')
 
+plone_version = pkg_resources.get_distribution("Products.CMFPlone").version
+
+
+def version_match(target):
+    return target <= plone_version < (target + 'zzzzzzz')
+
 
 def null_upgrade_step(tool):
     """ This is a null upgrade, use it when nothing happens """
diff --git a/plone/app/upgrade/v25/tests.py b/plone/app/upgrade/v25/tests.py
index 036e8b5..32628fb 100644
--- a/plone/app/upgrade/v25/tests.py
+++ b/plone/app/upgrade/v25/tests.py
@@ -4,6 +4,7 @@
 from plone.app.upgrade.tests.base import FunctionalUpgradeTestCase
 from plone.app.upgrade.tests.base import MigrationTest
 from plone.app.upgrade.utils import loadMigrationProfile
+from plone.app.upgrade.utils import version_match
 
 from plone.app.upgrade.v25 import fixupPloneLexicon
 from plone.app.upgrade.v25 import setLoginFormInCookieAuth
@@ -117,6 +118,8 @@ def testDCMIStorageUpdated(self):
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()
+    if not version_match('2.5'):
+        return suite
     suite.addTest(makeSuite(TestMigrations_v2_5_0))
     suite.addTest(makeSuite(TestMigrations_v2_5_1))
     suite.addTest(makeSuite(TestMigrations_v2_5_2))
diff --git a/plone/app/upgrade/v30/tests.py b/plone/app/upgrade/v30/tests.py
index 9325d0d..e4bf5da 100644
--- a/plone/app/upgrade/v30/tests.py
+++ b/plone/app/upgrade/v30/tests.py
@@ -74,6 +74,7 @@
 from plone.app.upgrade.tests.base import FunctionalUpgradeTestCase
 from plone.app.upgrade.tests.base import MigrationTest
 from plone.app.upgrade.utils import loadMigrationProfile
+from plone.app.upgrade.utils import version_match
 
 from plone.app.upgrade.v30.alphas import enableZope3Site
 from plone.app.upgrade.v30.alphas import migrateOldActions
@@ -1100,6 +1101,8 @@ def testFullUpgrade(self):
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()
+    if not version_match('3.0'):
+        return suite
     suite.addTest(makeSuite(TestMigrations_v2_5_x))
     suite.addTest(makeSuite(TestMigrations_v3_0_Actions))
     suite.addTest(makeSuite(TestMigrations_v3_0_alpha1))
diff --git a/plone/app/upgrade/v31/tests.py b/plone/app/upgrade/v31/tests.py
index 01005b3..a0a49e9 100644
--- a/plone/app/upgrade/v31/tests.py
+++ b/plone/app/upgrade/v31/tests.py
@@ -5,6 +5,7 @@
 
 from plone.app.upgrade.tests.base import FunctionalUpgradeTestCase
 from plone.app.upgrade.tests.base import MigrationTest
+from plone.app.upgrade.utils import version_match
 
 from plone.app.upgrade.v31.betas import reinstallCMFPlacefulWorkflow
 
@@ -113,6 +114,8 @@ def testFullUpgrade(self):
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()
+    if not version_match('3.1'):
+        return suite
     suite.addTest(makeSuite(TestMigrations_v3_1))
     suite.addTest(makeSuite(TestFunctionalMigrations))
     return suite
diff --git a/plone/app/upgrade/v32/tests.py b/plone/app/upgrade/v32/tests.py
index bc0e7a1..5cf445a 100644
--- a/plone/app/upgrade/v32/tests.py
+++ b/plone/app/upgrade/v32/tests.py
@@ -1,5 +1,6 @@
 from plone.app.upgrade.tests.base import FunctionalUpgradeTestCase
 from plone.app.upgrade.tests.base import MigrationTest
+from plone.app.upgrade.utils import version_match
 from plone.app.upgrade.v32.betas import three1_beta1
 
 class TestMigrations_v3_2(MigrationTest):
@@ -45,6 +46,8 @@ def testFullUpgrade(self):
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()
+    if not version_match('3.2'):
+        return suite
     suite.addTest(makeSuite(TestMigrations_v3_2))
     suite.addTest(makeSuite(TestFunctionalMigrations))
     return suite
diff --git a/plone/app/upgrade/v33/tests.py b/plone/app/upgrade/v33/tests.py
index 01a5de8..3c846cd 100644
--- a/plone/app/upgrade/v33/tests.py
+++ b/plone/app/upgrade/v33/tests.py
@@ -3,6 +3,8 @@
 from plone.app.upgrade.tests.base import FunctionalUpgradeTestCase
 from plone.app.upgrade.tests.base import MigrationTest
 from plone.app.upgrade.v33 import three2_three3
+from plone.app.upgrade.utils import version_match
+
 
 class TestMigrations_v3_3(MigrationTest):
 
@@ -88,6 +90,8 @@ def testFolderUpgrade(self):
 def test_suite():
     from unittest import TestSuite, makeSuite
     suite = TestSuite()
+    if not version_match('3.3'):
+        return suite
     suite.addTest(makeSuite(TestMigrations_v3_3))
     suite.addTest(makeSuite(TestFunctionalMigrations))
     return suite
diff --git a/plone/app/upgrade/v40/tests.py b/plone/app/upgrade/v40/tests.py
index c350619..42b7bb0 100644
--- a/plone/app/upgrade/v40/tests.py
+++ b/plone/app/upgrade/v40/tests.py
@@ -30,6 +30,7 @@
 from plone.app.upgrade.v40.betas import updateIconMetadata
 from plone.app.upgrade.v40.betas import removeLargePloneFolder
 from plone.app.upgrade.tests.base import MigrationTest
+from plone.app.upgrade.utils import version_match
 
 from plone.portlet.static import static
 from plone.portlets.interfaces import IPortletAssignmentMapping
@@ -662,5 +663,7 @@ def testProfile(self):
 
 
 def test_suite():
-    from unittest import defaultTestLoader
-    return defaultTestLoader.loadTestsFromName(__name__)
+    import unittest
+    if not version_match('4.0'):
+        return unittest.TestSuite()
+    return unittest.defaultTestLoader.loadTestsFromName(__name__)


Repository: plone.app.upgrade
Branch: refs/heads/master
Date: 2015-01-28T10:26:03+01:00
Author: Johannes Raggam (thet) <raggam-nl at adm.at>
Commit: https://github.com/plone/plone.app.upgrade/commit/b6cfbf145d39a5278bdf71cbc2b29359aa27ccd5

better version_match

Files changed:
M plone/app/upgrade/tests/test_upgrade.py
M plone/app/upgrade/utils.py
M setup.py

diff --git a/plone/app/upgrade/tests/test_upgrade.py b/plone/app/upgrade/tests/test_upgrade.py
index c697671..68511cd 100644
--- a/plone/app/upgrade/tests/test_upgrade.py
+++ b/plone/app/upgrade/tests/test_upgrade.py
@@ -1,7 +1,8 @@
 from Products.CMFPlone.factory import _DEFAULT_PROFILE
 from Products.CMFCore.utils import getToolByName
-
+from plone.app.upgrade.utils import version_match
 from plone.app.upgrade.tests.base import MigrationTest
+import mock
 
 
 class TestUpgrade(MigrationTest):
@@ -24,6 +25,16 @@ def testProfileVersion(self):
         last = self.setup.getLastVersionForProfile(_DEFAULT_PROFILE)
         self.assertEqual(last, current)
 
+    @mock.patch('plone.app.upgrades.utils.plone_version', '5.0b1')
+    def testVersionMatch(self):
+        self.assertFalse(version_match('2.5'))
+        self.assertFalse(version_match('3.1b1'))
+        self.assertFalse(version_match('5.2.b1'))
+        self.assertTrue(version_match('5.0a3.dev0'))
+        self.assertTrue(version_match('5.0b1.dev0'))
+        self.assertTrue(version_match('5.0b3'))
+        self.assertTrue(version_match('5.0'))
+
     def testDoUpgrades(self):
         self.setRoles(['Manager'])
 
diff --git a/plone/app/upgrade/utils.py b/plone/app/upgrade/utils.py
index f4ecf69..7a2199c 100644
--- a/plone/app/upgrade/utils.py
+++ b/plone/app/upgrade/utils.py
@@ -21,7 +21,13 @@
 
 
 def version_match(target):
-    return target <= plone_version < (target + 'zzzzzzz')
+    """ Given, our versioning scheme is always major.minorANYTHING, where major
+    and minor are single-digit numbers, we can compare versions as follows.
+    pkg_resources.parse_version is not compatible with our versioning scheme
+    (like '5.0b1') and also not compatible with the semver.org proposal
+    (requires '5.0-beta1').
+    """
+    return (target[0], target[1]) == (plone_version[0], plone_version[1])
 
 
 def null_upgrade_step(tool):
diff --git a/setup.py b/setup.py
index 1dd33a5..9c38656 100644
--- a/setup.py
+++ b/setup.py
@@ -26,6 +26,7 @@
       zip_safe=False,
       extras_require=dict(
         test=[
+            'mock',
             'Products.CMFPlacefulWorkflow',
             'Products.CMFQuickInstallerTool',
             'Products.PloneTestCase',




-------------------------------------------------------------------------------
-------------- next part --------------
A non-text attachment was scrubbed...
Name: CHANGES.log
Type: application/octet-stream
Size: 10256 bytes
Desc: not available
URL: <http://lists.plone.org/pipermail/plone-testbot/attachments/20150128/c7d94b16/attachment-0002.obj>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: build.log
Type: application/octet-stream
Size: 98530 bytes
Desc: not available
URL: <http://lists.plone.org/pipermail/plone-testbot/attachments/20150128/c7d94b16/attachment-0003.obj>


More information about the Testbot mailing list