1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00
v/vlib/v/tests/c_array_test.v

27 lines
630 B
V

import arrays
#insert "@VEXEROOT/vlib/v/tests/c_array_test.c"
fn C.gen_c_array(size int) voidptr
fn C.gen_c_int_array(size int) voidptr
fn test_carray_to_varray() {
size := 10
mut c_array := C.gen_c_array(size)
v_u8_array := unsafe { arrays.carray_to_varray<u8>(c_array, size) }
unsafe { C.free(c_array) }
assert v_u8_array.len == size
for i, elem in v_u8_array {
assert elem == i
}
c_int_array := C.gen_c_int_array(size)
v_int_array := unsafe { arrays.carray_to_varray<int>(c_int_array, size) }
unsafe { C.free(c_int_array) }
assert v_int_array.len == size
for i, elem in v_int_array {
assert elem == i
}
}