summaryrefslogtreecommitdiff
path: root/tests/run/partial_circular_import.srctree
diff options
context:
space:
mode:
Diffstat (limited to 'tests/run/partial_circular_import.srctree')
-rw-r--r--tests/run/partial_circular_import.srctree40
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/run/partial_circular_import.srctree b/tests/run/partial_circular_import.srctree
new file mode 100644
index 000000000..173e5d53a
--- /dev/null
+++ b/tests/run/partial_circular_import.srctree
@@ -0,0 +1,40 @@
+PYTHON -c 'if __import__("sys").version_info >= (3,7): import pkg.A'
+PYTHON setup.py build_ext --inplace
+PYTHON -c "import pkg.A"
+
+######## setup.py ########
+
+from Cython.Build.Dependencies import cythonize
+from distutils.core import setup
+
+setup(
+ ext_modules = cythonize("*/*.py"),
+ )
+
+######## pkg/__init__.py ########
+
+######## pkg/A.py ########
+from . import B
+
+def verify(rel_B):
+ import pkg.B as abs_B
+ assert abs_B == rel_B
+verify(B)
+
+######## pkg/B.py ########
+from . import C
+
+def verify(rel_C):
+ import pkg.C as abs_C
+ assert abs_C == rel_C
+verify(C)
+
+######## pkg/C.py ########
+from . import B
+
+def verify(rel_B):
+ import pkg.B as abs_B
+ assert abs_B == rel_B
+
+verify(B)
+