提交 5ef9f830 authored 作者: Brandon T. Willard's avatar Brandon T. Willard

Raise ValueErrors instead of AttributeErrors for bad Apply.default_value

上级 31f3aedf
......@@ -2799,11 +2799,11 @@ class TestAsTensorVariable:
as_tensor_variable(good_apply_var)
bad_apply_var = ApplyDefaultTestOp(-1).make_node(self.x)
with pytest.raises(AttributeError):
with pytest.raises(ValueError):
_ = as_tensor_variable(bad_apply_var)
bad_apply_var = ApplyDefaultTestOp(2).make_node(self.x)
with pytest.raises(AttributeError):
with pytest.raises(ValueError):
_ = as_tensor_variable(bad_apply_var)
def test_list(self):
......@@ -2816,7 +2816,7 @@ class TestAsTensorVariable:
_ = as_tensor_variable(y)
bad_apply_var = ApplyDefaultTestOp([0, 1]).make_node(self.x)
with pytest.raises(AttributeError):
with pytest.raises(ValueError):
as_tensor_variable(bad_apply_var)
def test_strip_leading_broadcastable(self):
......
......@@ -165,13 +165,13 @@ class Apply(Node):
if len(self.outputs) == 1:
return self.outputs[0]
else:
raise AttributeError(
raise ValueError(
"%s.default_output should be an output index." % self.op
)
elif not isinstance(do, integer_types):
raise AttributeError("%s.default_output should be an int or long" % self.op)
raise ValueError("%s.default_output should be an int or long" % self.op)
elif do < 0 or do >= len(self.outputs):
raise AttributeError("%s.default_output is out of range." % self.op)
raise ValueError("%s.default_output is out of range." % self.op)
return self.outputs[do]
out = property(default_output, doc="alias for self.default_output()")
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论