summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/unittest_python3.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/test/unittest_python3.py b/test/unittest_python3.py
index d93deacf..295984a8 100644
--- a/test/unittest_python3.py
+++ b/test/unittest_python3.py
@@ -141,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