bpo-44717: improve AttributeError on circular imports of submodules (GH-27338)

This commit is contained in:
Filipe Laíns 2021-07-24 23:44:46 +01:00 committed by GitHub
parent 717f608c4a
commit 0a8ae8a50a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
9 changed files with 1809 additions and 1734 deletions

View file

@ -1350,6 +1350,16 @@ class CircularImportTests(unittest.TestCase):
str(cm.exception),
)
def test_absolute_circular_submodule(self):
with self.assertRaises(AttributeError) as cm:
import test.test_import.data.circular_imports.subpkg2.parent
self.assertIn(
"cannot access submodule 'parent' of module "
"'test.test_import.data.circular_imports.subpkg2' "
"(most likely due to a circular import)",
str(cm.exception),
)
def test_unwritable_module(self):
self.addCleanup(unload, "test.test_import.data.unwritable")
self.addCleanup(unload, "test.test_import.data.unwritable.x")

View file

@ -0,0 +1 @@
import test.test_import.data.circular_imports.subpkg2.parent.child

View file

@ -0,0 +1,3 @@
import test.test_import.data.circular_imports.subpkg2.parent
test.test_import.data.circular_imports.subpkg2.parent