diff options
| author | Sylvain Thénault <sylvain.thenault@logilab.fr> | 2009-03-18 15:58:32 +0100 |
|---|---|---|
| committer | Sylvain Thénault <sylvain.thenault@logilab.fr> | 2009-03-18 15:58:32 +0100 |
| commit | 536f3efaaa298115a93fc34a7909c8c4c4260ca9 (patch) | |
| tree | d483e93ff642d5e6e18fd2982ca837a12e34e8a8 /test | |
| parent | fe9f8d504b3a4f37f2dc21334412050dd3a67761 (diff) | |
| download | astroid-git-536f3efaaa298115a93fc34a7909c8c4c4260ca9.tar.gz | |
more special attributes handling fixes
--HG--
branch : _ast_compat
Diffstat (limited to 'test')
| -rw-r--r-- | test/unittest_scoped_nodes.py | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/test/unittest_scoped_nodes.py b/test/unittest_scoped_nodes.py index 680fc17b..950f98e1 100644 --- a/test/unittest_scoped_nodes.py +++ b/test/unittest_scoped_nodes.py @@ -192,7 +192,7 @@ class ClassNodeTC(TestCase): def test_dict_interface(self): _test_dict_interface(self, MODULE['YOUPI'], 'method') - def test_cls_special_attributes(self): + def test_cls_special_attributes_1(self): cls = MODULE['YO'] self.assertEquals(len(cls.getattr('__bases__')), 1) self.assertEquals(len(cls.getattr('__name__')), 1) @@ -209,10 +209,22 @@ class ClassNodeTC(TestCase): for cls in (nodes.List._proxied, nodes.Const(1)._proxied): self.assertEquals(len(cls.getattr('__bases__')), 1) self.assertEquals(len(cls.getattr('__name__')), 1) - self.assertEquals(len(cls.getattr('__doc__')), 1) + self.assertEquals(len(cls.getattr('__doc__')), 1, (cls, cls.getattr('__doc__'))) + self.assertEquals(cls.getattr('__doc__')[0].value, cls.doc) self.assertEquals(len(cls.getattr('__module__')), 1) self.assertEquals(len(cls.getattr('__dict__')), 1) self.assertEquals(len(cls.getattr('__mro__')), 1) + + def test_cls_special_attributes_2(self): + astng = abuilder.string_build(''' +class A: pass +class B: pass + +A.__bases__ += (B,) +''', __name__, __file__) + self.assertEquals(len(astng['A'].getattr('__bases__')), 2) + self.assertIsInstance(astng['A'].getattr('__bases__')[0], nodes.Tuple) + self.assertIsInstance(astng['A'].getattr('__bases__')[1], nodes.AssAttr) def test_instance_special_attributes(self): for inst in (Instance(MODULE['YO']), nodes.List(), nodes.Const(1)): |
