From 852ac210de16ca4112d985f929e742e8047da7c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Piotr=20Ma=C5=9Blanka?= <piotr.maslanka@henrietta.com.pl>
Date: Fri, 27 Mar 2020 17:10:49 +0100
Subject: [PATCH] build breaks if the directory is too much nested

---
 example/example3/__init__.py                   | 5 +++++
 example/example3/example3/__init__.py          | 5 +++++
 example/example3/example3/example3/__init__.py | 5 +++++
 example/example3/example3/example3/test.pyx    | 2 ++
 example/setup.py                               | 3 ++-
 example/tests/test_test.py                     | 4 ++++
 6 files changed, 23 insertions(+), 1 deletion(-)
 create mode 100644 example/example3/__init__.py
 create mode 100644 example/example3/example3/__init__.py
 create mode 100644 example/example3/example3/example3/__init__.py
 create mode 100644 example/example3/example3/example3/test.pyx

diff --git a/example/example3/__init__.py b/example/example3/__init__.py
new file mode 100644
index 0000000..fa84e47
--- /dev/null
+++ b/example/example3/__init__.py
@@ -0,0 +1,5 @@
+import logging
+import typing as tp
+
+logger = logging.getLogger(__name__)
+
diff --git a/example/example3/example3/__init__.py b/example/example3/example3/__init__.py
new file mode 100644
index 0000000..fa84e47
--- /dev/null
+++ b/example/example3/example3/__init__.py
@@ -0,0 +1,5 @@
+import logging
+import typing as tp
+
+logger = logging.getLogger(__name__)
+
diff --git a/example/example3/example3/example3/__init__.py b/example/example3/example3/example3/__init__.py
new file mode 100644
index 0000000..fa84e47
--- /dev/null
+++ b/example/example3/example3/example3/__init__.py
@@ -0,0 +1,5 @@
+import logging
+import typing as tp
+
+logger = logging.getLogger(__name__)
+
diff --git a/example/example3/example3/example3/test.pyx b/example/example3/example3/example3/test.pyx
new file mode 100644
index 0000000..c3169d4
--- /dev/null
+++ b/example/example3/example3/example3/test.pyx
@@ -0,0 +1,2 @@
+def test(a, b):
+    return a+b
diff --git a/example/setup.py b/example/setup.py
index 8e7ce40..253f301 100644
--- a/example/setup.py
+++ b/example/setup.py
@@ -11,7 +11,8 @@ cython_multibuilds = [
     Multibuild('example_module', ['example_module\\test.pyx', 'example_module/test2.pyx',
                                   'example_module/test3/test3.pyx',
                                   'example_module/test_n.c']),
-    Extension('example2.example', ['example2/example.pyx'])
+    Extension('example2.example', ['example2/example.pyx']),
+    Multibuild('example3.example3.example3', ['example3/example3/example3/test.pyx'])
 ]
 
 # first argument is used directly by snakehouse, the rest and **kwargs are passed to
diff --git a/example/tests/test_test.py b/example/tests/test_test.py
index 61cff56..0c0288c 100644
--- a/example/tests/test_test.py
+++ b/example/tests/test_test.py
@@ -2,10 +2,14 @@ from example_module.test import times_two
 from example_module.test2 import times_three, times_five
 from example_module.test3.test3 import times_four
 from example2.example import test
+from example3.example3.example3.test import test as test_three
 import unittest
 
 
 class TestExample(unittest.TestCase):
+    def test_three(self):
+        self.assertEqual(test_three(2, 3), 5)
+
     def test_test(self):
         self.assertEqual(test(2, 3), 5)
 
-- 
GitLab