summaryrefslogtreecommitdiff
path: root/numpy/distutils/tests/test_system_info.py
Commit message (Collapse)AuthorAgeFilesLines
* MAINT: remove redundant open() modes and io.open() aliasMike Taves2022-10-291-2/+2
|
* STY: Make linter happySebastian Berg2022-10-271-1/+0
| | | | Not new things, but in touched lines...
* TST,MAINT: Replace most `setup` with `setup_method` (also teardown)Sebastian Berg2022-10-271-2/+2
| | | | | | | | In some cases, the replacement is clearly not what is intended, in those (where setup was called explicitly), I mostly renamed `setup` to `_setup`. The `test_ccompile_opt` is a bit confusing, so left it right now (this will probably fail)
* TST: xfail `test_overrides` when numpy is build with MKL supportBas van Beek2021-10-231-0/+4
|
* TST: Avoid changing odd tempfile names in tests' site.cfgDWesl2021-01-011-2/+2
| | | | | | | | CI once produced a tempfile name with the string 'mkl' embedded. The old code changed this as well as the section name. This should ensure only section names get changed, and the restriction on the number of replacements should catch any weird corner cases, since I think the sections came first.
* TST: Expanded the `_parse_env_order` testsBas van Beek2020-09-181-1/+7
| | | | | | Relevant for when LAPACK/BLAS optimization is disabled. Addresses https://github.com/numpy/numpy/pull/17346#issuecomment-694744389.
* BLD: enabled negation of library choices in NPY_*_ORDER (#17219)Nick R. Papior2020-09-171-0/+27
| | | | | | | | | | | | | | | | | | | | | | | BLD: enabled negation of library choices in NPY_*_ORDER When users build for a particular order it may be beneficial to disallow certain libraries. In particular a user may not care about which accelerated BLAS library is used, so long as the NetLIB or ATLAS library isn't used. This is now possible with: NPY_BLAS_ORDER='^blas,atlas' or NPY_BLAS_ORDER='!blas,atlas' Since we may envision more BLAS/LAPACK libraries to the pool, this will provide greater flexibility as they enter. A new (local) method is added in system_info.py which removes duplicate code and allows for easier usage across libraries.
* DOC: link and cleanup docstrings in site.cfg.examplemattip2020-01-201-1/+33
|
* MAINT: Remove implicit inheritance from object class (#15236)Jon Dufresne2020-01-051-1/+1
| | | | | | | Inheriting from object was necessary for Python 2 compatibility to use new-style classes. In Python 3, this is unnecessary as there are no old-style classes. Dropping the object is more idiomatic Python.
* MAINT: Remove unnecessary 'from __future__ import ...' statementsJon Dufresne2020-01-031-2/+0
| | | | | As numpy is Python 3 only, these import statements are now unnecessary and don't alter runtime behavior.
* BLD: streamlined library names in site.cfg sections (#13157)Nick R. Papior2019-04-301-2/+22
| | | * BLD: use libraries as a key consistently in all site.cfg sections
* BUG: parse shell escaping in extra_compile_args and extra_link_argsEric Wieser2019-02-241-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Thanks to a change in exec_command, these strings are no longer passed onto the shell. Since config files do not support list values, our best bet is to perform shell-splitting immediately. This brings the behavior back in line a little to how it was before. On windows systems, the behavior has changed. Previously it was treated as a single argument unless it contained quotes, resulting in the following weird behavior: # passes as one argument, preserving spaces extra_link_args=-Wl,rpath=A:/path/with spaces # passes as two arguments, preserving spaces extra_link_args="-Wl,rpath=A:\path\with spaces" -lgfortran # passes as one long quoted argument (surprising and undesirable) extra_link_args=-Wl,rpath=A:\path\without_spaces -lgfortran Now it behaves as windows escaping via subprocess (but _not_ via cmd) normally would: # Passed as two separate arguments (probably not as intended, but should be expected) extra_link_args=-Wl,rpath=A:/path/with spaces # passes as two arguments, preserving spaces extra_link_args="-Wl,rpath=A:\path\with spaces" -lgfortran # passes as two arguments extra_link_args=-Wl,rpath=A:\path\without_spaces -lgfortran Fixes gh-12659
* MAINT: Remove all uses of run_module_suite.Charles Harris2018-04-061-7/+1
| | | | | That function is nose specific and has not worked since `__init__` files were added to the tests directories.
* TST: Switch to using pytest markersCharles Harris2018-04-041-4/+6
| | | | | | | | | | | Use standard pytest markers everywhere in the numpy tests. At this point there should be no nose dependency. However, nose is required to test the legacy decorators if so desired. At this point, numpy test cannot be run in the way with runtests, rather installed numpy can be tested with `pytest --pyargs numpy` as long as that is not run from the repo. Run it from the tools directory or some such.
* MAINT: Remove use of unittest in NumPy tests.xoviat2018-03-211-1/+1
| | | | | | | | | | | | | | | | This removes a few left over uses of unittest. The main changes apart from removal of Test case are: * `setUp` replaced by nose and pytest compatible `setup` * `tearDown` replaced by nose and pytest compatible `teardown` * `assertRaises` replaced by `assert_raises` * `assertEqual` replaced by `assert_equal` The last two are in `numpy/testings/tests/test_utils.py`, so may seem a but circular, but at least are limited to those two functions. The use of `setup` and `teardown`, can be fixed up with the pytest equivalents after we have switched to pytest.
* MAINT: distutils: trivial cleanupsxoviat2017-11-061-7/+4
|
* TST: fix failures:xoviat2017-09-041-1/+1
| | | | | | 1. fail tests related to DLL load failure as they were previously untested. 2. fix have_compiler to return false on old compilers 3. xfail some tests that were not working on old Python versions.
* TST: Remove unittest dependencies in numpy/distutils/testsCharles Harris2017-07-171-9/+11
| | | | Also rename some classes that should not begin 'Test'.
* MAINT: Rearrange files in numpy/testing module.Charles Harris2017-07-041-5/+6
| | | | | | | | | | | | | | | | | The aim here is to separate out the nose dependent files prior to adding pytest support. This could be done by adding new files to the general numpy/testing directory, but I felt that it was to have the relevant files separated out as it makes it easier to completely remove nose dependencies when needed. Many places were accessing submodules in numpy/testing directly, and in some cases incorrectly. That presented a backwards compatibility problem. The solution adapted here is to have "dummy" files whose contents will depend on whether of not pytest is active. That way the module looks the same as before from the outside. In the case of numpy itself, direct accesses have been fixed. Having proper `__all__` lists in the submodules helped in that.
* BUG: KeyboardInterrupt is swallowed all over the placeEric Wieser2017-06-031-3/+3
| | | | Bare except is very rarely the right thing
* ENH: automatically determine compile dependenciesJulian Taylor2017-04-101-1/+2
| | | | | Use these dependencies to avoid unnecessary recompilations of unchanged files.
* TST: Respect compiler customizationsMarvin Schmidt2017-03-301-0/+3
| | | | | Without calling `compiler.customize(None)` customizations using environment variables like CC won't be honoured
* MAINT: Fix ResourceWarning new in Python 3.6.Charles Harris2016-10-191-0/+1
| | | | | | | | | In Python 2.6 the process destructor emits a ResourceWarning if the process has not terminated when destruction occurs. Fix by calling the wait method before return. The Popen class may be used as a context manager in Python 3.2+, unfortunately that does not include 2.7.
* MAINT: Close some filehandlers and PIPEs after being doneSebastian Berg2016-09-021-1/+3
| | | | | The PIPE in the tests caused a ResourceWarning during testing in python 3.
* BUG: allow graceful recovery for no compilerMatthew Brett2016-04-141-6/+30
| | | | | | | | | | If there is no compiler on Linux, the error we were getting was CompileError rather than the OSError the test was expecting. This had the nasty side-effect of leaving us in a deleted temporary directory, causing later test failures. Try a check to see if we have a compiler and skip otherwise.
* MAINT: Dictionary litteralRémy Léone2015-11-071-9/+8
|
* TST: use os.pathsep to separate library directoriesChristoph Gohlke2015-08-011-2/+3
|
* TST: skip gcc specific test when using msvcChristoph Gohlke2015-08-011-0/+2
|
* TST: alternatively assert existence of msvc .obj filesChristoph Gohlke2015-08-011-1/+2
| | | Fixes test_system_info.TestSystemInfoReading.test_compile1 failure on Windows
* STY: PEP8 and pyflakes fixes for numpy/distutils.Charles Harris2015-07-251-14/+16
|
* BUG: Had thought the defaults where made of lists, it is simply a str.Nick Papior Andersen2015-02-261-7/+7
| | | | Changed all lists to strings
* ENH: rpath and runtime_library_dirs equivalentNick Papior Andersen2015-02-261-1/+5
| | | | | | | | | The original distutils assumes runtime_library_dirs to be located in rpath, however, the internal structures assumes the keyword to be runtime_library_dirs. For now numpy.distutils handles both equivalently. The test has been updated to also test the rpath solution.
* BUG: Python3 fixNick Papior Andersen2015-02-251-4/+5
| | | | | | Direct writing to files is not the same for 2vs3. Hence we now close the file handle, re-open it and write using the file.
* BUG: PEP correctionsNick Papior Andersen2015-02-251-71/+79
| | | | | | | | | | | More corrections pointed out by Ralf Changed the get_standard_file to a fully temporary file. This means that the __init__ diverges a bit from the system_info object. However, it only has to do with the setup for the test. All internal things regarding the object have not been altered. I have checked on my box that all files/directories are removed.
* BUG: PEP corrections and streamlined with numpy dev lineNick Papior Andersen2015-02-251-41/+23
| | | | | | | | | Changed self.assert* to assert_ instances through numpys own testing utilities. Fixes for the rst document. Removed unnecessary import statements in the test.
* BUG: Trying to fix travis buildsNick Papior Andersen2015-02-241-5/+4
| | | | | | | The error of getcwd on 2.6 was due to previous fault. We should not request include_dirs as they are not provided. For python 3 I forgot the top ascii writing.
* BUG: Trying to fix travis buildsNick Papior Andersen2015-02-241-30/+36
| | | | | | | The test on Travis does not allow getcwd on python 2.6 The test for python 3+ already is in unicode, hence the str representation was wrong.
* ENH: Added tests to the extra options read inNick Papior Andersen2015-02-241-0/+203
A simple test (distutils/testing/test_system_info.py) to check that the options are read in correctly has been added. This test has a few faults: A) It does not allow strict library checks as that can be _very_ system dependent. B) It compiles some simple C-programs but does currently not link them to a shared library. C) As such the test does not check that the flags are actually used. To circumvent this one should: A) Make a library of the compiled sources. B) Check that a runtime_library_dirs is working by checking with ldd C) Make a preprocessor flag to check the output of two commands which should differ according to the flags in each block I am not too much into the distutils compiler suite. So I have not endeavoured on this path. - The current test shows that the flags are read in by the standard system_info object and can thus be considered a "stable" solution. - Added note of the 1.10 release schedule. - Corrected the site.cfg.example, added runtime_library_dirs to the OpenBLAS example where it seems appropriate. - Bugfix for the site.cfg.example (the [DEFAULT] block should be name [ALL]) This might have lead to some confusion, but many of the libraries are linked explicitly by their own sections, hence it might not have been caught.