diff options
author | Claudiu Popa <cpopa@cloudbasesolutions.com> | 2015-01-02 11:31:33 +0200 |
---|---|---|
committer | Claudiu Popa <cpopa@cloudbasesolutions.com> | 2015-01-02 11:31:33 +0200 |
commit | cd16aa0342c9fa999f1d2417f2e70d0275bc7273 (patch) | |
tree | 71dfe0f1ee31dfc782a562e7617028066931e30c | |
parent | fe1f0f20006b1ca551549d53a5ceff89c2aff9e5 (diff) | |
download | pylint-cd16aa0342c9fa999f1d2417f2e70d0275bc7273.tar.gz |
Add the name of the abstract class in abstract-class-instantiated message.
-rw-r--r-- | checkers/base.py | 10 | ||||
-rw-r--r-- | test/functional/abstract_class_instantiated_py2.txt | 8 | ||||
-rw-r--r-- | test/functional/abstract_class_instantiated_py3.txt | 8 | ||||
-rw-r--r-- | test/functional/abstract_class_instantiated_py34.txt | 2 |
4 files changed, 16 insertions, 12 deletions
diff --git a/checkers/base.py b/checkers/base.py index d363dd7..750d661 100644 --- a/checkers/base.py +++ b/checkers/base.py @@ -289,7 +289,7 @@ class BasicErrorChecker(_BasicChecker): 'duplicate-argument-name', 'Duplicate argument names in function definitions are syntax' ' errors.'), - 'E0110': ('Abstract class with abstract methods instantiated', + 'E0110': ('Abstract class %r with abstract methods instantiated', 'abstract-class-instantiated', 'Used when an abstract class with `abc.ABCMeta` as metaclass ' 'has abstract methods and is instantiated.'), @@ -395,11 +395,15 @@ class BasicErrorChecker(_BasicChecker): # by ClassNode.metaclass() for ancestor in infered.ancestors(): if ancestor.qname() == 'abc.ABC' and abstract_methods: - self.add_message('abstract-class-instantiated', node=node) + self.add_message('abstract-class-instantiated', + args=(infered.name, ), + node=node) break return if metaclass.qname() == 'abc.ABCMeta' and abstract_methods: - self.add_message('abstract-class-instantiated', node=node) + self.add_message('abstract-class-instantiated', + args=(infered.name, ), + node=node) def _check_else_on_loop(self, node): """Check that any loop with an else clause has a break statement.""" diff --git a/test/functional/abstract_class_instantiated_py2.txt b/test/functional/abstract_class_instantiated_py2.txt index 034795a..68e7eb5 100644 --- a/test/functional/abstract_class_instantiated_py2.txt +++ b/test/functional/abstract_class_instantiated_py2.txt @@ -1,4 +1,4 @@ -abstract-class-instantiated:65:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:66:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:67:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:68:main:Abstract class with abstract methods instantiated
+abstract-class-instantiated:65:main:Abstract class 'BadClass' with abstract methods instantiated
+abstract-class-instantiated:66:main:Abstract class 'SecondBadClass' with abstract methods instantiated
+abstract-class-instantiated:67:main:Abstract class 'ThirdBadClass' with abstract methods instantiated
+abstract-class-instantiated:68:main:Abstract class 'FourthBadClass' with abstract methods instantiated
diff --git a/test/functional/abstract_class_instantiated_py3.txt b/test/functional/abstract_class_instantiated_py3.txt index db5bef6..b2e70a0 100644 --- a/test/functional/abstract_class_instantiated_py3.txt +++ b/test/functional/abstract_class_instantiated_py3.txt @@ -1,4 +1,4 @@ -abstract-class-instantiated:95:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:96:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:97:main:Abstract class with abstract methods instantiated
-abstract-class-instantiated:98:main:Abstract class with abstract methods instantiated
+abstract-class-instantiated:95:main:Abstract class 'BadMroAbstractMethods' with abstract methods instantiated
+abstract-class-instantiated:96:main:Abstract class 'BadClass' with abstract methods instantiated
+abstract-class-instantiated:97:main:Abstract class 'SecondBadClass' with abstract methods instantiated
+abstract-class-instantiated:98:main:Abstract class 'ThirdBadClass' with abstract methods instantiated
diff --git a/test/functional/abstract_class_instantiated_py34.txt b/test/functional/abstract_class_instantiated_py34.txt index 793df2e..afee975 100644 --- a/test/functional/abstract_class_instantiated_py34.txt +++ b/test/functional/abstract_class_instantiated_py34.txt @@ -1 +1 @@ -abstract-class-instantiated:19:main:Abstract class with abstract methods instantiated
+abstract-class-instantiated:19:main:Abstract class 'BadClass' with abstract methods instantiated
|