diff --git a/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/another.py b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/another.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes.py b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes.py new file mode 100644 index 000000000000..e2f10ea32673 --- /dev/null +++ b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes.py @@ -0,0 +1,4 @@ +import mod, another + +mod.func() +mod.Class() \ No newline at end of file diff --git a/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes_after.py b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes_after.py new file mode 100644 index 000000000000..10bd72544f3d --- /dev/null +++ b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/importOfMultipleModulesToFromImportOfOnesAttributes_after.py @@ -0,0 +1,5 @@ +import another +from mod import func, Class + +func() +Class() \ No newline at end of file diff --git a/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/mod.py b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/mod.py new file mode 100644 index 000000000000..b8b7b157dd7b --- /dev/null +++ b/python/testData/intentions/ImportOfMultipleModulesToFromImportOfOnesAttributes/mod.py @@ -0,0 +1,5 @@ +class Class: + pass + +def func(): + pass \ No newline at end of file diff --git a/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport.py b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport.py new file mode 100644 index 000000000000..d80699bfe1b0 --- /dev/null +++ b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport.py @@ -0,0 +1,5 @@ +import mod + +print(mod) +print(mod.func() +print(mod.Class()) \ No newline at end of file diff --git a/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport_after.py b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport_after.py new file mode 100644 index 000000000000..357d9f0879fb --- /dev/null +++ b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/importToFromImportKeepingOriginalImport_after.py @@ -0,0 +1,6 @@ +import mod +from mod import func, Class + +print(mod) +print(func() +print(Class()) \ No newline at end of file diff --git a/python/testData/intentions/ImportToFromImportKeepingOriginalImport/mod.py b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/mod.py new file mode 100644 index 000000000000..b8b7b157dd7b --- /dev/null +++ b/python/testData/intentions/ImportToFromImportKeepingOriginalImport/mod.py @@ -0,0 +1,5 @@ +class Class: + pass + +def func(): + pass \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/__init__.py b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/mod.py b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/mod.py new file mode 100644 index 000000000000..b8b7b157dd7b --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/mod.py @@ -0,0 +1,5 @@ +class Class: + pass + +def func(): + pass \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes.py b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes.py new file mode 100644 index 000000000000..a92bfba38153 --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes.py @@ -0,0 +1,4 @@ +from . import mod + +mod.Class() +mod.func() \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes_after.py b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes_after.py new file mode 100644 index 000000000000..020ebe200158 --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes/relativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes_after.py @@ -0,0 +1,4 @@ +from .mod import func, Class + +Class() +func() \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/__init__.py b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/__init__.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/another.py b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/another.py new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/mod.py b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/mod.py new file mode 100644 index 000000000000..b8b7b157dd7b --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/mod.py @@ -0,0 +1,5 @@ +class Class: + pass + +def func(): + pass \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes.py b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes.py new file mode 100644 index 000000000000..c8d0eebdef67 --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes.py @@ -0,0 +1,4 @@ +from . import mod, another + +mod.Class() +mod.func() \ No newline at end of file diff --git a/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes_after.py b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes_after.py new file mode 100644 index 000000000000..dff923b2583b --- /dev/null +++ b/python/testData/intentions/RelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes/relativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes_after.py @@ -0,0 +1,5 @@ +from . import another +from .mod import func, Class + +Class() +func() \ No newline at end of file diff --git a/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java b/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java index e92047852696..9dc32664bbe0 100644 --- a/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java +++ b/python/testSrc/com/jetbrains/python/intentions/PyIntentionTest.java @@ -473,6 +473,22 @@ public class PyIntentionTest extends PyTestCase { doMultiFileTest("Remove 'pkg.mod' qualifier"); } + public void testRelativeFromImportOfModuleItselfToRelativeFromImportOfItsAttributes() { + doMultiFileTest("Convert to 'from .mod import ...'"); + } + + public void testRelativeFromImportOfMultipleModulesToRelativeFromImportOfOnesAttributes() { + doMultiFileTest("Convert to 'from .mod import ...'"); + } + + public void testImportOfMultipleModulesToFromImportOfOnesAttributes() { + doMultiFileTest("Convert to 'from mod import ...'"); + } + + public void testImportToFromImportKeepingOriginalImport() { + doMultiFileTest("Convert to 'from mod import ...'"); + } + public void testTypeInDocstring() { getIndentOptions().INDENT_SIZE = 2; doDocParamTypeTest(DocStringFormat.REST);