diff -r 4617b7ac302a Lib/test/test_array.py --- a/Lib/test/test_array.py Tue Jan 08 11:27:18 2013 +0000 +++ b/Lib/test/test_array.py Wed Jan 09 09:48:28 2013 -0600 @@ -31,7 +31,6 @@ def __init__(self, typecode, newarg=None): array.array.__init__(self) -tests = [] # list to accumulate all tests typecodes = "ubBhHiIlLfd" if have_long_long: typecodes += 'qQ' @@ -44,7 +43,6 @@ self.assertRaises(TypeError, array.array, 'xx') self.assertRaises(ValueError, array.array, 'x') -tests.append(BadConstructorTest) # Machine format codes. # @@ -174,10 +172,7 @@ msg="{0!r} != {1!r}; testcase={2!r}".format(a, b, testcase)) -tests.append(ArrayReconstructorTest) - - -class BaseTest(unittest.TestCase): +class BaseTest: # Required class attributes (provided by subclasses # typecode: the typecode to test # example: an initializer usable in the constructor for this type @@ -1036,7 +1031,7 @@ a = array.array(self.typecode, self.example) self.assertRaises(TypeError, a.__setitem__, 0, self.example[:2]) -class UnicodeTest(StringTest): +class UnicodeTest(StringTest, unittest.TestCase): typecode = 'u' example = '\x01\u263a\x00\ufeff' smallerexample = '\x01\u263a\x00\ufefe' @@ -1074,8 +1069,6 @@ self.assertRaises(TypeError, a.fromunicode) -tests.append(UnicodeTest) - class NumberTest(BaseTest): def test_extslice(self): @@ -1216,57 +1209,47 @@ ) -class ByteTest(SignedNumberTest): +class ByteTest(SignedNumberTest, unittest.TestCase): typecode = 'b' minitemsize = 1 -tests.append(ByteTest) -class UnsignedByteTest(UnsignedNumberTest): +class UnsignedByteTest(UnsignedNumberTest, unittest.TestCase): typecode = 'B' minitemsize = 1 -tests.append(UnsignedByteTest) -class ShortTest(SignedNumberTest): +class ShortTest(SignedNumberTest, unittest.TestCase): typecode = 'h' minitemsize = 2 -tests.append(ShortTest) -class UnsignedShortTest(UnsignedNumberTest): +class UnsignedShortTest(UnsignedNumberTest, unittest.TestCase): typecode = 'H' minitemsize = 2 -tests.append(UnsignedShortTest) -class IntTest(SignedNumberTest): +class IntTest(SignedNumberTest, unittest.TestCase): typecode = 'i' minitemsize = 2 -tests.append(IntTest) -class UnsignedIntTest(UnsignedNumberTest): +class UnsignedIntTest(UnsignedNumberTest, unittest.TestCase): typecode = 'I' minitemsize = 2 -tests.append(UnsignedIntTest) -class LongTest(SignedNumberTest): +class LongTest(SignedNumberTest, unittest.TestCase): typecode = 'l' minitemsize = 4 -tests.append(LongTest) -class UnsignedLongTest(UnsignedNumberTest): +class UnsignedLongTest(UnsignedNumberTest, unittest.TestCase): typecode = 'L' minitemsize = 4 -tests.append(UnsignedLongTest) @unittest.skipIf(not have_long_long, 'need long long support') -class LongLongTest(SignedNumberTest): +class LongLongTest(SignedNumberTest, unittest.TestCase): typecode = 'q' minitemsize = 8 -tests.append(LongLongTest) @unittest.skipIf(not have_long_long, 'need long long support') -class UnsignedLongLongTest(UnsignedNumberTest): +class UnsignedLongLongTest(UnsignedNumberTest, unittest.TestCase): typecode = 'Q' minitemsize = 8 -tests.append(UnsignedLongLongTest) class FPTest(NumberTest): example = [-42.0, 0, 42, 1e5, -1e10] @@ -1293,12 +1276,11 @@ b.byteswap() self.assertEqual(a, b) -class FloatTest(FPTest): +class FloatTest(FPTest, unittest.TestCase): typecode = 'f' minitemsize = 4 -tests.append(FloatTest) -class DoubleTest(FPTest): +class DoubleTest(FPTest, unittest.TestCase): typecode = 'd' minitemsize = 8 @@ -1319,22 +1301,6 @@ else: self.fail("Array of size > maxsize created - MemoryError expected") -tests.append(DoubleTest) - -def test_main(verbose=None): - import sys - - support.run_unittest(*tests) - - # verify reference counting - if verbose and hasattr(sys, "gettotalrefcount"): - import gc - counts = [None] * 5 - for i in range(len(counts)): - support.run_unittest(*tests) - gc.collect() - counts[i] = sys.gettotalrefcount() - print(counts) if __name__ == "__main__": - test_main(verbose=True) + unittest.main()