copapy/tests/test_coparun_module.py

38 lines
688 B
Python
Raw Normal View History

from copapy import const, Target
2025-10-04 21:20:25 +00:00
from pytest import approx
2025-10-07 21:20:43 +00:00
2025-10-04 21:20:25 +00:00
def function(c1, c2):
i1 = c1 * 3.3 + 5
i2 = c2 * 5 + c1
r1 = i1 + i2 * 55 / 4
r2 = 4 * i2 + 5
2025-10-07 21:20:43 +00:00
return i1, i2, r1, r2
def test_compile():
c1 = const(4)
2025-10-04 21:20:25 +00:00
c2 = const(2)
2025-10-07 21:20:43 +00:00
2025-10-04 21:20:25 +00:00
ret = function(c1, c2)
tg = Target()
2025-10-05 21:09:43 +00:00
print('* compile and copy ...')
2025-10-04 21:20:25 +00:00
tg.compile(ret)
2025-10-05 21:09:43 +00:00
#time.sleep(5)
print('* run and copy ...')
2025-10-07 20:56:04 +00:00
tg.run()
2025-10-05 21:09:43 +00:00
#print('* finished')
2025-10-04 21:20:25 +00:00
ret_ref = function(4, 2)
for test, ref, name in zip(ret, ret_ref, ['i1', 'i2', 'r1', 'r2']):
2025-10-05 21:09:43 +00:00
print('+', name)
2025-10-04 21:20:25 +00:00
assert tg.read_value(test) == approx(ref, 1e-5), name
if __name__ == "__main__":
test_compile()