diff --git a/python/src/com/jetbrains/python/codeInsight/intentions/TypeAssertionIntention.java b/python/src/com/jetbrains/python/codeInsight/intentions/TypeAssertionIntention.java index 1292036bbc39..4fd66c48b40d 100644 --- a/python/src/com/jetbrains/python/codeInsight/intentions/TypeAssertionIntention.java +++ b/python/src/com/jetbrains/python/codeInsight/intentions/TypeAssertionIntention.java @@ -99,7 +99,7 @@ public class TypeAssertionIntention implements IntentionAction { if (document.getLineNumber(statementList.getTextOffset()) == document.getLineNumber(statementListParent.getTextOffset())) { final String substring = - TextRange.create(statementListParent.getTextOffset(), statementList.getTextOffset()).substring(document.getText()); + TextRange.create(statementListParent.getTextRange().getStartOffset(), statementList.getTextOffset()).substring(document.getText()); final PyStatement foo = elementGenerator.createFromText(LanguageLevel.forElement(problemElement), PyStatement.class, substring + "\n\t" + text + "\n\t" + statementList.getText()); diff --git a/python/testData/intentions/afterTypeAssertion1.py b/python/testData/intentions/afterTypeAssertion1.py new file mode 100644 index 000000000000..eccd6b600b47 --- /dev/null +++ b/python/testData/intentions/afterTypeAssertion1.py @@ -0,0 +1,3 @@ +def foo(a, b): + assert isinstance(a, object) + a. diff --git a/python/testData/intentions/beforeTypeAssertion1.py b/python/testData/intentions/beforeTypeAssertion1.py new file mode 100644 index 000000000000..e56ba22d5530 --- /dev/null +++ b/python/testData/intentions/beforeTypeAssertion1.py @@ -0,0 +1 @@ +def foo(a, b): a. diff --git a/python/testSrc/com/jetbrains/python/PyIntentionTest.java b/python/testSrc/com/jetbrains/python/PyIntentionTest.java index f6a3e2ce6ed1..cb69abafe97f 100644 --- a/python/testSrc/com/jetbrains/python/PyIntentionTest.java +++ b/python/testSrc/com/jetbrains/python/PyIntentionTest.java @@ -249,6 +249,10 @@ public class PyIntentionTest extends PyTestCase { doTest(PyBundle.message("INTN.insert.assertion")); } + public void testTypeAssertion1() { //PY-7089 + doTest(PyBundle.message("INTN.insert.assertion")); + } + public void testDocStub() { doDocStubTest(); }