[Python-checkins] r84766 - in python/branches/release27-maint: Doc/reference/simple_stmts.rst Lib/string.py Lib/test/string_tests.py Lib/test/test_bytes.py Lib/test/test_unicode.py Misc/pymemcompat.h

florent.xicluna python-checkins at python.org
Mon Sep 13 09:46:37 CEST 2010


Author: florent.xicluna
Date: Mon Sep 13 09:46:37 2010
New Revision: 84766

Log:
Merged revisions 84470-84471,84566-84567,84759 via svnmerge from 
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84470 | florent.xicluna | 2010-09-03 22:00:37 +0200 (ven., 03 sept. 2010) | 1 line
  
  Strengthen BytesWarning tests.
........
  r84471 | florent.xicluna | 2010-09-03 22:23:40 +0200 (ven., 03 sept. 2010) | 1 line
  
  Typo
........
  r84566 | florent.xicluna | 2010-09-06 22:27:15 +0200 (lun., 06 sept. 2010) | 1 line
  
  typo
........
  r84567 | florent.xicluna | 2010-09-06 22:27:55 +0200 (lun., 06 sept. 2010) | 1 line
  
  typo
........
  r84759 | florent.xicluna | 2010-09-13 04:28:18 +0200 (lun., 13 sept. 2010) | 1 line
  
  Reenable test_ucs4 and remove some duplicated lines.
........


Modified:
   python/branches/release27-maint/   (props changed)
   python/branches/release27-maint/Doc/reference/simple_stmts.rst
   python/branches/release27-maint/Lib/string.py
   python/branches/release27-maint/Lib/test/string_tests.py
   python/branches/release27-maint/Lib/test/test_bytes.py
   python/branches/release27-maint/Lib/test/test_unicode.py
   python/branches/release27-maint/Misc/pymemcompat.h

Modified: python/branches/release27-maint/Doc/reference/simple_stmts.rst
==============================================================================
--- python/branches/release27-maint/Doc/reference/simple_stmts.rst	(original)
+++ python/branches/release27-maint/Doc/reference/simple_stmts.rst	Mon Sep 13 09:46:37 2010
@@ -836,7 +836,7 @@
 exists. Two dots means up one package level. Three dots is up two levels, etc.
 So if you execute ``from . import mod`` from a module in the ``pkg`` package
 then you will end up importing ``pkg.mod``. If you execute ``from ..subpkg2
-imprt mod`` from within ``pkg.subpkg1`` you will import ``pkg.subpkg2.mod``.
+import mod`` from within ``pkg.subpkg1`` you will import ``pkg.subpkg2.mod``.
 The specification for relative imports is contained within :pep:`328`.
 
 :func:`importlib.import_module` is provided to support applications that

Modified: python/branches/release27-maint/Lib/string.py
==============================================================================
--- python/branches/release27-maint/Lib/string.py	(original)
+++ python/branches/release27-maint/Lib/string.py	Mon Sep 13 09:46:37 2010
@@ -607,7 +607,7 @@
             return str(value)
         elif conversion is None:
             return value
-        raise ValueError("Unknown converion specifier {0!s}".format(conversion))
+        raise ValueError("Unknown conversion specifier {0!s}".format(conversion))
 
 
     # returns an iterable that contains tuples of the form:

Modified: python/branches/release27-maint/Lib/test/string_tests.py
==============================================================================
--- python/branches/release27-maint/Lib/test/string_tests.py	(original)
+++ python/branches/release27-maint/Lib/test/string_tests.py	Mon Sep 13 09:46:37 2010
@@ -1119,7 +1119,7 @@
             format = '%%.%if' % prec
             value = 0.01
             for x in xrange(60):
-                value = value * 3.141592655 / 3.0 * 10.0
+                value = value * 3.14159265359 / 3.0 * 10.0
                 self.checkcall(format, "__mod__", value)
 
     def test_inplace_rewrites(self):

Modified: python/branches/release27-maint/Lib/test/test_bytes.py
==============================================================================
--- python/branches/release27-maint/Lib/test/test_bytes.py	(original)
+++ python/branches/release27-maint/Lib/test/test_bytes.py	Mon Sep 13 09:46:37 2010
@@ -9,14 +9,28 @@
 import re
 import sys
 import copy
+import functools
 import pickle
 import tempfile
 import unittest
-import warnings
 import test.test_support
 import test.string_tests
 import test.buffer_tests
 
