Skip to content

Commit 3baa622

Browse files
Added test for special values of floating points in dpt.full
Test is inspired by example from gh-1314
1 parent ccbb324 commit 3baa622

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

dpctl/tests/test_usm_ndarray_ctor.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1442,6 +1442,30 @@ def test_full_dtype_inference():
14421442
assert np.issubdtype(dpt.full(10, 0.3 - 2j, dtype=rdt).dtype, np.floating)
14431443

14441444

1445+
@pytest.mark.parametrize("dt", ["f2", "f4", "f8"])
1446+
def test_full_special_fp(dt):
1447+
"""See gh-1314"""
1448+
q = get_queue_or_skip()
1449+
skip_if_dtype_not_supported(dt, q)
1450+
1451+
ar = dpt.full(10, fill_value=dpt.nan)
1452+
err_msg = f"Failed for fill_value=dpt.nan and dtype {dt}"
1453+
assert dpt.isnan(ar[0]), err_msg
1454+
1455+
ar = dpt.full(10, fill_value=dpt.inf)
1456+
err_msg = f"Failed for fill_value=dpt.inf and dtype {dt}"
1457+
assert dpt.isinf(ar[0]) and dpt.greater(ar[0], 0), err_msg
1458+
1459+
ar = dpt.full(10, fill_value=-dpt.inf)
1460+
err_msg = f"Failed for fill_value=-dpt.inf and dtype {dt}"
1461+
assert dpt.isinf(ar[0]) and dpt.less(ar[0], 0), err_msg
1462+
1463+
ar = dpt.full(10, fill_value=dpt.pi)
1464+
err_msg = f"Failed for fill_value=dpt.pi and dtype {dt}"
1465+
check = abs(float(ar[0]) - dpt.pi) < 16 * dpt.finfo(ar.dtype).eps
1466+
assert check, err_msg
1467+
1468+
14451469
def test_full_fill_array():
14461470
q = get_queue_or_skip()
14471471

0 commit comments

Comments
 (0)