| 7 | using namespace mgb; |
| 8 | |
| 9 | TEST(TestNumRangeChecker, Simple) { |
| 10 | HostTensorGenerator<> gen; |
| 11 | auto graph = ComputingGraph::make(); |
| 12 | NumRangeChecker checker{graph.get(), 1e30f}; |
| 13 | auto av = gen({3}), bv = gen({3}); |
| 14 | auto a = opr::Host2DeviceCopy::make(*graph, av), |
| 15 | b = opr::Host2DeviceCopy::make(*graph, bv), c = a / b; |
| 16 | auto func = graph->compile({{c, {}}}); |
| 17 | auto pb = bv->ptr<float>(); |
| 18 | pb[0] = 2; |
| 19 | pb[1] = -1; |
| 20 | pb[2] = 3; |
| 21 | func->execute(); |
| 22 | pb[1] = 0; |
| 23 | ASSERT_THROW(func->execute(), NumRangeChecker::Error); |
| 24 | } |
| 25 | |
| 26 | TEST(TestNumRangeChecker, MultiDType) { |
| 27 | HostTensorGenerator<dtype::Int32> gen; |
nothing calls this directly
no test coverage detected