diff --git a/src/newcrawler/converters.py b/src/newcrawler/converters.py
index a8723603376b527cfaf79329a0f44494e8f59139..1808b23e1675fc02215c99549e2d7a7124feb600 100644
--- a/src/newcrawler/converters.py
+++ b/src/newcrawler/converters.py
@@ -108,7 +108,6 @@ def handle_value(value: Union[dict, str], values: GeneralStore):
         propvalue = value
 
         # variables replacement:
-        # TODO: unit test missing
         propvalue = [replace_variables(i, values) for i in propvalue]
         
         return (propvalue, collection_mode)
diff --git a/unittests/test_converters.py b/unittests/test_converters.py
index ab67a5c94df8b3e3e541017fc0ac57cceb2fa2fd..587f390d347a3b597a4f16167a6ff085ae3ab187 100644
--- a/unittests/test_converters.py
+++ b/unittests/test_converters.py
@@ -38,6 +38,8 @@ from newcrawler.structure_elements import (File, DictTextElement,
                                            DictBooleanElement, DictDictElement,
                                            DictIntegerElement, DictFloatElement)
 
+from newcrawler.converters import handle_value
+
 from test_tool import rfp
 
 import pytest
@@ -244,3 +246,33 @@ def test_json_converter(converter_registry):
         children = jsonconverter.create_children(None, broken_json)
 
     assert err.value.message.startswith("Couldn't validate")
+
+
+def test_variable_replacement():
+    values = GeneralStore()
+    values["a"] = 4
+    values["b"] = "68"
+
+    assert handle_value("b", values) == ("b", "single")
+    assert handle_value("+b", values) == ("b", "list")
+    assert handle_value("*b", values) == ("b", "multiproperty")
+    assert handle_value("$b", values) == ("68", "single")
+    assert handle_value("+$b", values) == ("68", "list")
+    assert handle_value("*$b", values) == ("68", "multiproperty")
+
+    assert handle_value({"value": "b",
+                         "collection_mode": "single"}, values) == ("b", "single")
+    assert handle_value({"value": "b",
+                         "collection_mode": "list"}, values) == ("b", "list")
+    assert handle_value({"value": "b",
+                         "collection_mode": "multiproperty"}, values) == ("b", "multiproperty")
+    assert handle_value({"value": "$b",
+                         "collection_mode": "single"}, values) == ("68", "single")
+    assert handle_value({"value": "$b",
+                         "collection_mode": "list"}, values) == ("68", "list")
+    assert handle_value({"value": "$b",
+                         "collection_mode": "multiproperty"}, values) == ("68", "multiproperty")
+
+    assert handle_value(["a", "b"], values) == (["a", "b"], "single")
+    assert handle_value(["$a", "$b"], values) == (["4", "68"], "single")
+