当我尝试将nose和cython组合使用时,我无法完全按照自己的意愿使它们正常工作。 代码组织如下:
.
├── setup.py
└── src
├── calc
│ ├── factorial.py
│ ├── __init__.py
│ └── tests.py
└── cycalc
├── tests.py
└── triangle.pyx
每个“tests.py”文件都包含两个测试,一个成功,一个失败。运行“setup.py nosetests”的结果是只运行“calc/tests.py”。如果我在此之后运行“nosetests3 src/cycalc”,则会运行“cycalc/tests.py”中的两个测试。但是,如果我清理所有构建文件,它会失败,因为“cycalc/triangle.pyx”尚未构建为共享库。
然后我尝试添加文件“src/cycalc/__init__.py”,现在“setup.py nosetests”会捕捉到“cycalc/tests.py”,但它无法找到所需的模块,该模块位于“src”中。
如何安排我的Cython源代码和测试以使“setup.py nosetests”找到它所需的一切?