Skip to content

Commit a8699e2

Browse files
author
Bas van Beek
committed
TST: Add typing tests for __array_prepare__ and __array_wrap__
1 parent 6a8dc45 commit a8699e2

File tree

1 file changed

+9
-5
lines changed

1 file changed

+9
-5
lines changed

numpy/typing/tests/data/reveal/ndarray_misc.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,15 @@
1111
from typing import Any
1212

1313
import numpy as np
14+
from numpy.typing import NDArray
1415

15-
class SubClass(np.ndarray): ...
16+
class SubClass(NDArray[np.object_]): ...
1617

1718
f8: np.float64
1819
B: SubClass
19-
AR_f8: np.ndarray[Any, np.dtype[np.float64]]
20-
AR_i8: np.ndarray[Any, np.dtype[np.int64]]
21-
AR_U: np.ndarray[Any, np.dtype[np.str_]]
20+
AR_f8: NDArray[np.float64]
21+
AR_i8: NDArray[np.int64]
22+
AR_U: NDArray[np.str_]
2223

2324
ctypes_obj = AR_f8.ctypes
2425

@@ -126,7 +127,7 @@ class SubClass(np.ndarray): ...
126127

127128
reveal_type(f8.repeat(1)) # E: numpy.ndarray[Any, numpy.dtype[{float64}]]
128129
reveal_type(AR_f8.repeat(1)) # E: numpy.ndarray[Any, numpy.dtype[{float64}]]
129-
reveal_type(B.repeat(1)) # E: numpy.ndarray[Any, Any]
130+
reveal_type(B.repeat(1)) # E: numpy.ndarray[Any, numpy.dtype[numpy.object_]]
130131

131132
reveal_type(f8.std()) # E: Any
132133
reveal_type(AR_f8.std()) # E: Any
@@ -189,3 +190,6 @@ class SubClass(np.ndarray): ...
189190
reveal_type(complex(AR_f8)) # E: complex
190191

191192
reveal_type(operator.index(AR_i8)) # E: int
193+
194+
reveal_type(AR_f8.__array_prepare__(B)) # E: numpy.ndarray[Any, numpy.dtype[numpy.object_]]
195+
reveal_type(AR_f8.__array_wrap__(B)) # E: numpy.ndarray[Any, numpy.dtype[numpy.object_]]

0 commit comments

Comments
 (0)