codekingpro/portable-devtools
114k
1from typing import assert_type
2
3import numpy as np
4
5f: float
6f8: np.float64
7c8: np.complex64
8c16: np.complex128
9
10i: int
11i8: np.int64
12u4: np.uint32
13
14finfo_f8: np.finfo[np.float64]
15iinfo_i8: np.iinfo[np.int64]
16
17assert_type(np.finfo(f), np.finfo[np.float64])
18assert_type(np.finfo(f8), np.finfo[np.float64])
19assert_type(np.finfo(c8), np.finfo[np.float32])
20assert_type(np.finfo(c16), np.finfo[np.float64])
21assert_type(np.finfo("f2"), np.finfo[np.float16])
22
23assert_type(finfo_f8.dtype, np.dtype[np.float64])
24assert_type(finfo_f8.bits, int)
25assert_type(finfo_f8.eps, np.float64)
26assert_type(finfo_f8.epsneg, np.float64)
27assert_type(finfo_f8.iexp, int)
28assert_type(finfo_f8.machep, int)
29assert_type(finfo_f8.max, np.float64)
30assert_type(finfo_f8.maxexp, int)
31assert_type(finfo_f8.min, np.float64)
32assert_type(finfo_f8.minexp, int)
33assert_type(finfo_f8.negep, int)
34assert_type(finfo_f8.nexp, int)
35assert_type(finfo_f8.nmant, int)
36assert_type(finfo_f8.precision, int)
37assert_type(finfo_f8.resolution, np.float64)
38assert_type(finfo_f8.tiny, np.float64)
39assert_type(finfo_f8.smallest_normal, np.float64)
40assert_type(finfo_f8.smallest_subnormal, np.float64)
41
42assert_type(np.iinfo(i), np.iinfo[np.int_])
43assert_type(np.iinfo(i8), np.iinfo[np.int64])
44assert_type(np.iinfo(u4), np.iinfo[np.uint32])
45assert_type(np.iinfo("i2"), np.iinfo[np.int16])
46assert_type(np.iinfo("u2"), np.iinfo[np.uint16])
47
48assert_type(iinfo_i8.dtype, np.dtype[np.int64])
49assert_type(iinfo_i8.kind, str)
50assert_type(iinfo_i8.bits, int)
51assert_type(iinfo_i8.key, str)
52assert_type(iinfo_i8.min, int)
53assert_type(iinfo_i8.max, int)
54 