| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
| |
gh-8410 breaks a large number of astropy tests, because it sets up
a boolean array for values that should actually be compared (i.e.,
are not `nan` or `inf`) using `zeros_like`. The latter means that
for subclasses, the boolean test array is not a plain `ndarray` but
the subclass. But for astropy's `Quantity`, the `all` method is
undefined.
This commit ensures the test arrays from `isinf` and `isnan` are
used directly.
|
|
|
|
|
| |
This failed to raise AssertionError in an earlier rewrite of
assert_array_compare and is thus tested explicitly now.
|
|
|
|
|
|
|
|
|
| |
Added tests for simple arrays/elements,
tests that ensure that nans are not compared when they are in the same
position in both arrays but raise AssertionError when they are not,
and tests that ensure inf logic
(-np.inf < np.inf, 1.0 < np.inf, -np.inf < 1.0)
and that all other cases fail.
|
| |
|
| |
|
|
|
|
|
|
|
| |
This means that warnings of different origin then the one tested for
behave normally. If the normal behaviour is to igonre them this might
decrease specificity in rare cases. In most cases the specificity
will be slightly higher.
|
|
|
|
|
| |
Also modify the corresponding test to suppress the non Deprecation
warnings created to test specificity.
|
| |
|
|
|
|
|
|
| |
This context has a couple of advantages over the typical one, and can
ensure that warnings are cleanly filtered without side effect for
later tests.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the check for scalars in assert_almost_equal so that
abs(actual - desired) < 1.5 * 10**(-decimal)
Note that the previous documentation claimed that the functions were
equivalent to
abs(actual - desired) < .5 * 10**(-decimal)
but that was not how they behaved in practice.
Due to the change in implementation, some very delicate tests may fail
that did not fail before. No extra failures were noted in scipy.
Closes #5200.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
assert_equal(np.array([0, 1]), np.matrix([0, 1]))
used to print
x: array([0, 1])
y: [repr failed]
now prints
x: array([0, 1])
y: [repr failed for <matrix>: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()]
|
|\
| |
| | |
Revert "Merge pull request #7001 from shoyer/NaT-comparison"
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This reverts commit 7141f40b58ed1e7071cde78ab7bc8ab37e9c5983,
reversing changes made to 8fa6e3bef26a6d4a2c92f2824129aa4409be2590.
The original broke some pandas tests. The current plan to get this
in is
* reversion
* issue FutureWarning in 1.11 and 1.12
* make the change in 1.13.
|
|/ |
|
|
|
|
|
|
|
|
|
| |
Now, NaT compares like NaN:
- NaT != NaT -> True
- NaT == NaT (and all other comparisons) -> False
We discussed this on the mailing list back in October:
https://mail.scipy.org/pipermail/numpy-discussion/2015-October/073968.html
|
|
|
|
|
| |
The test is in numpy/lib/tests/test_io.py. This commit is intended
as a demonstration of using temppath.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Context manager intended for use when the same temporary file needs to
be opened and closed more than once. The context manager creates the
file, closes it, and returns the path to the file. On exit from the
context block the file is removed. The file should be closed before
exiting the context as an error will be raised on windows if not.
Also fix up the `tempdir` context manager to deal with exceptions.
Tests are added for both `temppath` and `tempdir`.
|
|
|
|
|
|
|
|
| |
* use SkipTest in numpy tests instead of importing it from nose
* add a KnownFailureException as an alias for KnownFailureTest
(the former is preferred, but the latter is kept for backcompat)
* rename the KnownFailure nose plugin into KnownFailurePlugin,
and keep the old name for backcompat
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
Add context manager for tests that, on entry, clears record of any
previous warnings from given modules, so that any warning raised in the
context block does get raised, rather than suppressed by a previous
warning causing an entry in the `__warningregistry_`` of the module.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fix addresses Issue #347.
All of the tests in this class were using random numbers generated
without a seed. This broke `test_simple` in a nondeterministic manner.
Rewrote all tests for this function. Instead of using random numbers,
well-defined arrays of widely varying amplitude were created instead.
Changed the array modification values so that the test arrays were
either just above or just below the NULP threshold.
Added tests for float64, float32, complex128, and complex64 dtypes, and
added both addition and subtraction tests. Tried to standardize the code
for all tests.
|
|\
| |
| | |
BUG: fix array_almost_equal for array subclasses
|
| |
| |
| |
| | |
introduced in gh-4105/ab04e1ae0e8eca717bc7e42f3b0a60c9ff764289
|
| | |
|
|/ |
|
|
|
|
|
|
| |
The tests were looking at the formatting of other elements in the string
which is not relevant for the things testsed in this case. By looking
only at the array formatting, we guarantee consistency across systems.
|
|
|
|
|
| |
It's silly to check scalars when their string representations will vary
so much from system to system.
|
| |
|
|
|
|
|
|
| |
assert_approx_equal & assert_almost_equal make internal use of
build_err_msg so a few tests have been added to check that the errors
are formatted correctly.
|
| |
|
|
|
|
|
|
| |
Casting y to an inexact type fixes problems such as
abs(MIN_INT) < 0, and generally makes sense since the allclose
logic is inherently for float types.
|
|
|
|
|
|
|
| |
Run the 2to3 ws_comma fixer on *.py files. Some lines are now too long
and will need to be broken at some point. OTOH, some lines were already
too long and need to be broken at some point. Now seems as good a time
as any to do this with open PRs at a minimum.
|
|
|
|
|
|
|
| |
Add `print_function` to all `from __future__ import ...` statements
and use the python3 print function syntax everywhere.
Closes #3078.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The new import `absolute_import` is added the `from __future__ import`
statement and The 2to3 `import` fixer is run to make the imports
compatible. There are several things that need to be dealt with to make
this work.
1) Files meant to be run as scripts run in a different environment than
files imported as part of a package, and so changes to those files need
to be skipped. The affected script files are:
* all setup.py files
* numpy/core/code_generators/generate_umath.py
* numpy/core/code_generators/generate_numpy_api.py
* numpy/core/code_generators/generate_ufunc_api.py
2) Some imported modules are not available as they are created during
the build process and consequently 2to3 is unable to handle them
correctly. Files that import those modules need a bit of extra work.
The affected files are:
* core/__init__.py,
* core/numeric.py,
* core/_internal.py,
* core/arrayprint.py,
* core/fromnumeric.py,
* numpy/__init__.py,
* lib/npyio.py,
* lib/function_base.py,
* fft/fftpack.py,
* random/__init__.py
Closes #3172
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In python3 range is an iterator and `xrange` has been removed. This has
two consequence for code:
1) Where a list is needed `list(range(...))` must be used.
2) `xrange` must be replaced by `range`
Both of these changes also work in python2 and this patch makes both.
There are three places fixed that do not need it, but I left them in
so that the result would be `xrange` clean.
Closes #3092
|
|
|
|
|
|
|
|
| |
This should be harmless, as we already are division clean. However,
placement of this import takes some care. In the future a script
can be used to append new features without worry, at least until
such time as it exceeds a single line. Having that ability will
make it easier to deal with absolute imports and printing updates.
|
|
|
|
|
|
|
| |
1) New function assert_no_warnings
2) Make assert_warns and assert_no_warnings pass through the
function's return value on success, so that it can be checked as
well.
|
|
|
|
|
|
|
|
|
| |
The logic in np.random.shuffle was... not very sensible. Fixes trac
ticket #2074.
This patch also exposes a completely unrelated issue in
numpy.testing. Filed as Github issue #347 and marked as knownfail for
now.
|
|
|
|
|
|
|
|
|
|
|
| |
The numpy doctest extension generates an error with empty doctest output;
this most often comes about with the +SKIP option.
The numpy doctest plugin exposed a nose bug because it accidentally used
a different default for the 'doctest-result-variable'.
nose bug report here:
http://code.google.com/p/python-nose/issues/detail?id=445
|
|
|
|
|
|
|
| |
The doctesting tests were in the code file, and (for me) rather
difficult to run without running lots of other tests. With this change
you can run the doctest tests in isolation by executing the
test_doctesting.py file.
|
| |
|
| |
|
| |
|
|
|
|
| |
tolerances
|
|
|
|
|
|
|
|
|
| |
module. The fix should be good for Python >= 2.4 and used the following sed script:
s/\<failUnless\>/assertTrue/g
s/\<failIf\>/assertFalse/g
s/\<failUnlessEqual\>/assertEqual/g
s/\<failUnlessRaises\>/assertRaises/g
|
| |
|
| |
|
| |
|