fix #4649 - also transfer markers to keywordmapping

as it turns out it is distinct from nodekeywords and behaves completely different
This commit is contained in:
Ronny Pfannschmidt
2019-01-18 22:05:41 +01:00
parent 6154a5ac02
commit f28b834426
5 changed files with 19 additions and 4 deletions

View File

@@ -45,13 +45,14 @@ class KeywordMapping(object):
mapped_names.add(item.name)
# Add the names added as extra keywords to current or parent items
for name in item.listextrakeywords():
mapped_names.add(name)
mapped_names.update(item.listextrakeywords())
# Add the names attached to the current function through direct assignment
if hasattr(item, "function"):
for name in item.function.__dict__:
mapped_names.add(name)
mapped_names.update(item.function.__dict__)
# add the markers to the keywords as we no longer handle them correctly
mapped_names.update(mark.name for mark in item.iter_markers())
return cls(mapped_names)