summaryrefslogtreecommitdiff
path: root/pylint/test/functional/namedtuple_member_inference.py
blob: 4488ceb0ace7d36c66a5eb97c2f9469b8e8c5c35 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
"""Test namedtuple attributes.

Regression test for:
https://bitbucket.org/logilab/pylint/issue/93/pylint-crashes-on-namedtuple-attribute
"""
from __future__ import absolute_import, print_function
from collections import namedtuple

__revision__ = None

Thing = namedtuple('Thing', ())

Fantastic = namedtuple('Fantastic', ['foo'])

def test():
    """Test member access in named tuples."""
    print(Thing.x)  # [no-member]
    fan = Fantastic(1)
    print(fan.foo)
    # Should not raise protected-access.
    fan2 = fan._replace(foo=2)
    print(fan2.foo)