From: Serhiy Storchaka Date: Fri, 18 Oct 2024 13:51:29 +0000 (+0300) Subject: Add tests for time.strftime() with invalid format string (GH-125696) X-Git-Tag: v3.14.0a2~372 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=2e950e341930ea79549137d4d3771d5edb940e65;p=thirdparty%2FPython%2Fcpython.git Add tests for time.strftime() with invalid format string (GH-125696) --- diff --git a/Lib/test/test_time.py b/Lib/test/test_time.py index f8b99a9b6a63..d368f08b6108 100644 --- a/Lib/test/test_time.py +++ b/Lib/test/test_time.py @@ -18,7 +18,7 @@ try: except ImportError: _testinternalcapi = None -from test.support import skip_if_buggy_ucrt_strfptime +from test.support import skip_if_buggy_ucrt_strfptime, SuppressCrashReport # Max year is only limited by the size of C int. SIZEOF_INT = sysconfig.get_config_var('SIZEOF_INT') or 4 @@ -182,6 +182,17 @@ class TimeTestCase(unittest.TestCase): self.assertRaises(TypeError, time.strftime, b'%S', tt) + def test_strftime_invalid_format(self): + tt = time.gmtime(self.t) + with SuppressCrashReport(): + for i in range(1, 128): + format = ' %' + chr(i) + with self.subTest(format=format): + try: + time.strftime(format, tt) + except ValueError as exc: + self.assertEqual(str(exc), 'Invalid format string') + def test_strftime_special(self): tt = time.gmtime(self.t) s1 = time.strftime('%c', tt)