]> granicus.if.org Git - python/commitdiff
Issue #19587: Remove masked and redundant tests in test_bytes
authorMartin Panter <vadmium+py@gmail.com>
Tue, 2 Feb 2016 10:37:15 +0000 (10:37 +0000)
committerMartin Panter <vadmium+py@gmail.com>
Tue, 2 Feb 2016 10:37:15 +0000 (10:37 +0000)
* test_contains() did not override anything
* test_expandtabs/upper/lower() in FixedStringTest were masking usable tests
  in string_tests. These tests now get run for bytearray() and bytes().
* test_expandtabs/upper/lower() in buffer_tests were only run on bytearray()
  and are redundant with string_tests

Lib/test/buffer_tests.py
Lib/test/string_tests.py
Lib/test/test_bytes.py

index 0a629400fd94639b7fbce6ff8deae536fff016e5..8bef7e8bc9c018bd2f014912611b9541861ec4c5 100644 (file)
@@ -1,11 +1,8 @@
-# Tests that work for both bytes and buffer objects.
+# Tests that work for bytearray objects.  Could be merged into string_tests.
 # See PEP 3137.
 
-import struct
-import sys
-
 class MixinBytesBufferCommonTests(object):
-    """Tests that work for both bytes and buffer objects.
+    """Tests that work for bytearray objects.
     See PEP 3137.
     """
 
@@ -88,16 +85,6 @@ class MixinBytesBufferCommonTests(object):
 
         self.assertRaises(TypeError, self.marshal(b'abc').isdigit, 42)
 
-    def test_lower(self):
-        self.assertEqual(b'hello', self.marshal(b'HeLLo').lower())
-        self.assertEqual(b'hello', self.marshal(b'hello').lower())
-        self.assertRaises(TypeError, self.marshal(b'hello').lower, 42)
-
-    def test_upper(self):
-        self.assertEqual(b'HELLO', self.marshal(b'HeLLo').upper())
-        self.assertEqual(b'HELLO', self.marshal(b'HELLO').upper())
-        self.assertRaises(TypeError, self.marshal(b'hello').upper, 42)
-
     def test_capitalize(self):
         self.assertEqual(b' hello ', self.marshal(b' hello ').capitalize())
         self.assertEqual(b'Hello ', self.marshal(b'Hello ').capitalize())
@@ -153,35 +140,6 @@ class MixinBytesBufferCommonTests(object):
 
         self.assertRaises(TypeError, self.marshal(b'123').zfill)
 
-    def test_expandtabs(self):
-        self.assertEqual(b'abc\rab      def\ng       hi',
-                         self.marshal(b'abc\rab\tdef\ng\thi').expandtabs())
-        self.assertEqual(b'abc\rab      def\ng       hi',
-                         self.marshal(b'abc\rab\tdef\ng\thi').expandtabs(8))
-        self.assertEqual(b'abc\rab  def\ng   hi',
-                         self.marshal(b'abc\rab\tdef\ng\thi').expandtabs(4))
-        self.assertEqual(b'abc\r\nab      def\ng       hi',
-                         self.marshal(b'abc\r\nab\tdef\ng\thi').expandtabs())
-        self.assertEqual(b'abc\r\nab      def\ng       hi',
-                         self.marshal(b'abc\r\nab\tdef\ng\thi').expandtabs(8))
-        self.assertEqual(b'abc\r\nab  def\ng   hi',
-                         self.marshal(b'abc\r\nab\tdef\ng\thi').expandtabs(4))
-        self.assertEqual(b'abc\r\nab\r\ndef\ng\r\nhi',
-                         self.marshal(b'abc\r\nab\r\ndef\ng\r\nhi').expandtabs(4))
-        # check keyword args
-        self.assertEqual(b'abc\rab      def\ng       hi',
-                         self.marshal(b'abc\rab\tdef\ng\thi').expandtabs(tabsize=8))
-        self.assertEqual(b'abc\rab  def\ng   hi',
-                         self.marshal(b'abc\rab\tdef\ng\thi').expandtabs(tabsize=4))
-
-        self.assertEqual(b'  a\n b', self.marshal(b' \ta\n\tb').expandtabs(1))
-
-        self.assertRaises(TypeError, self.marshal(b'hello').expandtabs, 42, 42)
-        # This test is only valid when sizeof(int) == sizeof(void*) == 4.
-        if sys.maxsize < (1 << 32) and struct.calcsize('P') == 4:
-            self.assertRaises(OverflowError,
-                              self.marshal(b'\ta\n\tb').expandtabs, sys.maxsize)
-
     def test_title(self):
         self.assertEqual(b' Hello ', self.marshal(b' hello ').title())
         self.assertEqual(b'Hello ', self.marshal(b'hello ').title())
index 7605f0dd198ca716d9d3888dd06ac946c21d0a59..da79ffa419276874837e0783a5e2184ceb1517af 100644 (file)
@@ -1,5 +1,5 @@
 """
-Common tests shared by test_unicode, test_userstring and test_string.
+Common tests shared by test_unicode, test_userstring and test_bytes.
 """
 
 import unittest, string, sys, struct
@@ -686,8 +686,7 @@ class BaseTest:
 
 class CommonTest(BaseTest):
     # This testcase contains tests that can be used in all
-    # stringlike classes. Currently this is str, unicode
-    # UserString and the string module.
+    # stringlike classes. Currently this is str and UserString.
 
     def test_hash(self):
         # SF bug 1054139:  += optimization was not invalidating cached hash value
@@ -857,8 +856,7 @@ class CommonTest(BaseTest):
 
 class MixinStrUnicodeUserStringTest:
     # additional tests that only work for
-    # stringlike objects, i.e. str, unicode, UserString
-    # (but not the string module)
+    # stringlike objects, i.e. str, UserString
 
     def test_islower(self):
         self.checkequal(False, '', 'islower')
@@ -1343,7 +1341,7 @@ class MixinStrUnicodeUserStringTest:
 
 
 class MixinStrUnicodeTest:
-    # Additional tests that only work with str and unicode.
+    # Additional tests that only work with str.
 
     def test_bug1001011(self):
         # Make sure join returns a NEW object for single item sequences
index caf28fd346e9b8cfaf5eb0c85f83e4618a2f457b..bc1bf79ead1de744d34ed8fc158c0039e1810627 100644 (file)
@@ -1467,24 +1467,11 @@ class BytearrayPEP3137Test(unittest.TestCase,
 
 
 class FixedStringTest(test.string_tests.BaseTest):
-
     def fixtype(self, obj):
         if isinstance(obj, str):
             return obj.encode("utf-8")
         return super().fixtype(obj)
 
-    # Currently the bytes containment testing uses a single integer
-    # value. This may not be the final design, but until then the
-    # bytes section with in a bytes containment not valid
-    def test_contains(self):
-        pass
-    def test_expandtabs(self):
-        pass
-    def test_upper(self):
-        pass
-    def test_lower(self):
-        pass
-
 class ByteArrayAsStringTest(FixedStringTest, unittest.TestCase):
     type2test = bytearray
     contains_bytes = True