]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
test_py3kwarn had been overlooked when test.test_support.catch_warning() was
authorBrett Cannon <bcannon@gmail.com>
Wed, 3 Sep 2008 22:45:11 +0000 (22:45 +0000)
committerBrett Cannon <bcannon@gmail.com>
Wed, 3 Sep 2008 22:45:11 +0000 (22:45 +0000)
re-implemented to use warnings.catch_warnings() and had its API improved.

Closes issue #3768.
Code review by Benjamin Peterson.

Lib/test/test_py3kwarn.py
Misc/NEWS

index 8fa613508bb6bdcb5d8f08a70a30f0f3803a676b..7bfe1e5be4ed12901593d6f4b75d530256c03ff2 100644 (file)
@@ -220,28 +220,28 @@ class TestPy3KWarnings(unittest.TestCase):
             # With object as the base class
             class WarnOnlyCmp(object):
                 def __cmp__(self, other): pass
-            self.assertEqual(len(w.warnings), 1)
+            self.assertEqual(len(w), 1)
             self.assertWarning(None, w,
                  "Overriding __cmp__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class WarnOnlyEq(object):
                 def __eq__(self, other): pass
-            self.assertEqual(len(w.warnings), 1)
+            self.assertEqual(len(w), 1)
             self.assertWarning(None, w,
                  "Overriding __eq__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class WarnCmpAndEq(object):
                 def __cmp__(self, other): pass
                 def __eq__(self, other): pass
-            self.assertEqual(len(w.warnings), 2)
-            self.assertWarning(None, w.warnings[-2],
+            self.assertEqual(len(w), 2)
+            self.assertWarning(None, w[-2],
                  "Overriding __cmp__ blocks inheritance of __hash__ in 3.x")
             self.assertWarning(None, w,
                  "Overriding __eq__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class NoWarningOnlyHash(object):
                 def __hash__(self): pass
-            self.assertEqual(len(w.warnings), 0)
+            self.assertEqual(len(w), 0)
             # With an intermediate class in the heirarchy
             class DefinesAllThree(object):
                 def __cmp__(self, other): pass
@@ -249,28 +249,28 @@ class TestPy3KWarnings(unittest.TestCase):
                 def __hash__(self): pass
             class WarnOnlyCmp(DefinesAllThree):
                 def __cmp__(self, other): pass
-            self.assertEqual(len(w.warnings), 1)
+            self.assertEqual(len(w), 1)
             self.assertWarning(None, w,
                  "Overriding __cmp__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class WarnOnlyEq(DefinesAllThree):
                 def __eq__(self, other): pass
-            self.assertEqual(len(w.warnings), 1)
+            self.assertEqual(len(w), 1)
             self.assertWarning(None, w,
                  "Overriding __eq__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class WarnCmpAndEq(DefinesAllThree):
                 def __cmp__(self, other): pass
                 def __eq__(self, other): pass
-            self.assertEqual(len(w.warnings), 2)
-            self.assertWarning(None, w.warnings[-2],
+            self.assertEqual(len(w), 2)
+            self.assertWarning(None, w[-2],
                  "Overriding __cmp__ blocks inheritance of __hash__ in 3.x")
             self.assertWarning(None, w,
                  "Overriding __eq__ blocks inheritance of __hash__ in 3.x")
             w.reset()
             class NoWarningOnlyHash(DefinesAllThree):
                 def __hash__(self): pass
-            self.assertEqual(len(w.warnings), 0)
+            self.assertEqual(len(w), 0)
 
 
 class TestStdlibRemovals(unittest.TestCase):
index f0da457880d21c5d677bca24eab2da70fe5542a0..33866dfa7d16469face17607529aa5b541f9163f 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -100,6 +100,11 @@ Extension Modules
 - Issue #3643: Added a few more checks to _testcapi to prevent segfaults by
   exploitation of poor argument checking.
 
+Tests
+-----
+
+- Issue 3768: Move test_py3kwarn over to the new API for catch_warnings().
+
 
 What's New in Python 2.6 beta 3?
 ================================