Log message for revision 94534: Merged trunk r94458 and r94532 into 2.10 branch. Replace messy tests with cleaned-up versions from trunk.
Changed: U Zope/branches/2.10/lib/python/App/tests/test_version_txt.py U Zope/branches/2.10/lib/python/App/version_txt.py -=- Modified: Zope/branches/2.10/lib/python/App/tests/test_version_txt.py =================================================================== --- Zope/branches/2.10/lib/python/App/tests/test_version_txt.py 2009-01-05 12:03:11 UTC (rev 94533) +++ Zope/branches/2.10/lib/python/App/tests/test_version_txt.py 2009-01-05 12:09:46 UTC (rev 94534) @@ -15,41 +15,51 @@ $Id$ """ -import os import unittest -import Zope2 -import App.version_txt class VersionTextTestCase(unittest.TestCase): def setUp(self): - self.fn = os.path.join(os.path.dirname(Zope2.__file__), "version.txt") - App.version_txt._test_reset() + self._resetModuleGlobals() def tearDown(self): - try: - os.unlink(self.fn) - except OSError: - pass + import os + from App.version_txt import _version_file + if _version_file is not None: + os.unlink(_version_file) + self._resetModuleGlobals() + def _resetModuleGlobals(self): + from App import version_txt + version_txt._filename = 'version.txt' + version_txt._version_file = None + version_txt._version_string = None + version_txt._zope_version = None + def writeVersion(self, s): - f = open(self.fn, 'w') - f.write(s) - f.close() + import os + import tempfile + from App import version_txt + assert version_txt._version_file is None + f, version_txt._version_file = tempfile.mkstemp() + os.write(f, s) + os.close(f) def test_without_version_txt(self): - self.assertEqual(App.version_txt.getZopeVersion(), - (-1, -1, -1, '', -1)) + from App import version_txt + from App.version_txt import getZopeVersion + version_txt._filename = '' + self.assertEqual(getZopeVersion(), (-1, -1, -1, '', -1)) def test_with_version_txt_final(self): + from App.version_txt import getZopeVersion self.writeVersion("Zope 2.6.1 (source release, python 2.1, linux2)") - self.assertEqual(App.version_txt.getZopeVersion(), - (2, 6, 1, '', -1)) + self.assertEqual(getZopeVersion(), (2, 6, 1, '', -1)) def test_with_version_txt_beta(self): + from App.version_txt import getZopeVersion self.writeVersion("Zope 2.6.1b2 (source release, python 2.1, linux2)") - self.assertEqual(App.version_txt.getZopeVersion(), - (2, 6, 1, 'b', 2)) + self.assertEqual(getZopeVersion(), (2, 6, 1, 'b', 2)) def test_suite(): Modified: Zope/branches/2.10/lib/python/App/version_txt.py =================================================================== --- Zope/branches/2.10/lib/python/App/version_txt.py 2009-01-05 12:03:11 UTC (rev 94533) +++ Zope/branches/2.10/lib/python/App/version_txt.py 2009-01-05 12:09:46 UTC (rev 94534) @@ -14,24 +14,29 @@ $id$ """ -import os, sys, re +import os +import re +import sys import Zope2 +_location = os.path.dirname(Zope2.__file__) +_filename = 'version.txt' + +_version_file = None _version_string = None _zope_version = None -def _test_reset(): - # Needed for testing. - global _version_string, _zope_version - _version_string = None - _zope_version = None +def _get_filename(): + if _version_file is not None: + return _version_file + return os.path.join(_location, _filename) def _prep_version_data(): global _version_string, _zope_version if _version_string is None: v = sys.version_info pyver = "python %d.%d.%d, %s" % (v[0], v[1], v[2], sys.platform) - fn = os.path.join(os.path.dirname(Zope2.__file__), 'version.txt') + fn = _get_filename() expr = re.compile( r'(?P<product>[A-Za-z0-9]+) +(?P<major>[0-9]+)' '\.(?P<minor>[0-9]+)\.(?P<micro>[0-9]+)' _______________________________________________ Zope-Checkins maillist - Zope-Checkins@zope.org http://mail.zope.org/mailman/listinfo/zope-checkins