diff --git a/python/src/com/jetbrains/python/inspections/PyMethodParametersInspection.java b/python/src/com/jetbrains/python/inspections/PyMethodParametersInspection.java index 6d9f1a443c14..0d185e2fb30e 100644 --- a/python/src/com/jetbrains/python/inspections/PyMethodParametersInspection.java +++ b/python/src/com/jetbrains/python/inspections/PyMethodParametersInspection.java @@ -1,12 +1,9 @@ package com.jetbrains.python.inspections; import com.intellij.codeHighlighting.HighlightDisplayLevel; -import com.intellij.codeInspection.LocalInspectionToolSession; import com.intellij.codeInspection.ProblemHighlightType; import com.intellij.codeInspection.ProblemsHolder; import com.intellij.lang.ASTNode; -import com.intellij.openapi.module.Module; -import com.intellij.openapi.module.ModuleUtil; import com.intellij.openapi.util.Ref; import com.intellij.psi.PsiElement; import com.intellij.psi.PsiElementVisitor; @@ -15,11 +12,7 @@ import com.jetbrains.python.PyNames; import com.jetbrains.python.actions.AddSelfQuickFix; import com.jetbrains.python.actions.RenameParameterQuickFix; import com.jetbrains.python.psi.*; -import com.jetbrains.python.psi.resolve.PyResolveUtil; import com.jetbrains.python.psi.resolve.ResolveImportUtil; -import com.jetbrains.python.psi.types.PyClassType; -import com.jetbrains.python.psi.types.PyType; -import com.jetbrains.python.psi.types.TypeEvalContext; import org.jetbrains.annotations.Nls; import org.jetbrains.annotations.NonNls; import org.jetbrains.annotations.NotNull; @@ -146,6 +139,7 @@ public class PyMethodParametersInspection extends PyInspection { } if (flags.isMetaclassMethod()) { String expected_name; + String alternativeName = null; if (PyNames.NEW.equals(method_name) || flags.isClassMethod()) { expected_name = MCS; } @@ -154,8 +148,9 @@ public class PyMethodParametersInspection extends PyInspection { } else { expected_name = PyNames.CANONICAL_SELF; + alternativeName = CLS; } - if (!expected_name.equals(pname)) { + if (!expected_name.equals(pname) && (alternativeName == null || !alternativeName.equals(pname))) { registerProblem( PyUtil.sure(params[0].getNode()).getPsi(), PyBundle.message("INSP.usually.named.$0", expected_name), diff --git a/python/testData/inspections/PyMethodParametersInspection/expected.xml b/python/testData/inspections/PyMethodParametersInspection/expected.xml index 1bb1d70f1a66..6eb21015da29 100644 --- a/python/testData/inspections/PyMethodParametersInspection/expected.xml +++ b/python/testData/inspections/PyMethodParametersInspection/expected.xml @@ -50,11 +50,6 @@ 68 Usually first parameter of such methods is named 'cls' - - first_arg.py - 71 - Usually first parameter of such methods is named 'self' - first_arg.py 75