| """Checks class methods are declared with a decorator if within the class |
| scope and if classmethod's argument is a member of the class |
| """ |
| |
| # pylint: disable=too-few-public-methods, using-constant-test, no-self-argument, useless-object-inheritance |
| |
| class MyClass(object): |
| """Some class""" |
| def __init__(self): |
| pass |
| |
| def cmethod(cls): |
| """class method-to-be""" |
| cmethod = classmethod(cmethod) # [no-classmethod-decorator] |
| |
| if True: |
| cmethod = classmethod(cmethod) # [no-classmethod-decorator] |
| |
| @classmethod |
| def my_second_method(cls): |
| """correct class method definition""" |
| |
| def other_method(cls): |
| """some method""" |
| cmethod2 = classmethod(other_method) # [no-classmethod-decorator] |
| |
| def helloworld(): |
| """says hello""" |
| |
| |
| MyClass.new_class_method = classmethod(helloworld) |
| |
| class MyOtherClass(object): |
| """Some other class""" |
| _make = classmethod(tuple.__new__) |