From ddac9504d93dcad490415f37334a55bfd398a2de Mon Sep 17 00:00:00 2001 From: Nopana_Eliyaan Date: Wed, 10 Sep 2025 10:13:37 +0200 Subject: [PATCH] add tests --- vlib/v/gen/native/tests/assign.vv | 13 ++++++++++- vlib/v/gen/native/tests/struct.vv | 37 +++++++++++++++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) diff --git a/vlib/v/gen/native/tests/assign.vv b/vlib/v/gen/native/tests/assign.vv index ea0e0c6b35..6c6e353d07 100644 --- a/vlib/v/gen/native/tests/assign.vv +++ b/vlib/v/gen/native/tests/assign.vv @@ -1,3 +1,5 @@ +const abc = 3 + fn main() { test_int() test_fp() @@ -26,7 +28,7 @@ fn test_plus_assign() { } fn test_int() { - a := 100 + mut a := 100 mut b := a b += b b += 50 @@ -46,6 +48,15 @@ fn test_int() { unsafe{*f = 5} assert *f == 5 assert e == 5 + + mut x := abc + assert x == 3 + + a = 16 + a >>>= 2 + a >>= 2 + a <<= 4 + assert a == 16 } fn test_fp() { diff --git a/vlib/v/gen/native/tests/struct.vv b/vlib/v/gen/native/tests/struct.vv index 627fe6c877..3f9598a0fb 100644 --- a/vlib/v/gen/native/tests/struct.vv +++ b/vlib/v/gen/native/tests/struct.vv @@ -231,10 +231,47 @@ fn nested_test() { assert x4.b.a == 3 } +struct Foo { +mut: + mantissa u64 + b bool +} + +fn field_assign_test() { + mut b := Foo{1, true} + b.mantissa += 1 + b.mantissa -= 1 + assert b.mantissa == 1 + b.mantissa |= 2 + assert b.mantissa == 3 + b.mantissa &= 1 + assert b.mantissa == 1 + b.mantissa ^= 5 + assert b.mantissa == 4 + b.mantissa %= 3 + assert b.mantissa == 1 + b.mantissa *= 10 + b.mantissa /= 10 + assert b.mantissa == 1 + b.mantissa <<= 4 + b.mantissa >>>= 2 + b.mantissa >>= 2 + assert b.mantissa == 1 + b.b &&= true + assert b.b == true + b.b &&= false + assert b.b == false + b.b ||= true + assert b.b == true + b.b ||= false + assert b.b == true +} + fn main() { struct_test() return_test() alias_test() assign_fields() nested_test() + field_assign_test() }