diff options
author | Marc Mueller <30130371+cdce8p@users.noreply.github.com> | 2021-10-12 13:04:46 +0200 |
---|---|---|
committer | Marc Mueller <30130371+cdce8p@users.noreply.github.com> | 2021-10-12 13:04:46 +0200 |
commit | d4674781d974bd73ca3bfe82fd0816684f2a97d4 (patch) | |
tree | 09d15eaa4fb8a17e86d49e31ec9c4957acbf7c3e | |
parent | 02f8b1627ca488b231bb9efa8ad3e65c59fa6d83 (diff) | |
download | astroid-d4674781d974bd73ca3bfe82fd0816684f2a97d4.tar.gz |
Revert "Fix regression with import resolver"
This reverts commit 02f8b1627ca488b231bb9efa8ad3e65c59fa6d83.
9 files changed, 6 insertions, 14 deletions
diff --git a/astroid/nodes/scoped_nodes.py b/astroid/nodes/scoped_nodes.py index 61bb0794..4559fc55 100644 --- a/astroid/nodes/scoped_nodes.py +++ b/astroid/nodes/scoped_nodes.py @@ -708,16 +708,19 @@ class Module(LocalsDictNodeNG): raise return AstroidManager().ast_from_module_name(modname) - def relative_to_absolute_name(self, modname: str, level: int) -> str: + def relative_to_absolute_name(self, modname, level): """Get the absolute module name for a relative import. The relative import can be implicit or explicit. :param modname: The module name to convert. + :type modname: str :param level: The level of relative import. + :type level: int :returns: The absolute module name. + :rtype: str :raises TooManyLevelsError: When the relative import refers to a module too far above this one. @@ -731,12 +734,8 @@ class Module(LocalsDictNodeNG): if self.package: level = level - 1 package_name = self.name.rsplit(".", level)[0] - elif ( - self.path - and not os.path.exists(os.path.dirname(self.path[0]) + "/__init__.py") - and os.path.exists( - os.path.dirname(self.path[0]) + "/" + modname.split(".")[0] - ) + elif not os.path.exists("__init__.py") and os.path.exists( + modname.split(".")[0] ): level = level - 1 package_name = "" diff --git a/tests/testdata/python3/data/beyond_top_level_three/double_name/__init__.py b/tests/testdata/python3/data/beyond_top_level_three/double_name/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/double_name/__init__.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/__init__.py b/tests/testdata/python3/data/beyond_top_level_three/module/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/__init__.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/double_name/__init__.py b/tests/testdata/python3/data/beyond_top_level_three/module/double_name/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/double_name/__init__.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/double_name/function.py b/tests/testdata/python3/data/beyond_top_level_three/module/double_name/function.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/double_name/function.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/__init__.py b/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/__init__.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/__init__.py b/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/__init__.py deleted file mode 100644 index e69de29b..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/__init__.py +++ /dev/null diff --git a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/main.py b/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/main.py deleted file mode 100644 index b9cd0bbc..00000000 --- a/tests/testdata/python3/data/beyond_top_level_three/module/sub_module/sub_sub_module/main.py +++ /dev/null @@ -1 +0,0 @@ -from ...double_name import function diff --git a/tests/unittest_inference.py b/tests/unittest_inference.py index 1cd65938..f89e8c8a 100644 --- a/tests/unittest_inference.py +++ b/tests/unittest_inference.py @@ -6547,11 +6547,5 @@ def test_namespace_package_same_name() -> None: resources.build_file("data/beyond_top_level_two/a.py") -def test_relative_imports_init_package() -> None: - """check that relative imports within a package that uses __init__.py - still works""" - resources.build_file("data/beyond_top_level_three/module/sub_module/sub_sub_module/main.py") - - if __name__ == "__main__": unittest.main() |