提交 1dc5b06e authored 作者: Brandon T. Willard's avatar Brandon T. Willard 提交者: Brandon T. Willard

Work around Numba coverage issue by also evaluating results in pure Python

上级 f948e29b
from functools import partial
from unittest import mock
import numpy as np
import pytest
......@@ -57,6 +58,24 @@ def compare_numba_and_py(
)
numba_res = aesara_numba_fn(*inputs)
# We evaluate the Numba implementation in pure Python for coverage
# purposes.
def py_tuple_setitem(t, i, v):
l = list(t)
l[i] = v
return tuple(l)
with mock.patch("aesara.link.numba.dispatch.numba.njit", lambda x: x), mock.patch(
"aesara.link.numba.dispatch.numba.vectorize", lambda x: x
), mock.patch("aesara.link.numba.dispatch.tuple_setitem", py_tuple_setitem):
aesara_numba_fn = function(
fn_inputs,
fgraph.outputs,
mode=numba_mode,
accept_inplace=True,
)
_ = aesara_numba_fn(*inputs)
aesara_py_fn = function(
fn_inputs, fgraph.outputs, mode=py_mode, accept_inplace=True
)
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论