diff options
author | Bas van Beek <b.f.van.beek@vu.nl> | 2022-01-28 14:06:50 +0100 |
---|---|---|
committer | Bas van Beek <43369155+BvB93@users.noreply.github.com> | 2022-02-09 16:04:12 +0100 |
commit | 4ab7bae7715d2b23309ddf7be76e23daadecf851 (patch) | |
tree | a41b09c89373c10e109f1962e97df71d720d9885 | |
parent | 0045296d24e8389fae24acae110744978bfe7374 (diff) | |
download | numpy-4ab7bae7715d2b23309ddf7be76e23daadecf851.tar.gz |
TST: Add more typing tests for `np.core.fromnumeric`
-rw-r--r-- | numpy/typing/tests/data/fail/fromnumeric.pyi | 49 | ||||
-rw-r--r-- | numpy/typing/tests/data/reveal/fromnumeric.pyi | 86 |
2 files changed, 77 insertions, 58 deletions
diff --git a/numpy/typing/tests/data/fail/fromnumeric.pyi b/numpy/typing/tests/data/fail/fromnumeric.pyi index 84c95639d..5f292999a 100644 --- a/numpy/typing/tests/data/fail/fromnumeric.pyi +++ b/numpy/typing/tests/data/fail/fromnumeric.pyi @@ -7,10 +7,10 @@ A.setflags(write=False) a = np.bool_(True) -np.take(a, None) # E: incompatible type -np.take(a, axis=1.0) # E: incompatible type -np.take(A, out=1) # E: incompatible type -np.take(A, mode="bob") # E: incompatible type +np.take(a, None) # E: No overload variant +np.take(a, axis=1.0) # E: No overload variant +np.take(A, out=1) # E: No overload variant +np.take(A, mode="bob") # E: No overload variant np.reshape(a, None) # E: No overload variant np.reshape(A, 1, order="bob") # E: No overload variant @@ -80,9 +80,9 @@ np.diagonal(A, offset=None) # E: No overload variant np.diagonal(A, axis1="bob") # E: No overload variant np.diagonal(A, axis2=[]) # E: No overload variant -np.trace(A, offset=None) # E: Argument "offset" to "trace" has incompatible type -np.trace(A, axis1="bob") # E: Argument "axis1" to "trace" has incompatible type -np.trace(A, axis2=[]) # E: Argument "axis2" to "trace" has incompatible type +np.trace(A, offset=None) # E: No overload variant +np.trace(A, axis1="bob") # E: No overload variant +np.trace(A, axis2=[]) # E: No overload variant np.ravel(a, order="bob") # E: No overload variant @@ -91,11 +91,10 @@ np.compress( # E: No overload variant ) np.clip(a, 1, 2, out=1) # E: No overload variant of "clip" matches argument type -np.clip(1, None, None) # E: No overload variant of "clip" matches argument type -np.sum(a, axis=1.0) # E: incompatible type -np.sum(a, keepdims=1.0) # E: incompatible type -np.sum(a, initial=[1]) # E: incompatible type +np.sum(a, axis=1.0) # E: No overload variant +np.sum(a, keepdims=1.0) # E: No overload variant +np.sum(a, initial=[1]) # E: No overload variant np.all(a, axis=1.0) # E: No overload variant np.all(a, keepdims=1.0) # E: No overload variant @@ -105,24 +104,24 @@ np.any(a, axis=1.0) # E: No overload variant np.any(a, keepdims=1.0) # E: No overload variant np.any(a, out=1.0) # E: No overload variant -np.cumsum(a, axis=1.0) # E: incompatible type -np.cumsum(a, dtype=1.0) # E: incompatible type -np.cumsum(a, out=1.0) # E: incompatible type +np.cumsum(a, axis=1.0) # E: No overload variant +np.cumsum(a, dtype=1.0) # E: No overload variant +np.cumsum(a, out=1.0) # E: No overload variant -np.ptp(a, axis=1.0) # E: incompatible type -np.ptp(a, keepdims=1.0) # E: incompatible type -np.ptp(a, out=1.0) # E: incompatible type +np.ptp(a, axis=1.0) # E: No overload variant +np.ptp(a, keepdims=1.0) # E: No overload variant +np.ptp(a, out=1.0) # E: No overload variant -np.amax(a, axis=1.0) # E: incompatible type -np.amax(a, keepdims=1.0) # E: incompatible type -np.amax(a, out=1.0) # E: incompatible type -np.amax(a, initial=[1.0]) # E: incompatible type +np.amax(a, axis=1.0) # E: No overload variant +np.amax(a, keepdims=1.0) # E: No overload variant +np.amax(a, out=1.0) # E: No overload variant +np.amax(a, initial=[1.0]) # E: No overload variant np.amax(a, where=[1.0]) # E: incompatible type -np.amin(a, axis=1.0) # E: incompatible type -np.amin(a, keepdims=1.0) # E: incompatible type -np.amin(a, out=1.0) # E: incompatible type -np.amin(a, initial=[1.0]) # E: incompatible type +np.amin(a, axis=1.0) # E: No overload variant +np.amin(a, keepdims=1.0) # E: No overload variant +np.amin(a, out=1.0) # E: No overload variant +np.amin(a, initial=[1.0]) # E: No overload variant np.amin(a, where=[1.0]) # E: incompatible type np.prod(a, axis=1.0) # E: incompatible type diff --git a/numpy/typing/tests/data/reveal/fromnumeric.pyi b/numpy/typing/tests/data/reveal/fromnumeric.pyi index bec23508d..f9f0ff625 100644 --- a/numpy/typing/tests/data/reveal/fromnumeric.pyi +++ b/numpy/typing/tests/data/reveal/fromnumeric.pyi @@ -3,21 +3,27 @@ import numpy as np import numpy.typing as npt +class NDArraySubclass(npt.NDArray[np.complex128]): + ... + AR_b: npt.NDArray[np.bool_] AR_f4: npt.NDArray[np.float32] AR_i8: npt.NDArray[np.int64] +AR_subclass: NDArraySubclass b: np.bool_ f4: np.float32 f: float -reveal_type(np.take(b, 0)) # E: Any -reveal_type(np.take(f4, 0)) # E: Any +reveal_type(np.take(b, 0)) # E: bool_ +reveal_type(np.take(f4, 0)) # E: {float32} reveal_type(np.take(f, 0)) # E: Any -reveal_type(np.take(AR_b, 0)) # E: Any -reveal_type(np.take(AR_f4, 0)) # E: Any -reveal_type(np.take(AR_b, [0])) # E: Any -reveal_type(np.take(AR_f4, [0])) # E: Any +reveal_type(np.take(AR_b, 0)) # E: bool_ +reveal_type(np.take(AR_f4, 0)) # E: {float32} +reveal_type(np.take(AR_b, [0])) # E: ndarray[Any, dtype[bool_]] +reveal_type(np.take(AR_f4, [0])) # E: ndarray[Any, dtype[{float32}]] +reveal_type(np.take([1], [0])) # E: ndarray[Any, dtype[Any]] +reveal_type(np.take(AR_f4, [0], out=AR_subclass)) # E: NDArraySubclass reveal_type(np.reshape(b, 1)) # E: ndarray[Any, dtype[bool_]] reveal_type(np.reshape(f4, 1)) # E: ndarray[Any, dtype[{float32}]] @@ -71,11 +77,13 @@ reveal_type(np.argmax(AR_b)) # E: {intp} reveal_type(np.argmax(AR_f4)) # E: {intp} reveal_type(np.argmax(AR_b, axis=0)) # E: Any reveal_type(np.argmax(AR_f4, axis=0)) # E: Any +reveal_type(np.argmax(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.argmin(AR_b)) # E: {intp} reveal_type(np.argmin(AR_f4)) # E: {intp} reveal_type(np.argmin(AR_b, axis=0)) # E: Any reveal_type(np.argmin(AR_f4, axis=0)) # E: Any +reveal_type(np.argmin(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.searchsorted(AR_b[0], 0)) # E: {intp} reveal_type(np.searchsorted(AR_f4[0], 0)) # E: {intp} @@ -99,6 +107,7 @@ reveal_type(np.diagonal(AR_f4)) # E: ndarray[Any, dtype[{float32}]] reveal_type(np.trace(AR_b)) # E: Any reveal_type(np.trace(AR_f4)) # E: Any +reveal_type(np.trace(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.ravel(b)) # E: ndarray[Any, dtype[bool_]] reveal_type(np.ravel(f4)) # E: ndarray[Any, dtype[{float32}]] @@ -124,19 +133,22 @@ reveal_type(np.compress([True], f)) # E: ndarray[Any, dtype[Any]] reveal_type(np.compress([True], AR_b)) # E: ndarray[Any, dtype[bool_]] reveal_type(np.compress([True], AR_f4)) # E: ndarray[Any, dtype[{float32}]] -reveal_type(np.clip(b, 0, 1.0)) # E: Any -reveal_type(np.clip(f4, -1, 1)) # E: Any +reveal_type(np.clip(b, 0, 1.0)) # E: bool_ +reveal_type(np.clip(f4, -1, 1)) # E: {float32} reveal_type(np.clip(f, 0, 1)) # E: Any -reveal_type(np.clip(AR_b, 0, 1)) # E: Any -reveal_type(np.clip(AR_f4, 0, 1)) # E: Any +reveal_type(np.clip(AR_b, 0, 1)) # E: ndarray[Any, dtype[bool_]] +reveal_type(np.clip(AR_f4, 0, 1)) # E: ndarray[Any, dtype[{float32}]] +reveal_type(np.clip([0], 0, 1)) # E: ndarray[Any, dtype[Any]] +reveal_type(np.clip(AR_b, 0, 1, out=AR_subclass)) # E: NDArraySubclass -reveal_type(np.sum(b)) # E: Any -reveal_type(np.sum(f4)) # E: Any +reveal_type(np.sum(b)) # E: bool_ +reveal_type(np.sum(f4)) # E: {float32} reveal_type(np.sum(f)) # E: Any -reveal_type(np.sum(AR_b)) # E: Any -reveal_type(np.sum(AR_f4)) # E: Any +reveal_type(np.sum(AR_b)) # E: bool_ +reveal_type(np.sum(AR_f4)) # E: {float32} reveal_type(np.sum(AR_b, axis=0)) # E: Any reveal_type(np.sum(AR_f4, axis=0)) # E: Any +reveal_type(np.sum(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.all(b)) # E: bool_ reveal_type(np.all(f4)) # E: bool_ @@ -147,6 +159,7 @@ reveal_type(np.all(AR_b, axis=0)) # E: Any reveal_type(np.all(AR_f4, axis=0)) # E: Any reveal_type(np.all(AR_b, keepdims=True)) # E: Any reveal_type(np.all(AR_f4, keepdims=True)) # E: Any +reveal_type(np.all(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.any(b)) # E: bool_ reveal_type(np.any(f4)) # E: bool_ @@ -157,42 +170,49 @@ reveal_type(np.any(AR_b, axis=0)) # E: Any reveal_type(np.any(AR_f4, axis=0)) # E: Any reveal_type(np.any(AR_b, keepdims=True)) # E: Any reveal_type(np.any(AR_f4, keepdims=True)) # E: Any - -reveal_type(np.cumsum(b)) # E: ndarray[Any, Any] -reveal_type(np.cumsum(f4)) # E: ndarray[Any, Any] -reveal_type(np.cumsum(f)) # E: ndarray[Any, Any] -reveal_type(np.cumsum(AR_b)) # E: ndarray[Any, Any] -reveal_type(np.cumsum(AR_f4)) # E: ndarray[Any, Any] - -reveal_type(np.ptp(b)) # E: Any -reveal_type(np.ptp(f4)) # E: Any +reveal_type(np.any(AR_f4, out=AR_subclass)) # E: NDArraySubclass + +reveal_type(np.cumsum(b)) # E: ndarray[Any, dtype[bool_]] +reveal_type(np.cumsum(f4)) # E: ndarray[Any, dtype[{float32}]] +reveal_type(np.cumsum(f)) # E: ndarray[Any, dtype[Any]] +reveal_type(np.cumsum(AR_b)) # E: ndarray[Any, dtype[bool_]] +reveal_type(np.cumsum(AR_f4)) # E: ndarray[Any, dtype[{float32}]] +reveal_type(np.cumsum(f, dtype=float)) # E: ndarray[Any, dtype[Any]] +reveal_type(np.cumsum(f, dtype=np.float64)) # E: ndarray[Any, dtype[{float64}]] +reveal_type(np.cumsum(AR_f4, out=AR_subclass)) # E: NDArraySubclass + +reveal_type(np.ptp(b)) # E: bool_ +reveal_type(np.ptp(f4)) # E: {float32} reveal_type(np.ptp(f)) # E: Any -reveal_type(np.ptp(AR_b)) # E: Any -reveal_type(np.ptp(AR_f4)) # E: Any +reveal_type(np.ptp(AR_b)) # E: bool_ +reveal_type(np.ptp(AR_f4)) # E: {float32} reveal_type(np.ptp(AR_b, axis=0)) # E: Any reveal_type(np.ptp(AR_f4, axis=0)) # E: Any reveal_type(np.ptp(AR_b, keepdims=True)) # E: Any reveal_type(np.ptp(AR_f4, keepdims=True)) # E: Any +reveal_type(np.ptp(AR_f4, out=AR_subclass)) # E: NDArraySubclass -reveal_type(np.amax(b)) # E: Any -reveal_type(np.amax(f4)) # E: Any +reveal_type(np.amax(b)) # E: bool_ +reveal_type(np.amax(f4)) # E: {float32} reveal_type(np.amax(f)) # E: Any -reveal_type(np.amax(AR_b)) # E: Any -reveal_type(np.amax(AR_f4)) # E: Any +reveal_type(np.amax(AR_b)) # E: bool_ +reveal_type(np.amax(AR_f4)) # E: {float32} reveal_type(np.amax(AR_b, axis=0)) # E: Any reveal_type(np.amax(AR_f4, axis=0)) # E: Any reveal_type(np.amax(AR_b, keepdims=True)) # E: Any reveal_type(np.amax(AR_f4, keepdims=True)) # E: Any +reveal_type(np.amax(AR_f4, out=AR_subclass)) # E: NDArraySubclass -reveal_type(np.amin(b)) # E: Any -reveal_type(np.amin(f4)) # E: Any +reveal_type(np.amin(b)) # E: bool_ +reveal_type(np.amin(f4)) # E: {float32} reveal_type(np.amin(f)) # E: Any -reveal_type(np.amin(AR_b)) # E: Any -reveal_type(np.amin(AR_f4)) # E: Any +reveal_type(np.amin(AR_b)) # E: bool_ +reveal_type(np.amin(AR_f4)) # E: {float32} reveal_type(np.amin(AR_b, axis=0)) # E: Any reveal_type(np.amin(AR_f4, axis=0)) # E: Any reveal_type(np.amin(AR_b, keepdims=True)) # E: Any reveal_type(np.amin(AR_f4, keepdims=True)) # E: Any +reveal_type(np.amin(AR_f4, out=AR_subclass)) # E: NDArraySubclass reveal_type(np.prod(b)) # E: Any reveal_type(np.prod(f4)) # E: Any |