summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin v. Löwis <martin@v.loewis.de>2007-02-08 09:13:36 +0000
committerMartin v. Löwis <martin@v.loewis.de>2007-02-08 09:13:36 +0000
commit4c11a926255ba5c798b52ce9529a37b9bae99132 (patch)
tree1608d3d5c1d0e460a93279758590814b7c63a6dc
parent495df4716fce4156c1eb110f9342297164eecbb6 (diff)
downloadcpython-git-4c11a926255ba5c798b52ce9529a37b9bae99132.tar.gz
Bug #1653736: Complain about keyword arguments to time.isoformat.
Will backport to 2.5.
-rw-r--r--Lib/test/test_datetime.py5
-rw-r--r--Misc/NEWS2
-rw-r--r--Modules/datetimemodule.c4
3 files changed, 9 insertions, 2 deletions
diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py
index 436cfcad75..3aa0468837 100644
--- a/Lib/test/test_datetime.py
+++ b/Lib/test/test_datetime.py
@@ -1740,6 +1740,11 @@ class TestTime(HarmlessMixedComparison):
self.assertEqual(t.isoformat(), "00:00:00.100000")
self.assertEqual(t.isoformat(), str(t))
+ def test_1653736(self):
+ # verify it doesn't accept extra keyword arguments
+ t = self.theclass(second=1)
+ self.assertRaises(TypeError, t.isoformat, foo=3)
+
def test_strftime(self):
t = self.theclass(1, 2, 3, 4)
self.assertEqual(t.strftime('%H %M %S'), "01 02 03")
diff --git a/Misc/NEWS b/Misc/NEWS
index 0447d4b237..25b72c2f03 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -347,6 +347,8 @@ Library
Extension Modules
-----------------
+- Bug #1653736: Complain about keyword arguments to time.isoformat.
+
- Bug #1486663: don't reject keyword arguments for subclasses of builtin
types.
diff --git a/Modules/datetimemodule.c b/Modules/datetimemodule.c
index 39a859f3e5..cf8a68ba22 100644
--- a/Modules/datetimemodule.c
+++ b/Modules/datetimemodule.c
@@ -3167,7 +3167,7 @@ time_str(PyDateTime_Time *self)
}
static PyObject *
-time_isoformat(PyDateTime_Time *self)
+time_isoformat(PyDateTime_Time *self, PyObject *unused)
{
char buf[100];
PyObject *result;
@@ -3411,7 +3411,7 @@ time_reduce(PyDateTime_Time *self, PyObject *arg)
static PyMethodDef time_methods[] = {
- {"isoformat", (PyCFunction)time_isoformat, METH_KEYWORDS,
+ {"isoformat", (PyCFunction)time_isoformat, METH_NOARGS,
PyDoc_STR("Return string in ISO 8601 format, HH:MM:SS[.mmmmmm]"
"[+HH:MM].")},