+
+if sys.flags.bytes_warning:
+    def check_bytes_warnings(func):
+        @functools.wraps(func)
+        def wrapper(*args, **kw):
+            with test.test_support.check_warnings(('', BytesWarning)):
+                return func(*args, **kw)
+        return wrapper
+else:
+    # no-op
+    def check_bytes_warnings(func):
+        return func
+
+
 class Indexable:
     def __init__(self, value=0):
         self.value = value
@@ -26,12 +40,6 @@
 
 class BaseBytesTest(unittest.TestCase):
 
-    def setUp(self):
-        self.warning_filters = warnings.filters[:]
-
-    def tearDown(self):
-        warnings.filters = self.warning_filters
-
     def test_basics(self):
         b = self.type2test()
         self.assertEqual(type(b), self.type2test)
@@ -120,8 +128,8 @@
         self.assertFalse(b3 <  b2)
         self.assertFalse(b3 <= b2)
 
+    @check_bytes_warnings
     def test_compare_to_str(self):
-        warnings.simplefilter('ignore', BytesWarning)
         # Byte comparisons with unicode should always fail!
         # Test this for all expected byte orders and Unicode character sizes
         self.assertEqual(self.type2test(b"\0a\0b\0c") == u"abc", False)
@@ -795,14 +803,8 @@
     # Test various combinations of bytes and bytearray
     #
 
-    def setUp(self):
-        self.warning_filters = warnings.filters[:]
-
-    def tearDown(self):
-        warnings.filters = self.warning_filters
-
+    @check_bytes_warnings
     def test_repr_str(self):
-        warnings.simplefilter('ignore', BytesWarning)
         for f in str, repr:
             self.assertEqual(f(bytearray()), "bytearray(b'')")
             self.assertEqual(f(bytearray([0])), "bytearray(b'\\x00')")
@@ -853,8 +855,8 @@
         b = bytearray(buf)
         self.assertEqual(b, bytearray(sample))
 
+    @check_bytes_warnings
     def test_to_str(self):
-        warnings.simplefilter('ignore', BytesWarning)
         self.assertEqual(str(b''), "b''")
         self.assertEqual(str(b'x'), "b'x'")
         self.assertEqual(str(b'\x80'), "b'\\x80'")

Modified: python/branches/release27-maint/Lib/test/test_unicode.py
==============================================================================
--- python/branches/release27-maint/Lib/test/test_unicode.py	(original)
+++ python/branches/release27-maint/Lib/test/test_unicode.py	Mon Sep 13 09:46:37 2010
@@ -593,9 +593,9 @@
         )
 
         # UTF-8 specific decoding tests
-        self.assertEqual(unicode('\xf0\xa3\x91\x96', 'utf-8'), u'\U00023456' )
-        self.assertEqual(unicode('\xf0\x90\x80\x82', 'utf-8'), u'\U00010002' )
-        self.assertEqual(unicode('\xe2\x82\xac', 'utf-8'), u'\u20ac' )
+        self.assertEqual(unicode('\xf0\xa3\x91\x96', 'utf-8'), u'\U00023456')
+        self.assertEqual(unicode('\xf0\x90\x80\x82', 'utf-8'), u'\U00010002')
+        self.assertEqual(unicode('\xe2\x82\xac', 'utf-8'), u'\u20ac')
 
         # Other possible utf-8 test cases:
         # * strict decoding testing for all of the
@@ -1360,8 +1360,8 @@
             def __unicode__(self):
                 return u'__unicode__ overridden'
         u = U(u'xxx')
-        self.assertEquals("%s" % u, u'__unicode__ overridden')
-        self.assertEquals("{}".format(u), u'__unicode__ overridden')
+        self.assertEqual("%s" % u, u'__unicode__ overridden')
+        self.assertEqual("{}".format(u), u'__unicode__ overridden')
 
 
 def test_main():

Modified: python/branches/release27-maint/Misc/pymemcompat.h
==============================================================================
--- python/branches/release27-maint/Misc/pymemcompat.h	(original)
+++ python/branches/release27-maint/Misc/pymemcompat.h	Mon Sep 13 09:46:37 2010
@@ -72,7 +72,7 @@
 
    It is possible to support both the 2.0 and 2.2 GC APIs, but it's
    not pretty and this comment block is too narrow to contain a
-   desciption of what's required... */
+   description of what's required... */
 
 #if PY_VERSION_HEX < 0x020200B1
 #define PyObject_GC_New         PyObject_New


More information about the Python-checkins mailing list