[Python-checkins] r61632 - in python/trunk: Lib/test/test_py3kwarn.py Objects/listobject.c

raymond.hettinger python-checkins at python.org
Wed Mar 19 18:45:19 CET 2008


Author: raymond.hettinger
Date: Wed Mar 19 18:45:19 2008
New Revision: 61632

Modified:
   python/trunk/Lib/test/test_py3kwarn.py
   python/trunk/Objects/listobject.c
Log:
Issue 2354: Fix-up compare warning.  Patch contributed by Jeff Balogh.

Modified: python/trunk/Lib/test/test_py3kwarn.py
==============================================================================
--- python/trunk/Lib/test/test_py3kwarn.py	(original)
+++ python/trunk/Lib/test/test_py3kwarn.py	Wed Mar 19 18:45:19 2008
@@ -91,6 +91,20 @@
     def assertWarning(self, _, warning, expected_message):
         self.assertEqual(str(warning.message), expected_message)
 
+    def test_sort_cmp_arg(self):
+        expected = "In 3.x, the cmp argument is no longer supported."
+        lst = range(5)
+        cmp = lambda x,y: -1
+
+        with catch_warning() as w:
+            self.assertWarning(lst.sort(cmp=cmp), w, expected)
+        with catch_warning() as w:
+            self.assertWarning(sorted(lst, cmp=cmp), w, expected)
+        with catch_warning() as w:
+            self.assertWarning(lst.sort(cmp), w, expected)
+        with catch_warning() as w:
+            self.assertWarning(sorted(lst, cmp), w, expected)
+
 def test_main():
     run_unittest(TestPy3KWarnings)
 

Modified: python/trunk/Objects/listobject.c
==============================================================================
--- python/trunk/Objects/listobject.c	(original)
+++ python/trunk/Objects/listobject.c	Wed Mar 19 18:45:19 2008
@@ -2037,7 +2037,7 @@
 	}
 	if (compare == Py_None)
 		compare = NULL;
-	if (compare == NULL && 
+	if (compare != NULL && 
             Py_Py3kWarningFlag &&
 	    PyErr_Warn(PyExc_DeprecationWarning, 
 		       "In 3.x, the cmp argument is no longer supported.") < 0)


More information about the Python-checkins mailing list