summaryrefslogtreecommitdiff
path: root/tests/functional/i/invalid/m/invalid_metaclass.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/functional/i/invalid/m/invalid_metaclass.py')
-rw-r--r--tests/functional/i/invalid/m/invalid_metaclass.py32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/functional/i/invalid/m/invalid_metaclass.py b/tests/functional/i/invalid/m/invalid_metaclass.py
index c0e9d74be..ec251e47d 100644
--- a/tests/functional/i/invalid/m/invalid_metaclass.py
+++ b/tests/functional/i/invalid/m/invalid_metaclass.py
@@ -32,3 +32,35 @@ class ThirdGood(object):
@six.add_metaclass(ValidAsMetaclass)
class FourthGood(object):
pass
+
+
+class FirstInvalid(object, metaclass=int): # [invalid-metaclass]
+ pass
+
+
+class SecondInvalid(object, metaclass=InvalidAsMetaclass): # [invalid-metaclass]
+ pass
+
+
+class ThirdInvalid(object, metaclass=2): # [invalid-metaclass]
+ pass
+
+
+class FourthInvalid(object, metaclass=InvalidAsMetaclass()): # [invalid-metaclass]
+ pass
+
+
+def invalid_metaclass_1(name, bases, attrs):
+ return int
+
+
+def invalid_metaclass_2(name, bases, attrs):
+ return 1
+
+
+class Invalid(metaclass=invalid_metaclass_1): # [invalid-metaclass]
+ pass
+
+
+class InvalidSecond(metaclass=invalid_metaclass_2): # [invalid-metaclass]
+ pass