diff options
author | Ezio Melotti <ezio.melotti@gmail.com> | 2013-01-10 04:04:50 (GMT) |
---|---|---|
committer | Ezio Melotti <ezio.melotti@gmail.com> | 2013-01-10 04:04:50 (GMT) |
commit | 1d3e96dbe213d359b9d0af5cfdc9bc06b6638c5f (patch) | |
tree | 89194c253690c1e230dcd94249b4d7f667553135 /Lib | |
parent | 47236db1d0ab08a231fde5bb620805da5a9c6d47 (diff) | |
download | cpython-1d3e96dbe213d359b9d0af5cfdc9bc06b6638c5f.zip cpython-1d3e96dbe213d359b9d0af5cfdc9bc06b6638c5f.tar.gz cpython-1d3e96dbe213d359b9d0af5cfdc9bc06b6638c5f.tar.bz2 |
#16888: test_array now works with unittest test discovery. Patch by Zachary Ware.
Diffstat (limited to 'Lib')
-rwxr-xr-x | Lib/test/test_array.py | 64 |
1 files changed, 15 insertions, 49 deletions
diff --git a/Lib/test/test_array.py b/Lib/test/test_array.py index 544c2ce..a532a9f 100755 --- a/Lib/test/test_array.py +++ b/Lib/test/test_array.py @@ -31,7 +31,6 @@ class ArraySubclassWithKwargs(array.array): 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 @@ class BadConstructorTest(unittest.TestCase): self.assertRaises(TypeError, array.array, 'xx') self.assertRaises(ValueError, array.array, 'x') -tests.append(BadConstructorTest) # Machine format codes. # @@ -174,10 +172,7 @@ class ArrayReconstructorTest(unittest.TestCase): 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 @@ class StringTest(BaseTest): 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 @@ class UnicodeTest(StringTest): self.assertRaises(TypeError, a.fromunicode) -tests.append(UnicodeTest) - class NumberTest(BaseTest): def test_extslice(self): @@ -1216,57 +1209,47 @@ class UnsignedNumberTest(NumberTest): ) -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 @@ class FPTest(NumberTest): 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 @@ class DoubleTest(FPTest): 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() |