From: Benjamin Peterson Date: Sat, 30 Jan 2010 23:28:38 +0000 (+0000) Subject: be robust against test being run over and over (such as -R) X-Git-Tag: v2.7a3~55 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=46bff79d1ffa0308bf902fc8961365d7d2fb2c1a;p=python be robust against test being run over and over (such as -R) --- diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c index 1d889ddb32..85bc75f101 100644 --- a/Modules/_testcapimodule.c +++ b/Modules/_testcapimodule.c @@ -1144,13 +1144,23 @@ raise_exception(PyObject *self, PyObject *args) return NULL; } + +static int test_run_counter = 0; + static PyObject * test_datetime_capi(PyObject *self, PyObject *args) { if (PyDateTimeAPI) { - PyErr_SetString(PyExc_AssertionError, - "PyDateTime_CAPI somehow initialized"); - return NULL; + if (test_run_counter) { + /* Probably regrtest.py -R */ + Py_RETURN_NONE; + } + else { + PyErr_SetString(PyExc_AssertionError, + "PyDateTime_CAPI somehow initialized"); + return NULL; + } } + test_run_counter++; PyDateTime_IMPORT; if (PyDateTimeAPI) Py_RETURN_NONE;