GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — 3.11 creates doctests for Enum subclasses brittle against `globs` and overridden `__repr__` · Issue #93976 · python/cpython Closed Labels 3.11only security fixesonly security fixes3.12only security fixesonly security fixesstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error DescriptionBug report In 3.11, subclassing
import re from enum import Enum class MyEnum(Enum): def __repr__(self): """Suppress the trailing colon and integer""" return re.sub(r': \d+', '', super().__repr__()) class FinalEnum(MyEnum): MEMBER = 1 if __name__ == "__main__": import doctest doctest.testmod(globs={'MyEnum': MyEnum, 'FinalEnum': FinalEnum}) 3.10 $ python3.10 e.py -v
4 items had no tests:
__main__
__main__.FinalEnum
__main__.MyEnum
__main__.MyEnum.__repr__
0 tests in 4 items.
0 passed and 0 failed.
Test passed.3.11 $ python3.11 e.py ********************************************************************** File "/Users/.../e.py", line ?, in __main__.FinalEnum Failed example: FinalEnum.MEMBER Expected: <FinalEnum.MEMBER: 1> Got: <FinalEnum.MEMBER> ********************************************************************** File "/Users/.../e.py", line ?, in __main__.FinalEnum Failed example: FinalEnum(1) Expected: <FinalEnum.MEMBER: 1> Got: <FinalEnum.MEMBER> ********************************************************************** File "/Users/.../e.py", line ?, in __main__.FinalEnum Failed example: FinalEnum['MEMBER'] Expected: <FinalEnum.MEMBER: 1> Got: <FinalEnum.MEMBER> ********************************************************************** File "/Users/.../e.py", line ?, in __main__.FinalEnum Failed example: list(FinalEnum) Expected: [<FinalEnum.MEMBER: 1>] Got: [<FinalEnum.MEMBER>] ********************************************************************** File "/Users/.../e.py", line 10, in __main__.MyEnum Failed example: class Color(Enum): RED = 1 BLUE = 2 GREEN = 3 Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[0]>", line 1, in <module> class Color(Enum): ^^^^ NameError: name 'Enum' is not defined ********************************************************************** File "/Users/.../e.py", line 19, in __main__.MyEnum Failed example: Color.RED Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[1]>", line 1, in <module> Color.RED ^^^^^ NameError: name 'Color' is not defined ********************************************************************** File "/Users/.../e.py", line 24, in __main__.MyEnum Failed example: Color(1) Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[2]>", line 1, in <module> Color(1) ^^^^^ NameError: name 'Color' is not defined ********************************************************************** File "/Users/.../e.py", line 29, in __main__.MyEnum Failed example: Color['RED'] Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[3]>", line 1, in <module> Color['RED'] ^^^^^ NameError: name 'Color' is not defined ********************************************************************** File "/Users/.../e.py", line 34, in __main__.MyEnum Failed example: len(Color) Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[4]>", line 1, in <module> len(Color) ^^^^^ NameError: name 'Color' is not defined ********************************************************************** File "/Users/.../e.py", line 37, in __main__.MyEnum Failed example: list(Color) Exception raised: Traceback (most recent call last): File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/doctest.py", line 1350, in __run exec(compile(example.source, filename, "single", ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "<doctest __main__.MyEnum[5]>", line 1, in <module> list(Color) ^^^^^ NameError: name 'Color' is not defined ********************************************************************** 2 items had failures: 4 of 5 in __main__.FinalEnum 6 of 6 in __main__.MyEnum ***Test Failed*** 10 failures. Your environment Python 3.11.0b3 cc/ @mscuthbert (FYI: a potential workaround is to add docstrings) Reacted by Michael Scott Asato Cuthbert Activity
MetadataMetadataAssigneesLabels3.11only security fixesonly security fixes3.12only security fixesonly security fixesstdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error ProjectsMilestoneRelationshipsDevelopmentIssue actions |
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |