mirror of
https://github.com/python/cpython.git
synced 2025-09-26 10:19:53 +00:00
[3.12] gh-116040: [Enum] fix test_empty_names test (GH-116508) (GH-116619)
* and fix _not_given usage
(cherry picked from commit 3c0dcef980
)
Co-authored-by: Ethan Furman <ethan@stoneleaf.us>
This commit is contained in:
parent
1231697697
commit
8b3b5be934
2 changed files with 8 additions and 14 deletions
|
@ -169,8 +169,6 @@ def _dedent(text):
|
||||||
class _not_given:
|
class _not_given:
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return('<not given>')
|
return('<not given>')
|
||||||
def __bool__(self):
|
|
||||||
return False
|
|
||||||
_not_given = _not_given()
|
_not_given = _not_given()
|
||||||
|
|
||||||
class _auto_null:
|
class _auto_null:
|
||||||
|
@ -765,7 +763,7 @@ class EnumType(type):
|
||||||
)
|
)
|
||||||
return cls._create_(
|
return cls._create_(
|
||||||
class_name=value,
|
class_name=value,
|
||||||
names=names or None,
|
names=None if names is _not_given else names,
|
||||||
module=module,
|
module=module,
|
||||||
qualname=qualname,
|
qualname=qualname,
|
||||||
type=type,
|
type=type,
|
||||||
|
|
|
@ -3334,17 +3334,13 @@ class TestSpecial(unittest.TestCase):
|
||||||
Flag(7)
|
Flag(7)
|
||||||
|
|
||||||
def test_empty_names(self):
|
def test_empty_names(self):
|
||||||
for nothing, e_type in (
|
for nothing in '', [], {}:
|
||||||
('', None),
|
for e_type in None, int:
|
||||||
('', int),
|
empty_enum = Enum('empty_enum', nothing, type=e_type)
|
||||||
([], None),
|
self.assertEqual(len(empty_enum), 0)
|
||||||
([], int),
|
self.assertRaisesRegex(TypeError, 'has no members', empty_enum, 0)
|
||||||
({}, None),
|
self.assertRaisesRegex(TypeError, '.int. object is not iterable', Enum, 'bad_enum', names=0)
|
||||||
({}, int),
|
self.assertRaisesRegex(TypeError, '.int. object is not iterable', Enum, 'bad_enum', 0, type=int)
|
||||||
):
|
|
||||||
empty_enum = Enum('empty_enum', nothing, type=e_type)
|
|
||||||
self.assertEqual(len(empty_enum), 0)
|
|
||||||
self.assertRaises(TypeError, 'has no members', empty_enum, 0)
|
|
||||||
|
|
||||||
|
|
||||||
class TestOrder(unittest.TestCase):
|
class TestOrder(unittest.TestCase):
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue