summaryrefslogtreecommitdiff
path: root/test/unittest_python3.py
diff options
context:
space:
mode:
Diffstat (limited to 'test/unittest_python3.py')
-rw-r--r--test/unittest_python3.py16
1 files changed, 14 insertions, 2 deletions
diff --git a/test/unittest_python3.py b/test/unittest_python3.py
index 114e3d3..295984a 100644
--- a/test/unittest_python3.py
+++ b/test/unittest_python3.py
@@ -127,8 +127,7 @@ class Python3TC(TestCase):
"""))
klass = astroid['SubTest']
metaclass = klass.metaclass()
- self.assertIsInstance(metaclass, Class)
- self.assertEqual(metaclass.name, 'type')
+ self.assertIsNone(metaclass)
@require_version('3.0')
def test_metaclass_yes_leak(self):
@@ -142,6 +141,19 @@ class Python3TC(TestCase):
self.assertIsNone(klass.metaclass())
@require_version('3.0')
+ def test_parent_metaclass(self):
+ astroid = self.builder.string_build(dedent("""
+ from abc import ABCMeta
+ class Test(metaclass=ABCMeta): pass
+ class SubTest(Test): pass
+ """))
+ klass = astroid['SubTest']
+ self.assertTrue(klass.newstyle)
+ metaclass = klass.metaclass()
+ self.assertIsInstance(metaclass, Class)
+ self.assertEqual(metaclass.name, 'ABCMeta')
+
+ @require_version('3.0')
def test_metaclass_ancestors(self):
astroid = self.builder.string_build(dedent("""
from abc import ABCMeta