diff --git a/python/src/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureUsageProcessor.java b/python/src/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureUsageProcessor.java index 7eb279165509..a00dce122276 100644 --- a/python/src/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureUsageProcessor.java +++ b/python/src/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureUsageProcessor.java @@ -232,8 +232,7 @@ public class PyChangeSignatureUsageProcessor implements ChangeSignatureUsageProc updateParameterList(changeInfo, function); } if (changeInfo.isNameChanged()) { - final PsiElement method = changeInfo.getMethod(); - RenameUtil.doRenameGenericNamedElement(method, changeInfo.getNewName(), UsageInfo.EMPTY_ARRAY, null); + RenameUtil.doRenameGenericNamedElement(function, changeInfo.getNewName(), UsageInfo.EMPTY_ARRAY, null); } } diff --git a/python/testData/refactoring/changeSignature/renameOverriding.after.py b/python/testData/refactoring/changeSignature/renameOverriding.after.py new file mode 100644 index 000000000000..41027c70f616 --- /dev/null +++ b/python/testData/refactoring/changeSignature/renameOverriding.after.py @@ -0,0 +1,8 @@ +class A(object): + def m1(self): + print(1) + + +class B(A): + def m1(self): + print(2) \ No newline at end of file diff --git a/python/testData/refactoring/changeSignature/renameOverriding.before.py b/python/testData/refactoring/changeSignature/renameOverriding.before.py new file mode 100644 index 000000000000..e7cd0e0a32cb --- /dev/null +++ b/python/testData/refactoring/changeSignature/renameOverriding.before.py @@ -0,0 +1,8 @@ +class A(object): + def m(self): + print(1) + + +class B(A): + def m(self): + print(2) \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureTest.java b/python/testSrc/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureTest.java index 649dfe9c87b1..2071270423bd 100644 --- a/python/testSrc/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureTest.java +++ b/python/testSrc/com/jetbrains/python/refactoring/changeSignature/PyChangeSignatureTest.java @@ -87,6 +87,10 @@ public class PyChangeSignatureTest extends PyTestCase { new PyParameterInfo(-1, "a", "2", false)), LanguageLevel.PYTHON32); } + public void testRenameOverriding() { + doChangeSignatureTest("m1", Arrays.asList(new PyParameterInfo(0, "self", null, false))); + } + public void testEmptyParameterName() { doValidationTest(null, Arrays.asList(new PyParameterInfo(-1, "", "2", true)), PyBundle.message("refactoring.change.signature.dialog.validation.parameter.name"));