From 0f12a1c4d3e1e6a8f8d40944b47de82b59d6656e Mon Sep 17 00:00:00 2001
From: Joris Vaillant <joris.vaillant@inria.fr>
Date: Tue, 30 Jan 2024 09:57:33 +0100
Subject: [PATCH] unittest: Fix boost_variant tests

---
 unittest/python/test_boost_variant.py | 28 ++++++++++++++++++---------
 1 file changed, 19 insertions(+), 9 deletions(-)

diff --git a/unittest/python/test_boost_variant.py b/unittest/python/test_boost_variant.py
index 0e1d283a..023b940b 100644
--- a/unittest/python/test_boost_variant.py
+++ b/unittest/python/test_boost_variant.py
@@ -11,16 +11,26 @@ v2.v = "c"
 
 variant_holder = VariantHolder()
 
+# Test copy from variant alternative V1 to non initialized variant
 variant_holder.variant = v1
 assert isinstance(variant_holder.variant, V1)
-assert variant_holder.variant == v1.v
-variant_holder.variant = 100
-assert variant_holder.variant == 100
-assert v1 == 100
-v1 = 1000
-assert variant_holder.variant == 1000
-assert v1 == 1000
+assert variant_holder.variant.v == v1.v
 
+# variant_holder.variant is a copy of v1
+variant_holder.variant.v = 11
+assert v1.v != variant_holder.variant.v
+
+# Test variant_holder.variant return by reference
+# v1 reference variant_holder.variant
+v1 = variant_holder.variant
+variant_holder.variant.v = 100
+assert variant_holder.variant.v == 100
+assert v1.v == 100
+v1.v = 1000
+assert variant_holder.variant.v == 1000
+assert v1.v == 1000
+
+# Test with the second alternative type
 variant_holder.variant = v2
-assert isinstance(variant_holder.variant, V1)
-assert variant_holder.variant == v2.v
+assert isinstance(variant_holder.variant, V2)
+assert variant_holder.variant.v == v2.v
-- 
GitLab