v2 / vlib / v / tests / generics / generics_union_dump_test.v
28 lines · 26 sloc · 525 bytes · 6488041a749df9762348d019c4223908c476f2e2
Raw
1union Convertor[T] {
2 value T
3 bytes [8]u8
4}
5
6fn test_conversion_works() {
7 a := Convertor[i64]{
8 value: 21474837714
9 }
10 $if little_endian {
11 assert unsafe { a.bytes } == [u8(210), 4, 0, 0, 5, 0, 0, 0]!
12 }
13}
14
15fn test_dumping_of_a_generic_union_value() {
16 dump(Convertor[u8]{
17 bytes: [u8(210), 4, 0, 0, 5, 0, 0, 0]!
18 })
19 dump(Convertor[i16]{
20 bytes: [u8(210), 4, 0, 0, 5, 0, 0, 0]!
21 })
22 dump(Convertor[int]{
23 bytes: [u8(210), 4, 0, 0, 5, 0, 0, 0]!
24 })
25 dump(Convertor[i64]{
26 bytes: [u8(210), 4, 0, 0, 5, 0, 0, 0]!
27 })
28}
29