From 8207c17486baece8ed0ac42d9f8d69ecec4ba7e4 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 5 Jul 2017 15:44:52 +0200 Subject: [PATCH] Revert "bpo-30822: Fix testing of datetime module." (#2588) * Revert "bpo-30854: Fix compile error when --without-threads (#2581)" This reverts commit 0c3116309307ad2c7f8e2d2096612f4ab33cbb62. * Revert "NEWS for 30777 (#2576)" This reverts commit aaa917ff38f9869eeebe3bc9469bfee64089d826. * Revert "bpo-21624: IDLE -- minor htest fixes (#2575)" This reverts commit 2000150c569941584994ec4ec59171961209bec3. * Revert "bpo-30777: IDLE: configdialog - add docstrings and improve comments (#2440)" This reverts commit 7eb5883ac59833bf63f0e1f7fb95671a1ac1ee08. * Revert "bpo-30319: socket.close() now ignores ECONNRESET (#2565)" This reverts commit 67e1478dba6efe60b8e1890192014b8b06dd6bd9. * Revert "bpo-30789: Use a single memory block for co_extra. (#2555)" This reverts commit 378ebb6578b9d709f38b888d23874c0b18125249. * Revert "bpo-30845: Enhance test_concurrent_futures cleanup (#2564)" This reverts commit 3df9dec425b0254df1cdf41922fd8d6b08bf47e4. * Revert "bpo-29293: multiprocessing.Condition.notify() lacks parameter `n` (#2480)" This reverts commit 48350412b70c76fa51f488cfc736c80d59b5e8eb. * Revert "Remove outdated FOX from GUI FAQ (GH-2538)" This reverts commit d3ed2877a798d07df75422afe136b4727e500c99. * Revert "bpo-6691: Pyclbr now reports nested classes and functions. (#2503)" This reverts commit 246ff3bd00f97658e567a7087645a6b76e056491. * Revert "bpo-29464: Rename METH_FASTCALL to METH_FASTCALL|METH_KEYWORDS and make (#1955)" This reverts commit 6969eaf4682beb01bc95eeb14f5ce6c01312e297. * Revert "bpo-30832: Remove own implementation for thread-local storage (#2537)" This reverts commit aa0aa0492c5fffe750a26d2ab13737a1a6d7d63c. * Revert "bpo-30764: Fix regrtest --fail-env-changed --forever (#2536)" This reverts commit 5e87592fd12e0b7c41edc11d4885ed7298d5063b. * Revert "bpo-30822: Deduplicate ZoneInfoTest classes in test_datetime. (#2534)" This reverts commit 34b54873b51a1ebee2a3c57b7205537b4f33128d. * Revert "bpo-30822: Fix testing of datetime module. (#2530)" This reverts commit 98b6bc3bf72532b784a1c1fa76eaa6026a663e44. --- Lib/datetime.py | 3 +-- Lib/test/datetimetester.py | 12 +++++------- Lib/test/test_datetime.py | 8 +++----- Misc/ACKS | 1 - 4 files changed, 9 insertions(+), 15 deletions(-) diff --git a/Lib/datetime.py b/Lib/datetime.py index b95536fb7af..5d5579c1c6f 100644 --- a/Lib/datetime.py +++ b/Lib/datetime.py @@ -2271,8 +2271,7 @@ else: _check_tzinfo_arg, _check_tzname, _check_utc_offset, _cmp, _cmperror, _date_class, _days_before_month, _days_before_year, _days_in_month, _format_time, _is_leap, _isoweek1monday, _math, _ord2ymd, - _time, _time_class, _tzinfo_class, _wrap_strftime, _ymd2ord, - _divide_and_round) + _time, _time_class, _tzinfo_class, _wrap_strftime, _ymd2ord) # XXX Since import * above excludes names that start with _, # docstring does not get overwritten. In the future, it may be # appropriate to maintain a single module level docstring and diff --git a/Lib/test/datetimetester.py b/Lib/test/datetimetester.py index b25e6c17136..bccd97aa3c7 100644 --- a/Lib/test/datetimetester.py +++ b/Lib/test/datetimetester.py @@ -61,9 +61,8 @@ class TestModule(unittest.TestCase): self.assertEqual(datetime.MAXYEAR, 9999) def test_name_cleanup(self): - if '_Pure' in self.__class__.__name__: - self.skipTest('Only run for Fast C implementation') - + if '_Fast' not in str(self): + return datetime = datetime_module names = set(name for name in dir(datetime) if not name.startswith('__') and not name.endswith('__')) @@ -73,9 +72,8 @@ class TestModule(unittest.TestCase): self.assertEqual(names - allowed, set([])) def test_divide_and_round(self): - if '_Fast' in self.__class__.__name__: - self.skipTest('Only run for Pure Python implementation') - + if '_Fast' in str(self): + return dar = datetime_module._divide_and_round self.assertEqual(dar(-10, -3), 3) @@ -2853,7 +2851,7 @@ class TestTimeTZ(TestTime, TZInfoBase, unittest.TestCase): self.assertRaises(TypeError, t.strftime, "%Z") # Issue #6697: - if '_Fast' in self.__class__.__name__: + if '_Fast' in str(self): Badtzname.tz = '\ud800' self.assertRaises(ValueError, t.strftime, "%Z") diff --git a/Lib/test/test_datetime.py b/Lib/test/test_datetime.py index d659f369d54..04f11c80ecd 100644 --- a/Lib/test/test_datetime.py +++ b/Lib/test/test_datetime.py @@ -20,7 +20,7 @@ test_suffixes = ["_Pure", "_Fast"] # XXX(gb) First run all the _Pure tests, then all the _Fast tests. You might # not believe this, but in spite of all the sys.modules trickery running a _Pure # test last will leave a mix of pure and native datetime stuff lying around. -all_test_classes = [] +test_classes = [] for module, suffix in zip(test_modules, test_suffixes): test_classes = [] @@ -34,8 +34,7 @@ for module, suffix in zip(test_modules, test_suffixes): test_classes.extend(type(test) for test in suit) test_classes = sorted(set(test_classes), key=lambda cls: cls.__qualname__) for cls in test_classes: - cls.__name__ += suffix - cls.__qualname__ += suffix + cls.__name__ = name + suffix @classmethod def setUpClass(cls_, module=module): cls_._save_sys_modules = sys.modules.copy() @@ -48,10 +47,9 @@ for module, suffix in zip(test_modules, test_suffixes): sys.modules.update(cls_._save_sys_modules) cls.setUpClass = setUpClass cls.tearDownClass = tearDownClass - all_test_classes.extend(test_classes) def test_main(): - run_unittest(*all_test_classes) + run_unittest(*test_classes) if __name__ == "__main__": test_main() diff --git a/Misc/ACKS b/Misc/ACKS index 3385269389f..3455c1bc1a1 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -1602,7 +1602,6 @@ Doobee R. Tzeck Eren Türkay Lionel Ulmer Adnan Umer -Utkarsh Upadhyay Roger Upole Daniel Urban Michael Urman