<%inherit file="base.tpl.cpp"/>\
<%namespace name="tests" file="opivv_opivx_test.tpl.cpp"/>
<%
import numpy as np
# Generate test vectors using python
N = 5
ii32 = np.iinfo(np.int32)
src1_data =  np.random.random_integers(ii32.min, ii32.max, N).astype(np.int32)
src2_data = np.random.random_integers(ii32.min, ii32.max, N).astype(np.int32)
# Don't allow divide by zero
src2_data[src2_data==0] = 1
ref_vv_data = np.divide(src1_data,src2_data).astype(np.int32)
rs1 = np.int32(np.random.randint(ii32.min, ii32.max))
# Don't allow divide by zero
if rs1 == 0:
  rs1 = 1
ref_vx_data = np.divide(src1_data, rs1).astype(np.int32)

# Convert test vectors to strings for array initialization
src1 = parent.module.to_carr_str(src1_data)
src2 = parent.module.to_carr_str(src2_data)
ref_vv = parent.module.to_carr_str(ref_vv_data)
ref_vx = parent.module.to_carr_str(ref_vx_data)
%>\
${tests.test_opivv_opivx("int32_t", op, src1, src2, rs1, ref_vv, ref_vx)}
