[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ - silenced Python 2.7 warnings
Yvo Schubbe
cvs-admin at zope.org
Tue Jul 10 06:29:28 UTC 2012
Log message for revision 127291:
- silenced Python 2.7 warnings
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/browser/content/folder.py
U Products.CMFDefault/trunk/Products/CMFDefault/tests/test_utils.py
U Products.CMFDefault/trunk/Products/CMFDefault/utils.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/content/folder.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/content/folder.py 2012-07-10 06:26:02 UTC (rev 127290)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/content/folder.py 2012-07-10 06:29:24 UTC (rev 127291)
@@ -12,6 +12,8 @@
##############################################################################
"""Browser views for folders.
"""
+
+import sys
import urllib
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
@@ -204,7 +206,10 @@
@memoize
def summary_length(self):
length = self._getBatchObj().sequence_length
- return length and thousands_commas(length) or ''
+ if sys.version_info < (2, 7):
+ # BBB: for Python 2.6
+ return length and thousands_commas(length) or ''
+ return length and '{:,}'.format(length) or ''
@memoize
def summary_type(self):
Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_utils.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_utils.py 2012-07-10 06:26:02 UTC (rev 127290)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_utils.py 2012-07-10 06:29:24 UTC (rev 127291)
@@ -15,7 +15,10 @@
import unittest
+import sys
+import warnings
+
class DefaultUtilsTests(unittest.TestCase):
COMMON_HEADERS = '''Author: Tres Seaver
@@ -321,12 +324,21 @@
def test_thousand_commas_integer(self):
from Products.CMFDefault.utils import thousands_commas as FUT
- self.assertEqual(FUT(1), '1')
- self.assertEqual(FUT(10), '10')
- self.assertEqual(FUT(100), '100')
- self.assertEqual(FUT(1000), '1,000')
- self.assertEqual(FUT(1000000), ('1,000,000'))
+ with warnings.catch_warnings(record=True) as w:
+ warnings.simplefilter('always')
+ self.assertEqual(FUT(1), '1')
+ self.assertEqual(FUT(10), '10')
+ self.assertEqual(FUT(100), '100')
+ self.assertEqual(FUT(1000), '1,000')
+ self.assertEqual(FUT(1000000), ('1,000,000'))
+ if sys.version_info >= (2, 7):
+ self.assertEqual(len(w), 5)
+ self.assertTrue(issubclass(w[-1].category, DeprecationWarning))
+ self.assertTrue(
+ 'On Python 2.7 and higher Use {:,}.formatting'
+ in str(w[-1].message))
+
def test_thousand_commas_string(self):
from Products.CMFDefault.utils import thousands_commas as FUT
self.assertRaises(ValueError, FUT, "a")
Modified: Products.CMFDefault/trunk/Products/CMFDefault/utils.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/utils.py 2012-07-10 06:26:02 UTC (rev 127290)
+++ Products.CMFDefault/trunk/Products/CMFDefault/utils.py 2012-07-10 06:29:24 UTC (rev 127291)
@@ -550,8 +550,7 @@
def thousands_commas(value):
"""Format an integer with commas as thousand separator"""
i = int(value)
- if sys.version_info[0] > 2 \
- or (sys.version_info[0] == 2 and sys.version_info[1] > 6):
+ if sys.version_info >= (2, 7):
warn("On Python 2.7 and higher Use {:,}.formatting",
DeprecationWarning,
stacklevel=2)
More information about the checkins
mailing list