Hello, at (Debian) package build time, it would be really important to run the tests suite, but I'm not getting how to do that.
The simple approach doesn't work: >>> $ PYTHONPATH=build/lib.linux-x86_64-2.6 python -c "import numpy; numpy.test()" Traceback (most recent call last): File "<string>", line 1, in <module> File "numpy/__init__.py", line 127, in <module> raise ImportError(msg) ImportError: Error importing numpy: you should not try to import numpy from its source directory; please exit the numpy source tree, and relaunch your python intepreter from there. <<< because '.' is placed first in the sys.path list, so it gets used the numpy/ dir in . instead the one in build/lib... . Ok, so let's tune sys.path: >>> $ python -c "import sys ; sys.path.insert(0, 'build/lib.linux-x86_64-2.6') ; import numpy; numpy.test()" Running unit tests for numpy NumPy version 1.6.1 NumPy is installed in build/lib.linux-x86_64-2.6/numpy Python version 2.6.7 (r267:88850, Aug 3 2011, 11:33:52) [GCC 4.6.1] nose version 1.0.0 EEEEEEE ====================================================================== ERROR: Failure: NameError (name 'numeric' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 84, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/core/__init__.py", line 30, in <module> __all__ += numeric.__all__ NameError: name 'numeric' is not defined ====================================================================== ERROR: Failure: ImportError (cannot import name log) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 86, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/distutils/fcompiler/__init__.py", line 37, in <module> from numpy.distutils import log ImportError: cannot import name log ====================================================================== ERROR: Failure: NameError (name 'type_check' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 84, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/lib/__init__.py", line 23, in <module> __all__ += type_check.__all__ NameError: name 'type_check' is not defined ====================================================================== ERROR: Failure: NameError (name 'numeric' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 86, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/ma/testutils.py", line 17, in <module> import numpy.core.umath as umath File "build/lib.linux-x86_64-2.6/numpy/core/__init__.py", line 30, in <module> __all__ += numeric.__all__ NameError: name 'numeric' is not defined ====================================================================== ERROR: Failure: NameError (name 'defmatrix' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 84, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/matrixlib/__init__.py", line 4, in <module> __all__ = defmatrix.__all__ NameError: name 'defmatrix' is not defined ====================================================================== ERROR: Failure: NameError (name 'numeric' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 86, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/oldnumeric/__init__.py", line 14, in <module> from compat import * File "build/lib.linux-x86_64-2.6/numpy/oldnumeric/compat.py", line 13, in <module> import numpy.core.multiarray as multiarray File "build/lib.linux-x86_64-2.6/numpy/core/__init__.py", line 30, in <module> __all__ += numeric.__all__ NameError: name 'numeric' is not defined ====================================================================== ERROR: Failure: NameError (name 'type_check' is not defined) ---------------------------------------------------------------------- Traceback (most recent call last): File "/usr/lib/pymodules/python2.6/nose/loader.py", line 390, in loadTestsFromName addr.filename, addr.module) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 39, in importFromPath return self.importFromDir(dir_path, fqname) File "/usr/lib/pymodules/python2.6/nose/importer.py", line 84, in importFromDir mod = load_module(part_fqname, fh, filename, desc) File "build/lib.linux-x86_64-2.6/numpy/polynomial/__init__.py", line 28, in <module> from numpy.lib import deprecate File "build/lib.linux-x86_64-2.6/numpy/lib/__init__.py", line 23, in <module> __all__ += type_check.__all__ NameError: name 'type_check' is not defined ---------------------------------------------------------------------- Ran 7 tests in 0.004s FAILED (errors=7) <<< Not nice either, let's try another way, importing * from numpy: $ python -c "import sys ; sys.path.insert(0, 'build/lib.linux-x86_64-2.6') ; import numpy; from numpy import * ; numpy.test()" same result as above. So, what's the proper way to run the tests suite at build time? Thanks in advance, -- Sandro Tosi (aka morph, morpheus, matrixhasu) My website: http://matrixhasu.altervista.org/ Me at Debian: http://wiki.debian.org/SandroTosi _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion