summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClaudiu Popa <cpopa@cloudbasesolutions.com>2015-06-20 14:45:31 +0300
committerClaudiu Popa <cpopa@cloudbasesolutions.com>2015-06-20 14:45:31 +0300
commitdf244c42ca9ba3b54374fbd0b1ae415bd693eb15 (patch)
treefa5c857a7442ee381e085bfcf656873b8fa22174
parent16bfc06ac79519aa675b0aebd3d41d7bd21512a7 (diff)
downloadpylint-df244c42ca9ba3b54374fbd0b1ae415bd693eb15.tar.gz
Fix the broken tests, since locals_types and instance_attr_types were expected to be lists.
-rw-r--r--pylint/pyreverse/inspector.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/pylint/pyreverse/inspector.py b/pylint/pyreverse/inspector.py
index 08060b3..812fe42 100644
--- a/pylint/pyreverse/inspector.py
+++ b/pylint/pyreverse/inspector.py
@@ -108,7 +108,7 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
"""
if hasattr(node, 'locals_type'):
return
- node.locals_type = collections.defaultdict(set)
+ node.locals_type = collections.defaultdict(list)
node.depends = []
if self.tag:
node.uid = self.generate_id()
@@ -122,7 +122,7 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
"""
if hasattr(node, 'locals_type'):
return
- node.locals_type = collections.defaultdict(set)
+ node.locals_type = collections.defaultdict(list)
if self.tag:
node.uid = self.generate_id()
# resolve ancestors
@@ -131,7 +131,7 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
specializations.append(node)
baseobj.specializations = specializations
# resolve instance attributes
- node.instance_attrs_type = collections.defaultdict(set)
+ node.instance_attrs_type = collections.defaultdict(list)
for assattrs in node.instance_attrs.values():
for assattr in assattrs:
self.handle_assattr_type(assattr, node)
@@ -149,7 +149,7 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
"""
if hasattr(node, 'locals_type'):
return
- node.locals_type = collections.defaultdict(set)
+ node.locals_type = collections.defaultdict(list)
if self.tag:
node.uid = self.generate_id()
@@ -186,8 +186,9 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
else:
self.visit_module(frame)
+ current = frame.locals_type[node.name]
values = set(node.infer())
- frame.locals_type[node.name].update(values)
+ frame.locals_type[node.name] = list(set(current) | values)
except astroid.InferenceError:
pass
@@ -199,7 +200,8 @@ class Linker(IdGeneratorMixIn, utils.LocalsVisitor):
"""
try:
values = set(node.infer())
- parent.instance_attrs_type[node.attrname].update(values)
+ current = set(parent.instance_attrs_type[node.attrname])
+ parent.instance_attrs_type[node.attrname] = list(current | values)
except astroid.InferenceError:
pass