提交 59919467 authored 作者: Gijs van Tulder's avatar Gijs van Tulder

Tests for min and argmin with uint* and bool.

上级 a7fb0554
......@@ -3401,6 +3401,24 @@ class T_argmin_argmax(unittest.TestCase):
except TypeError:
pass
def test_uint(self):
for dtype in ('uint8', 'uint16', 'uint32', 'uint64'):
itype = np.iinfo(dtype)
data = np.array([itype.min + 3, itype.min, itype.max - 5, itype.max], dtype)
n = as_tensor_variable(data)
i = eval_outputs(argmin(n))
self.assertEqual(i, 1)
i = eval_outputs(argmax(n))
self.assertEqual(i, 3)
def test_bool(self):
data = np.array([True, False], 'bool')
n = as_tensor_variable(data)
i = eval_outputs(argmin(n))
self.assertEqual(i, 1)
i = eval_outputs(argmax(n))
self.assertEqual(i, 0)
class T_min_max(unittest.TestCase):
def setUp(self):
......@@ -3586,6 +3604,24 @@ class T_min_max(unittest.TestCase):
# check_grad_max(data, eval_outputs(grad(max_and_argmax(n,
# axis=1)[0], n)),axis=1)
def test_uint(self):
for dtype in ('uint8', 'uint16', 'uint32', 'uint64'):
itype = np.iinfo(dtype)
data = np.array([itype.min + 3, itype.min, itype.max - 5, itype.max], dtype)
n = as_tensor_variable(data)
i = eval_outputs(min(n))
self.assertEqual(i, itype.min)
i = eval_outputs(max(n))
self.assertEqual(i, itype.max)
def test_bool(self):
data = np.array([True, False], 'bool')
n = as_tensor_variable(data)
i = eval_outputs(min(n))
self.assertEqual(i, False)
i = eval_outputs(max(n))
self.assertEqual(i, True)
def test_basic_allclose():
# This was raised by a user in https://github.com/Theano/Theano/issues/2975
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论