We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 0b818ac commit b2b6663Copy full SHA for b2b6663
tests/test_methods_and_attributes.py
@@ -1,3 +1,4 @@
1
+import abc
2
import sys
3
4
import pytest
@@ -227,6 +228,22 @@ def test_metaclass_override():
227
228
assert isinstance(m.MetaclassOverride.__dict__["readonly"], int)
229
230
231
+def test_abc_meta_incompatibility(): # Mostly to clearly expose the behavior.
232
+ with pytest.raises(TypeError) as exc_info:
233
+
234
+ class ExampleMandAABC(m.ExampleMandA, metaclass=abc.ABCMeta):
235
+ pass
236
237
+ assert "metaclass conflict" in str(exc_info.value)
238
239
240
+def test_abc_meta_compatibility():
241
+ class MetaclassOverrideABC(m.MetaclassOverride, metaclass=abc.ABCMeta):
242
243
244
+ assert type(MetaclassOverrideABC).__name__ == "ABCMeta"
245
246
247
def test_no_mixed_overloads():
248
from pybind11_tests import detailed_error_messages_enabled
249
0 commit comments