diff options
| author | Bas van Beek <b.f.van.beek@vu.nl> | 2020-09-01 16:03:49 +0200 |
|---|---|---|
| committer | Bas van Beek <b.f.van.beek@vu.nl> | 2020-09-01 16:03:49 +0200 |
| commit | 4d931c5a158f8c98eef87d2d35b4e91aa93d9a69 (patch) | |
| tree | f77352b4a682af1598b0f851ec0bcb0d410ed78c /numpy/tests | |
| parent | e171b2b1063ba823ff85d6a6b259398e52a17de6 (diff) | |
| download | numpy-4d931c5a158f8c98eef87d2d35b4e91aa93d9a69.tar.gz | |
TST: Add tests for the new `generic` constructors
Diffstat (limited to 'numpy/tests')
| -rw-r--r-- | numpy/tests/typing/pass/scalars.py | 31 |
1 files changed, 28 insertions, 3 deletions
diff --git a/numpy/tests/typing/pass/scalars.py b/numpy/tests/typing/pass/scalars.py index 1c7ace282..027a4fa50 100644 --- a/numpy/tests/typing/pass/scalars.py +++ b/numpy/tests/typing/pass/scalars.py @@ -1,27 +1,37 @@ +import datetime as dt import numpy as np # Construction +class D: + def __index__(self) -> int: + return 0 + + class C: - def __complex__(self): + def __complex__(self) -> complex: return 3j class B: - def __int__(self): + def __int__(self) -> int: return 4 class A: - def __float__(self): + def __float__(self) -> float: return 4.0 np.complex64(3j) +np.complex64(A()) np.complex64(C()) np.complex128(3j) np.complex128(C()) np.complex128(None) +np.complex64(D()) +np.complex64("1.2") +np.complex128(b"2j") np.int8(4) np.int16(3.4) @@ -29,11 +39,17 @@ np.int32(4) np.int64(-1) np.uint8(B()) np.uint32() +np.uint64(D()) +np.int32("1") +np.int64(b"2") np.float16(A()) np.float32(16) np.float64(3.0) np.float64(None) +np.float32("1") +np.float16(b"2.5") +np.float32(D()) np.bytes_(b"hello") np.bytes_("hello", 'utf-8') @@ -66,14 +82,23 @@ np.uint64().shape # Time structures np.datetime64() np.datetime64(0, "D") +np.datetime64(0, b"D") np.datetime64("2019") +np.datetime64(b"2019") np.datetime64("2019", "D") +np.datetime64(np.datetime64()) +np.datetime64(dt.datetime(2000, 5, 3)) np.datetime64(None) np.datetime64(None, "D") np.timedelta64() np.timedelta64(0) np.timedelta64(0, "D") +np.timedelta64(0, b"D") +np.timedelta64("3") +np.timedelta64(b"5") +np.timedelta64(np.timedelta64(2)) +np.timedelta64(dt.timedelta(2)) np.timedelta64(None) np.timedelta64(None, "D") |
