diff --git a/python/src/com/jetbrains/python/refactoring/NameSuggestorUtil.java b/python/src/com/jetbrains/python/refactoring/NameSuggestorUtil.java index 04b5128e7de5..e863549ee02a 100644 --- a/python/src/com/jetbrains/python/refactoring/NameSuggestorUtil.java +++ b/python/src/com/jetbrains/python/refactoring/NameSuggestorUtil.java @@ -23,7 +23,7 @@ public class NameSuggestorUtil { @NotNull public static Collection generateNames(@NotNull String name) { - name = StringUtil.decapitalize(deleteNonLetterFromString(name.replace('.', '_'))); + name = StringUtil.decapitalize(deleteNonLetterFromString(StringUtil.unquoteString(name.replace('.', '_')))); if (name.startsWith("get")) { name = name.substring(3); } diff --git a/python/testData/refactoring/introduceVariable/suggestStringConstantValue.py b/python/testData/refactoring/introduceVariable/suggestStringConstantValue.py new file mode 100644 index 000000000000..80a56485dd79 --- /dev/null +++ b/python/testData/refactoring/introduceVariable/suggestStringConstantValue.py @@ -0,0 +1 @@ +"foo bar" \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/refactoring/PyIntroduceVariableTest.java b/python/testSrc/com/jetbrains/python/refactoring/PyIntroduceVariableTest.java index 9b9b23d6cfa4..4dd4668a2be0 100644 --- a/python/testSrc/com/jetbrains/python/refactoring/PyIntroduceVariableTest.java +++ b/python/testSrc/com/jetbrains/python/refactoring/PyIntroduceVariableTest.java @@ -36,6 +36,10 @@ public class PyIntroduceVariableTest extends PyLightFixtureTestCase { doTestSuggestions(PyCallExpression.class, "my_class"); } + public void testSuggestStringConstantValue() { // PY-1276 + doTestSuggestions(PyExpression.class, "foo_bar"); + } + private void doTestSuggestions(Class parentClass, String... expectedNames) { myFixture.configureByFile("/refactoring/introduceVariable/" + getTestName(true) + ".py"); VariableIntroduceHandler handler = new VariableIntroduceHandler();