diff options
author | Matti Picus <matti.picus@gmail.com> | 2023-02-27 15:05:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-27 15:05:01 +0200 |
commit | 68ddb26260946f6f73c48a781ca0f8ce4191898e (patch) | |
tree | bce8b7d24634bfdbd71bb49bdac8afd8cd3971d6 /numpy/array_api/tests/test_indexing_functions.py | |
parent | e49b744d2c4e78cf1c3170e5d53de07da0cfb71c (diff) | |
parent | 786bd366b22675b1e4067653d4729031c258f35f (diff) | |
download | numpy-68ddb26260946f6f73c48a781ca0f8ce4191898e.tar.gz |
Merge pull request #23284 from arogozhnikov/add-xp-take
ENH: add support for xp.take
Diffstat (limited to 'numpy/array_api/tests/test_indexing_functions.py')
-rw-r--r-- | numpy/array_api/tests/test_indexing_functions.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/numpy/array_api/tests/test_indexing_functions.py b/numpy/array_api/tests/test_indexing_functions.py new file mode 100644 index 000000000..9e05c6386 --- /dev/null +++ b/numpy/array_api/tests/test_indexing_functions.py @@ -0,0 +1,24 @@ +import pytest + +from numpy import array_api as xp + + +@pytest.mark.parametrize( + "x, indices, axis, expected", + [ + ([2, 3], [1, 1, 0], 0, [3, 3, 2]), + ([2, 3], [1, 1, 0], -1, [3, 3, 2]), + ([[2, 3]], [1], -1, [[3]]), + ([[2, 3]], [0, 0], 0, [[2, 3], [2, 3]]), + ], +) +def test_take_function(x, indices, axis, expected): + """ + Indices respect relative order of a descending stable-sort + + See https://github.com/numpy/numpy/issues/20778 + """ + x = xp.asarray(x) + indices = xp.asarray(indices) + out = xp.take(x, indices, axis=axis) + assert xp.all(out == xp.asarray(expected)) |