PHP 8.0.30
Preview: test_indexerrors.py Size: 4.82 KB
/opt/alt/python37/lib64/python3.7/site-packages/numpy/core/tests/test_indexerrors.py

from __future__ import division, absolute_import, print_function

import numpy as np
from numpy.testing import TestCase, run_module_suite, assert_raises

class TestIndexErrors(TestCase):
    '''Tests to exercise indexerrors not covered by other tests.'''

    def test_arraytypes_fasttake(self):
        'take from a 0-length dimension'
        x = np.empty((2, 3, 0, 4))
        assert_raises(IndexError, x.take, [0], axis=2)
        assert_raises(IndexError, x.take, [1], axis=2)
        assert_raises(IndexError, x.take, [0], axis=2, mode='wrap')
        assert_raises(IndexError, x.take, [0], axis=2, mode='clip')

    def test_take_from_object(self):
        # Check exception taking from object array
        d = np.zeros(5, dtype=object)
        assert_raises(IndexError, d.take, [6])

        # Check exception taking from 0-d array
        d = np.zeros((5, 0), dtype=object)
        assert_raises(IndexError, d.take, [1], axis=1)
        assert_raises(IndexError, d.take, [0], axis=1)
        assert_raises(IndexError, d.take, [0])
        assert_raises(IndexError, d.take, [0], mode='wrap')
        assert_raises(IndexError, d.take, [0], mode='clip')

    def test_multiindex_exceptions(self):
        a = np.empty(5, dtype=object)
        assert_raises(IndexError, a.item, 20)
        a = np.empty((5, 0), dtype=object)
        assert_raises(IndexError, a.item, (0, 0))

        a = np.empty(5, dtype=object)
        assert_raises(IndexError, a.itemset, 20, 0)
        a = np.empty((5, 0), dtype=object)
        assert_raises(IndexError, a.itemset, (0, 0), 0)

    def test_put_exceptions(self):
        a = np.zeros((5, 5))
        assert_raises(IndexError, a.put, 100, 0)
        a = np.zeros((5, 5), dtype=object)
        assert_raises(IndexError, a.put, 100, 0)
        a = np.zeros((5, 5, 0))
        assert_raises(IndexError, a.put, 100, 0)
        a = np.zeros((5, 5, 0), dtype=object)
        assert_raises(IndexError, a.put, 100, 0)

    def test_iterators_exceptions(self):
        "cases in iterators.c"
        def assign(obj, ind, val):
            obj[ind] = val

        a = np.zeros([1, 2, 3])
        assert_raises(IndexError, lambda: a[0, 5, None, 2])
        assert_raises(IndexError, lambda: a[0, 5, 0, 2])
        assert_raises(IndexError, lambda: assign(a, (0, 5, None, 2), 1))
        assert_raises(IndexError, lambda: assign(a, (0, 5, 0, 2),  1))

        a = np.zeros([1, 0, 3])
        assert_raises(IndexError, lambda: a[0, 0, None, 2])
        assert_raises(IndexError, lambda: assign(a, (0, 0, None, 2), 1))

        a = np.zeros([1, 2, 3])
        assert_raises(IndexError, lambda: a.flat[10])
        assert_raises(IndexError, lambda: assign(a.flat, 10, 5))
        a = np.zeros([1, 0, 3])
        assert_raises(IndexError, lambda: a.flat[10])
        assert_raises(IndexError, lambda: assign(a.flat, 10, 5))

        a = np.zeros([1, 2, 3])
        assert_raises(IndexError, lambda: a.flat[np.array(10)])
        assert_raises(IndexError, lambda: assign(a.flat, np.array(10), 5))
        a = np.zeros([1, 0, 3])
        assert_raises(IndexError, lambda: a.flat[np.array(10)])
        assert_raises(IndexError, lambda: assign(a.flat, np.array(10), 5))

        a = np.zeros([1, 2, 3])
        assert_raises(IndexError, lambda: a.flat[np.array([10])])
        assert_raises(IndexError, lambda: assign(a.flat, np.array([10]), 5))
        a = np.zeros([1, 0, 3])
        assert_raises(IndexError, lambda: a.flat[np.array([10])])
        assert_raises(IndexError, lambda: assign(a.flat, np.array([10]), 5))

    def test_mapping(self):
        "cases from mapping.c"

        def assign(obj, ind, val):
            obj[ind] = val

        a = np.zeros((0, 10))
        assert_raises(IndexError, lambda: a[12])

        a = np.zeros((3, 5))
        assert_raises(IndexError, lambda: a[(10, 20)])
        assert_raises(IndexError, lambda: assign(a, (10, 20), 1))
        a = np.zeros((3, 0))
        assert_raises(IndexError, lambda: a[(1, 0)])
        assert_raises(IndexError, lambda: assign(a, (1, 0), 1))

        a = np.zeros((10,))
        assert_raises(IndexError, lambda: assign(a, 10, 1))
        a = np.zeros((0,))
        assert_raises(IndexError, lambda: assign(a, 10, 1))

        a = np.zeros((3, 5))
        assert_raises(IndexError, lambda: a[(1, [1, 20])])
        assert_raises(IndexError, lambda: assign(a, (1, [1, 20]), 1))
        a = np.zeros((3, 0))
        assert_raises(IndexError, lambda: a[(1, [0, 1])])
        assert_raises(IndexError, lambda: assign(a, (1, [0, 1]), 1))

    def test_methods(self):
        "cases from methods.c"

        a = np.zeros((3, 3))
        assert_raises(IndexError, lambda: a.item(100))
        assert_raises(IndexError, lambda: a.itemset(100, 1))
        a = np.zeros((0, 3))
        assert_raises(IndexError, lambda: a.item(100))
        assert_raises(IndexError, lambda: a.itemset(100, 1))

if __name__ == "__main__":
    run_module_suite()

Directory Contents

Dirs: 2 × Files: 35

Name Size Perms Modified Actions
data DIR
- drwxr-xr-x 2023-05-13 02:18:14
Edit Download
- drwxr-xr-x 2023-05-13 02:18:14
Edit Download
1.97 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
18.46 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
9.98 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
90.36 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
25.16 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
18.36 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
25.59 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
38.67 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
1.55 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
5.64 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
11.16 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
4.50 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
18.21 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
4.82 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
46.84 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
3.58 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
5.83 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
1014 B lrw-r--r-- 2023-04-24 19:30:09
Edit Download
6.91 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
28.87 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
254.69 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
105.75 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
98.49 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
14.27 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
7.90 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
15.27 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
79.31 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
771 B lrw-r--r-- 2023-04-24 19:30:09
Edit Download
24.45 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
917 B lrw-r--r-- 2023-04-24 19:30:09
Edit Download
18.11 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
53.70 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
96.47 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
19.34 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download
13.90 KB lrw-r--r-- 2023-04-24 19:30:09
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).