|
| 1 | +from typing import Any, assert_type |
| 2 | + |
| 3 | +import numpy as np |
| 4 | +import numpy.typing as npt |
| 5 | + |
| 6 | +from scipy.linalg import clarkson_woodruff_transform |
| 7 | +from scipy.sparse import csc_matrix, sparray, spmatrix |
| 8 | + |
| 9 | +like_bool_2d: list[list[bool]] |
| 10 | +like_i64_2d: list[list[int]] |
| 11 | +like_f64_2d: list[list[float]] |
| 12 | +like_c128_2d: list[list[complex]] |
| 13 | + |
| 14 | +arr_any: npt.NDArray[Any] |
| 15 | +arr_i8: npt.NDArray[np.int8] |
| 16 | +arr_f32: npt.NDArray[np.float32] |
| 17 | +arr_f80: npt.NDArray[np.longdouble] |
| 18 | +arr_c64: npt.NDArray[np.complex64] |
| 19 | +arr_c160: npt.NDArray[np.clongdouble] |
| 20 | + |
| 21 | +sparse_any: spmatrix[Any] | sparray[Any] |
| 22 | +sparse_i8: spmatrix[np.int8] | sparray[np.int8] |
| 23 | +sparse_f32: spmatrix[np.float32] | sparray[np.float32] |
| 24 | +sparse_f80: spmatrix[np.longdouble] | sparray[np.longdouble] |
| 25 | +sparse_c64: spmatrix[np.complex64] | sparray[np.complex64] |
| 26 | +sparse_c160: spmatrix[np.clongdouble] | sparray[np.clongdouble] |
| 27 | + |
| 28 | +### |
| 29 | + |
| 30 | +assert_type(clarkson_woodruff_transform(like_bool_2d, 2), npt.NDArray[np.int_]) |
| 31 | +assert_type(clarkson_woodruff_transform(like_i64_2d, 2), npt.NDArray[np.int_]) |
| 32 | +assert_type(clarkson_woodruff_transform(like_f64_2d, 2), npt.NDArray[np.float64]) |
| 33 | +assert_type(clarkson_woodruff_transform(like_c128_2d, 2), npt.NDArray[np.complex128]) |
| 34 | + |
| 35 | +assert_type(clarkson_woodruff_transform(arr_any, 2), npt.NDArray[Any]) # type: ignore[assert-type] |
| 36 | +assert_type(clarkson_woodruff_transform(arr_i8, 2), npt.NDArray[np.int_]) |
| 37 | +assert_type(clarkson_woodruff_transform(arr_f32, 2), npt.NDArray[np.float64]) |
| 38 | +assert_type(clarkson_woodruff_transform(arr_c64, 2), npt.NDArray[np.complex128]) |
| 39 | +assert_type(clarkson_woodruff_transform(arr_f80, 2), npt.NDArray[np.longdouble]) |
| 40 | +assert_type(clarkson_woodruff_transform(arr_c160, 2), npt.NDArray[np.clongdouble]) |
| 41 | + |
| 42 | +assert_type(clarkson_woodruff_transform(sparse_any, 2), csc_matrix[Any]) |
| 43 | +assert_type(clarkson_woodruff_transform(sparse_i8, 2), csc_matrix[np.int_]) |
| 44 | +assert_type(clarkson_woodruff_transform(sparse_f32, 2), csc_matrix[np.float64]) |
| 45 | +assert_type(clarkson_woodruff_transform(sparse_c64, 2), csc_matrix[np.complex128]) |
| 46 | +assert_type(clarkson_woodruff_transform(sparse_f80, 2), csc_matrix[np.longdouble]) |
| 47 | +assert_type(clarkson_woodruff_transform(sparse_c160, 2), csc_matrix[np.clongdouble]) |
0 commit comments