diff --git a/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters.py b/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters.py new file mode 100644 index 000000000000..acc9f0d45e05 --- /dev/null +++ b/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters.py @@ -0,0 +1,7 @@ +class A: + def __init__(self, a, /, b, *args, c, **kwargs): + pass + +class B(A): + def __init__(self): + pass \ No newline at end of file diff --git a/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters_after.py b/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters_after.py new file mode 100644 index 000000000000..5d9661ee8a1c --- /dev/null +++ b/python/testData/quickFixes/PyAddCallSuperQuickFixTest/positionalOnlyParameters_after.py @@ -0,0 +1,7 @@ +class A: + def __init__(self, a, /, b, *args, c, **kwargs): + pass + +class B(A): + def __init__(self, a, /, b, *args, c, **kwargs): + super().__init__(a, b, *args, c=c, **kwargs) \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/quickFixes/PyAddCallSuperQuickFixTest.java b/python/testSrc/com/jetbrains/python/quickFixes/PyAddCallSuperQuickFixTest.java index 0c095bc09fa1..c34acf5c0a47 100644 --- a/python/testSrc/com/jetbrains/python/quickFixes/PyAddCallSuperQuickFixTest.java +++ b/python/testSrc/com/jetbrains/python/quickFixes/PyAddCallSuperQuickFixTest.java @@ -19,8 +19,9 @@ import com.intellij.testFramework.TestDataPath; import com.jetbrains.python.PyBundle; import com.jetbrains.python.PyQuickFixTestCase; import com.jetbrains.python.inspections.PyMissingConstructorInspection; +import com.jetbrains.python.psi.LanguageLevel; -@TestDataPath("$CONTENT_ROOT/../testData//quickFixes/AddCallSuperQuickFixTest/") +@TestDataPath("$CONTENT_ROOT/../testData/quickFixes/PyAddCallSuperQuickFixTest/") public class PyAddCallSuperQuickFixTest extends PyQuickFixTestCase { public void testOldStyle() { @@ -34,4 +35,9 @@ public class PyAddCallSuperQuickFixTest extends PyQuickFixTestCase { public void testKwargs() { doQuickFixTest(PyMissingConstructorInspection.class, PyBundle.message("QFIX.add.super")); } + + // PY-35512 + public void testPositionalOnlyParameters() { + doQuickFixTest(PyMissingConstructorInspection.class, PyBundle.message("QFIX.add.super"), LanguageLevel.PYTHON38); + } }