v2 / vlib / builtin / reuse_test.v
17 lines · 16 sloc · 405 bytes · a5ece523e211184eace20b51396a21ffbf4b661e
Raw
1fn test_buf_to_str() {
2 s := 'abc'
3 aview := unsafe { reuse_string_as_data(s) }
4 dump(aview)
5 assert aview == [u8(97), 98, 99]
6 assert voidptr(aview.data) == voidptr(s.str)
7 assert aview.len == s.len
8}
9
10fn test_str_to_buf() {
11 a := [u8(88), 55, 77]
12 sview := unsafe { reuse_data_as_string(a) }
13 dump(sview)
14 assert sview == 'X7M'
15 assert voidptr(sview.str) == voidptr(a.data)
16 assert sview.len == a.len
17}
18