diff --git a/README.fr.md b/README.fr.md
new file mode 100644
index 0000000..82065ba
--- /dev/null
+++ b/README.fr.md
@@ -0,0 +1,37 @@
+---
+gitea: none
+include_toc: true
+---
+[🇬🇧 (EN)](README.md) - [🇫🇷 (FR)](README.fr.md)
+
+## Exporte la configuration dans des variables d'environnement
+
+> [!NOTE]
+>
+> L'exportation de la configuration sous forme de variables d'environnement la rend accessible aux applications nécessitant ce type de variable (scripts, applications Twelve-Factor, etc.).\
+> \
+> Vous pouvez l'utiliser, avec le fichier .rougailconf.yaml approprié, en exécutant : "source <(rougail)".\
+> \
+> Note : une variable dans un "sequence" qui serait désactivée pour un index particulier sera remplacé par une chaine vide.\
+> **Chemin** : environment\
+> *`désactivé`*\
+> **Désactivé** : lorsque la variable "[sélection pour sortie](#step.output)" est accessible et n'a pas la valeur "environment".
+
+### Configuration pour la sortie type environment
+
+> [!NOTE]
+>
+> **Chemin** : environment.output\
+> *`désactivé`*\
+> **Désactivé** : lorsque la variable "[sélection pour sortie](#step.output)" est accessible et n'a pas la valeur "environment".
+
+| Variable | Description | Valeur par défaut | Type | Contrôle des accès | Validateur |
+|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------|
+| **environment.output.prefix**
**Ligne de commande** :
--environment.output.prefix
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.PREFIX | Ajouter un préfixe aux variables d'environnement. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) | | |
+| **environment.output.boolean_type**
**Ligne de commande** :
--environment.output.boolean_type
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.BOOLEAN_TYPE | Les booléens sont convertis en.
Il n'y a pas de booléen dans le shell, nous devons donc le convertir
"string" signifie les chaînes de caractères "true" ou "false"
"number" signifie les nombres "1" ou "0". | string | [`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | **Choix** :
• string
• number |
+| **environment.output.upper**
**Ligne de commande** :
• --environment.output.upper
• --environment.output.no-upper
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.UPPER | Le nom des variables sont en majuscule. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | |
+| **environment.output.path_is_variable_name**
**Ligne de commande** :
• --environment.output.path_is_variable_name
• --environment.output.no-path_is_variable_name
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.PATH_IS_VARIABLE_NAME | Le nom des variables est, en fait, un chemin. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | |
+| **environment.output.custom_separator**
**Ligne de commande** :
--environment.output.custom_separator
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.CUSTOM_SEPARATOR | Remplace le caractère de séparateur "." dans le chemin par un autre.
Le caractère point (".") peut ne pas être autoriser dans le nom des variables d'environnement. | _ | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) | *`désactivé`*
**Désactivé** : lorsque la variable "[Le nom des variables est, en fait, un chemin](#environment.output.path_is_variable_name)" a la valeur "false". | |
+| **environment.output.multi_in_array**
**Ligne de commande** :
• --environment.output.multi_in_array
• --environment.output.no-multi_in_array
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.MULTI_IN_ARRAY | Variables a multiple valeurs vont être chargé dans un array.
Tous les shells ne prennent pas en charge les arrays. Cette fonctionnalité n'est pas compatible POSIX, elle est spécifique à Bash (d'autres shells, comme zsh ou ksh, prennent également en charge les arrays).
Si votre shell prend en charge les arrays, il est préférable de les utiliser pour parcourir les valeurs de la liste. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | |
+| **environment.output.multi_separator**
**Ligne de commande** :
--environment.output.multi_separator
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.MULTI_SEPARATOR | Le séparateur pour les variables à valeurs multiples. | ; | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | *`désactivé`*
**Désactivé** : lorsque la variable "[Variables a multiple valeurs vont être chargé dans un array](#environment.output.multi_in_array)" a la valeur "true". | |
+| **environment.output.submulti_separator**
**Ligne de commande** :
--environment.output.submulti_separator
**Variable d'environnement** : ROUGAILCLI_ENVIRONMENT.OUTPUT.SUBMULTI_SEPARATOR | Le séparateur pour les variables à sous valeurs multiples. | si "[Variables a multiple valeurs vont être chargé dans un array](#environment.output.multi_in_array)" la valeur est ";" sinon la valeur est ",". | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | |
diff --git a/README.md b/README.md
index 8f876c4..7c40131 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,37 @@
-# rougail-output-environment
+---
+gitea: none
+include_toc: true
+---
+[🇬🇧 (EN)](README.md) - [🇫🇷 (FR)](README.fr.md)
+## Export configuration to environment variables
+
+> [!NOTE]
+>
+> Exporting the configuration as an environment variable makes it available to applications that require this type of variable (scripts, Twelve-Factor Apps, etc.).\
+> \
+> You can use it, with the appropriate .rougailconf.yaml file, by doing: "source <(rougail)".\
+> \
+> Note: A variable within a "sequence" that is disabled for a specific index will be replaced by an empty string.\
+> **Path**: environment\
+> *`disabled`*\
+> **Disabled**: when the variable "[select for output](#step.output)" is accessible and hasn't the value "environment".
+
+### Configuration for output environment
+
+> [!NOTE]
+>
+> **Path**: environment.output\
+> *`disabled`*\
+> **Disabled**: when the variable "[select for output](#step.output)" is accessible and hasn't the value "environment".
+
+| Variable | Description | Default value | Type | Access control | Validator |
+|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------|
+| **environment.output.prefix**
**Command line**:
--environment.output.prefix
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.PREFIX | Add prefix to environment variables. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) | | |
+| **environment.output.boolean_type**
**Command line**:
--environment.output.boolean_type
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.BOOLEAN_TYPE | Booleans are converted into.
There is no boolean in shell, so we have to convert it
"string" means the string "true" or "false"
"number" means the number "1" or "0". | string | [`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | **Choices**:
• string
• number |
+| **environment.output.upper**
**Command line**:
• --environment.output.upper
• --environment.output.no-upper
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.UPPER | Variables name are upper. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | |
+| **environment.output.path_is_variable_name**
**Command line**:
• --environment.output.path_is_variable_name
• --environment.output.no-path_is_variable_name
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.PATH_IS_VARIABLE_NAME | The variables name is, in fact, the path. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | |
+| **environment.output.custom_separator**
**Command line**:
--environment.output.custom_separator
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.CUSTOM_SEPARATOR | Replace the separator character "." in path by an other.
The character dot (".") may not be allowed in the environment variable name. | _ | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) | *`disabled`*
**Disabled**: when the variable "[The variables name is, in fact, the path](#environment.output.path_is_variable_name)" has the value "false". | |
+| **environment.output.multi_in_array**
**Command line**:
• --environment.output.multi_in_array
• --environment.output.no-multi_in_array
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.MULTI_IN_ARRAY | Multiple values variable will be loaded in a array.
Not all shells support arrays. This feature is not POSIX-compatible, it's a Bash-specific feature (other shells like zsh or ksh also support arrays).
If your shell supports arrays, it is preferable to use them to iterate over the values in the list. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | |
+| **environment.output.multi_separator**
**Command line**:
--environment.output.multi_separator
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.MULTI_SEPARATOR | The separator for multiple values variable. | ; | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | *`disabled`*
**Disabled**: when the variable "[Multiple values variable will be loaded in a array](#environment.output.multi_in_array)" has the value "true". | |
+| **environment.output.submulti_separator**
**Command line**:
--environment.output.submulti_separator
**Environment variable**: ROUGAILCLI_ENVIRONMENT.OUTPUT.SUBMULTI_SEPARATOR | The separator for sub multiple values variable. | if "[Multiple values variable will be loaded in a array](#environment.output.multi_in_array)" the value is ";" otherwise the value is ",". | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | |
diff --git a/locale/fr/LC_MESSAGES/rougail_output_environment.po b/locale/fr/LC_MESSAGES/rougail_output_environment.po
new file mode 100644
index 0000000..d7720e0
--- /dev/null
+++ b/locale/fr/LC_MESSAGES/rougail_output_environment.po
@@ -0,0 +1,166 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR ORGANIZATION
+# FIRST AUTHOR , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: 2026-07-10 07:49+0200\n"
+"PO-Revision-Date: 2026-07-10 07:51+0200\n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"Language: fr\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: pygettext.py 1.5\n"
+"X-Generator: Poedit 3.9\n"
+
+#: src/rougail/output_environment/config.py:31
+msgid ""
+"Load user data from environment variables or export configuration to "
+"environment variables"
+msgstr ""
+"Charge les données utilisateurs depuis les variables d'environnement ou "
+"export la configuration vers les variables d'environnement"
+
+#: src/rougail/output_environment/config.py:38
+msgid "if environment is not in \"step.output\" and not in \"step.user_data\""
+msgstr ""
+"Si environment n'est pas dans \"step.output\" ou dans \"step.user_data\""
+
+#: src/rougail/output_environment/config.py:43
+msgid "Export configuration to environment variables"
+msgstr "Exporte la configuration dans des variables d'environnement"
+
+#: src/rougail/output_environment/config.py:45
+msgid ""
+"Exporting the configuration as an environment variable makes it available to "
+"applications that require this type of variable (scripts, Twelve-Factor "
+"Apps, etc.)."
+msgstr ""
+"L'exportation de la configuration sous forme de variables d'environnement la "
+"rend accessible aux applications nécessitant ce type de variable (scripts, "
+"applications Twelve-Factor, etc.)."
+
+#: src/rougail/output_environment/config.py:47
+msgid ""
+"You can use it, with the appropriate .rougailconf.yaml file, by doing: "
+"\"source <(rougail)\"."
+msgstr ""
+"Vous pouvez l'utiliser, avec le fichier .rougailconf.yaml approprié, en "
+"exécutant : \"source <(rougail)\"."
+
+#: src/rougail/output_environment/config.py:49
+msgid ""
+"Note: A variable within a \"sequence\" that is disabled for a specific index "
+"will be replaced by an empty string."
+msgstr ""
+"Note : une variable dans un \"sequence\" qui serait désactivée pour un index "
+"particulier sera remplacé par une chaine vide"
+
+#: src/rougail/output_environment/config.py:58
+msgid "Configuration for output environment"
+msgstr "Configuration pour la sortie type environment"
+
+#: src/rougail/output_environment/config.py:65
+msgid "Add prefix to environment variables"
+msgstr "Ajouter un préfixe aux variables d'environnement"
+
+#: src/rougail/output_environment/config.py:69
+msgid "Booleans are converted into"
+msgstr "Les booléens sont convertis en"
+
+#: src/rougail/output_environment/config.py:71
+msgid "There is no boolean in shell, so we have to convert it"
+msgstr "Il n'y a pas de booléen dans le shell, nous devons donc le convertir"
+
+#: src/rougail/output_environment/config.py:73
+msgid "\"string\" means the string \"true\" or \"false\""
+msgstr "\"string\" signifie les chaînes de caractères \"true\" ou \"false\""
+
+#: src/rougail/output_environment/config.py:75
+msgid "\"number\" means the number \"1\" or \"0\""
+msgstr "\"number\" signifie les nombres \"1\" ou \"0\""
+
+#: src/rougail/output_environment/config.py:81
+msgid "Variables name are upper"
+msgstr "Le nom des variables sont en majuscule"
+
+#: src/rougail/output_environment/config.py:83
+msgid "The variables name is, in fact, the path"
+msgstr "Le nom des variables est, en fait, un chemin"
+
+#: src/rougail/output_environment/config.py:86
+msgid "Replace the separator character \".\" in path by an other"
+msgstr "Remplace le caractère de séparateur \".\" dans le chemin par un autre"
+
+#: src/rougail/output_environment/config.py:87
+msgid ""
+"The character dot (\".\") may not be allowed in the environment variable "
+"name."
+msgstr ""
+"Le caractère point (\".\") peut ne pas être autoriser dans le nom des "
+"variables d'environnement"
+
+#: src/rougail/output_environment/config.py:95
+msgid "Multiple values variable will be loaded in a array"
+msgstr "Variables a multiple valeurs vont être chargé dans un array"
+
+#: src/rougail/output_environment/config.py:97
+msgid ""
+"Not all shells support arrays. This feature is not POSIX-compatible, it's a "
+"Bash-specific feature (other shells like zsh or ksh also support arrays)."
+msgstr ""
+"Tous les shells ne prennent pas en charge les arrays. Cette fonctionnalité "
+"n'est pas compatible POSIX, elle est spécifique à Bash (d'autres shells, "
+"comme zsh ou ksh, prennent également en charge les arrays)."
+
+#: src/rougail/output_environment/config.py:99
+msgid ""
+"If your shell supports arrays, it is preferable to use them to iterate over "
+"the values in the list."
+msgstr ""
+"Si votre shell prend en charge les arrays, il est préférable de les utiliser "
+"pour parcourir les valeurs de la liste."
+
+#: src/rougail/output_environment/config.py:103
+msgid "The separator for multiple values variable"
+msgstr "Le séparateur pour les variables à valeurs multiples"
+
+#: src/rougail/output_environment/config.py:110
+msgid "The separator for sub multiple values variable"
+msgstr "Le séparateur pour les variables à sous valeurs multiples"
+
+#: src/rougail/output_environment/config.py:119
+msgid "if \"_.multi_in_array\" the value is \";\" otherwise the value is \",\""
+msgstr "si \"_.multi_in_array\" la valeur est \";\" sinon la valeur est \",\""
+
+#: src/rougail/output_environment/export.py:46
+msgid "the \"step.output\" is not set to \"{0}\""
+msgstr "le \"step.output\" n'est pas défini à \"{0}\""
+
+#: src/rougail/output_environment/export.py:112
+#: src/rougail/output_environment/export.py:124
+msgid "{0}: {1}"
+msgstr "{0} : {1}"
+
+#: src/rougail/output_environment/export.py:160
+msgid "The variable name \"{0}\" is duplicated"
+msgstr "Le nom de la variable \"{0}\" est dupliqué"
+
+#: src/rougail/output_environment/export.py:178
+msgid ""
+"the character \"{0}\" is a sub multi separator, this character must not in "
+"the \"{1}\" value"
+msgstr ""
+"le caractère \"{0}\" est un séparateur pour une valeur sub multiple, ce "
+"caractère ne doit pas être dans la valeur de \"{1}\""
+
+#: src/rougail/output_environment/export.py:183
+msgid ""
+"the character \"{0}\" is a multi separator, this character must not in the "
+"\"{1}\" value"
+msgstr ""
+"le caractère \"{0}\" est un séparateur pour une valeur multiple, ce "
+"caractère ne doit pas être dans la valeur de \"{1}\""
diff --git a/locale/rougail_output_environment.pot b/locale/rougail_output_environment.pot
new file mode 100644
index 0000000..0b84d03
--- /dev/null
+++ b/locale/rougail_output_environment.pot
@@ -0,0 +1,126 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR ORGANIZATION
+# FIRST AUTHOR , YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"POT-Creation-Date: 2026-07-10 07:51+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: LANGUAGE \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: pygettext.py 1.5\n"
+
+
+#: src/rougail/output_environment/config.py:31
+msgid "Load user data from environment variables or export configuration to environment variables"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:38
+msgid "if environment is not in \"step.output\" and not in \"step.user_data\""
+msgstr ""
+
+#: src/rougail/output_environment/config.py:43
+msgid "Export configuration to environment variables"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:45
+msgid "Exporting the configuration as an environment variable makes it available to applications that require this type of variable (scripts, Twelve-Factor Apps, etc.)."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:47
+msgid "You can use it, with the appropriate .rougailconf.yaml file, by doing: \"source <(rougail)\"."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:49
+msgid "Note: A variable within a \"sequence\" that is disabled for a specific index will be replaced by an empty string."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:58
+msgid "Configuration for output environment"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:65
+msgid "Add prefix to environment variables"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:69
+msgid "Booleans are converted into"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:71
+msgid "There is no boolean in shell, so we have to convert it"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:73
+msgid "\"string\" means the string \"true\" or \"false\""
+msgstr ""
+
+#: src/rougail/output_environment/config.py:75
+msgid "\"number\" means the number \"1\" or \"0\""
+msgstr ""
+
+#: src/rougail/output_environment/config.py:81
+msgid "Variables name are upper"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:83
+msgid "The variables name is, in fact, the path"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:86
+msgid "Replace the separator character \".\" in path by an other"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:87
+msgid "The character dot (\".\") may not be allowed in the environment variable name."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:95
+msgid "Multiple values variable will be loaded in a array"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:97
+msgid "Not all shells support arrays. This feature is not POSIX-compatible, it's a Bash-specific feature (other shells like zsh or ksh also support arrays)."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:99
+msgid "If your shell supports arrays, it is preferable to use them to iterate over the values in the list."
+msgstr ""
+
+#: src/rougail/output_environment/config.py:103
+msgid "The separator for multiple values variable"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:110
+msgid "The separator for sub multiple values variable"
+msgstr ""
+
+#: src/rougail/output_environment/config.py:119
+msgid "if \"_.multi_in_array\" the value is \";\" otherwise the value is \",\""
+msgstr ""
+
+#: src/rougail/output_environment/export.py:46
+msgid "the \"step.output\" is not set to \"{0}\""
+msgstr ""
+
+#: src/rougail/output_environment/export.py:112
+#: src/rougail/output_environment/export.py:124
+msgid "{0}: {1}"
+msgstr ""
+
+#: src/rougail/output_environment/export.py:160
+msgid "The variable name \"{0}\" is duplicated"
+msgstr ""
+
+#: src/rougail/output_environment/export.py:178
+msgid "the character \"{0}\" is a sub multi separator, this character must not in the \"{1}\" value"
+msgstr ""
+
+#: src/rougail/output_environment/export.py:183
+msgid "the character \"{0}\" is a multi separator, this character must not in the \"{1}\" value"
+msgstr ""
+
diff --git a/pyproject.toml b/pyproject.toml
new file mode 100644
index 0000000..c97a686
--- /dev/null
+++ b/pyproject.toml
@@ -0,0 +1,42 @@
+[build-system]
+build-backend = "flit_core.buildapi"
+requires = ["flit_core >=3.8.0,<4"]
+
+[project]
+name = "rougail.output_environment"
+version = "0.0.0"
+authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
+readme = "README.md"
+description = "Rougail output environment"
+requires-python = ">=3.11"
+license = {file = "LICENSE"}
+classifiers = [
+ "License :: OSI Approved :: GNU Library or Lesser General Public License (LGPL)",
+ "Programming Language :: Python :: 3.11",
+ "Programming Language :: Python :: 3.12",
+ "Programming Language :: Python :: 3.13",
+ "Programming Language :: Python :: 3.14",
+ "Programming Language :: Python :: 3",
+ "Operating System :: OS Independent",
+ "Natural Language :: English",
+ "Natural Language :: French",
+]
+
+dependencies = [
+ "rougail-base >= 1.2.0,<2",
+]
+
+[project.urls]
+Home = "https://forge.cloud.silique.fr/stove/rougail-output-environment"
+
+[tool.commitizen]
+name = "cz_conventional_commits"
+tag_format = "$version"
+version_scheme = "pep440"
+version_provider = "pep621"
+version_files = [
+ "src/rougail/output_environment/__version__.py",
+ "pyproject.toml:version"
+]
+update_changelog_on_bump = true
+changelog_merge_prerelease = true
diff --git a/src/rougail/output_environment/__init__.py b/src/rougail/output_environment/__init__.py
new file mode 100644
index 0000000..b036e2c
--- /dev/null
+++ b/src/rougail/output_environment/__init__.py
@@ -0,0 +1,27 @@
+"""
+Silique (https://www.silique.fr)
+Copyright (C) 2026
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Lesser General Public License as published by the
+Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with this program. If not, see .
+"""
+
+from .export import RougailOutputEnvironment
+from .__version__ import __version__
+
+
+RougailOutput = RougailOutputEnvironment
+
+
+__all__ = ("RougailOutputEnvironment", "__version__")
+
diff --git a/src/rougail/output_environment/__pycache__/__init__.cpython-314.pyc b/src/rougail/output_environment/__pycache__/__init__.cpython-314.pyc
new file mode 100644
index 0000000..21e29f4
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/__init__.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__pycache__/__version__.cpython-314.pyc b/src/rougail/output_environment/__pycache__/__version__.cpython-314.pyc
new file mode 100644
index 0000000..9eec0c0
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/__version__.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__pycache__/config.cpython-314.pyc b/src/rougail/output_environment/__pycache__/config.cpython-314.pyc
new file mode 100644
index 0000000..93a1975
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/config.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__pycache__/env.cpython-314.pyc b/src/rougail/output_environment/__pycache__/env.cpython-314.pyc
new file mode 100644
index 0000000..fa121bd
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/env.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__pycache__/export.cpython-314.pyc b/src/rougail/output_environment/__pycache__/export.cpython-314.pyc
new file mode 100644
index 0000000..412f343
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/export.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__pycache__/i18n.cpython-314.pyc b/src/rougail/output_environment/__pycache__/i18n.cpython-314.pyc
new file mode 100644
index 0000000..f8321c2
Binary files /dev/null and b/src/rougail/output_environment/__pycache__/i18n.cpython-314.pyc differ
diff --git a/src/rougail/output_environment/__version__.py b/src/rougail/output_environment/__version__.py
new file mode 100644
index 0000000..b68b39b
--- /dev/null
+++ b/src/rougail/output_environment/__version__.py
@@ -0,0 +1 @@
+__version__ = "0.0.0"
diff --git a/src/rougail/output_environment/config.py b/src/rougail/output_environment/config.py
new file mode 100644
index 0000000..fe52a4d
--- /dev/null
+++ b/src/rougail/output_environment/config.py
@@ -0,0 +1,130 @@
+"""
+Silique (https://www.silique.fr)
+Copyright (C) 2026
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Lesser General Public License as published by the
+Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with this program. If not, see .
+"""
+
+
+from .i18n import _
+
+
+def get_rougail_config(
+ *,
+ backward_compatibility=True,
+) -> dict:
+ options = [f"""
+environment:
+ exists: true
+ redefine: true
+ description: {_("Load user data from environment variables or export configuration to environment variables")}
+ help: null
+ disabled:
+ jinja: |-
+ {{{{ (step.output is propertyerror or step.output != 'environment') and (step.user_data is propertyerror or 'environment' not in step.user_data) }}}}
+ return_type: boolean
+ description: >-
+ {_('if environment is not in "step.output" and not in "step.user_data"')}
+""", f"""
+environment:
+ exists: false
+ type: family
+ description: {_('Export configuration to environment variables')}
+ help: |-
+ {_('Exporting the configuration as an environment variable makes it available to applications that require this type of variable (scripts, Twelve-Factor Apps, etc.).')}
+
+ {_('You can use it, with the appropriate .rougailconf.yaml file, by doing: "source <(rougail)".')}
+
+ {_('Note: A variable within a "sequence" that is disabled for a specific index will be replaced by an empty string.')}
+ disabled:
+ variable: step.output
+ when_not: environment
+ propertyerror: false
+""", f"""
+environment:
+
+ output:
+ description: {_('Configuration for output environment')}
+ disabled:
+ variable: step.output
+ when_not: environment
+ propertyerror: false
+
+ prefix:
+ description: {_('Add prefix to environment variables')}
+ mandatory: false
+
+ boolean_type:
+ description: {_('Booleans are converted into')}
+ help: |-
+ {_('There is no boolean in shell, so we have to convert it')}
+
+ {_('"string" means the string "true" or "false"')}
+
+ {_('"number" means the number "1" or "0"')}
+ choices:
+ - string
+ - number
+ default: string
+
+ upper: true # {_('Variables name are upper')}
+
+ path_is_variable_name: true # {_('The variables name is, in fact, the path')}
+
+ custom_separator:
+ description: {_('Replace the separator character "." in path by an other')}
+ help: {_('The character dot (".") may not be allowed in the environment variable name.')}
+ mandatory: false
+ disabled:
+ variable: _.path_is_variable_name
+ when: false
+ default: "_"
+
+ multi_in_array:
+ description: {_('Multiple values variable will be loaded in a array')}
+ help: |-
+ {_('Not all shells support arrays. This feature is not POSIX-compatible, it\'s a Bash-specific feature (other shells like zsh or ksh also support arrays).')}
+
+ {_('If your shell supports arrays, it is preferable to use them to iterate over the values in the list.')}
+ default: true
+
+ multi_separator:
+ description: {_('The separator for multiple values variable')}
+ help:
+ default: ;
+ disabled:
+ variable: _.multi_in_array
+
+ submulti_separator:
+ description: {_('The separator for sub multiple values variable')}
+ default:
+ jinja: |-
+ {{% if _.multi_in_array %}}
+ ;
+ {{% else %}}
+ ,
+ {{% endif %}}
+ description: >-
+ {_('if "_.multi_in_array" the value is ";" otherwise the value is ","')}
+"""]
+
+ return {
+ "name": "environment",
+ "process": "output",
+ "options": options,
+ "level": 60,
+ }
+
+
+__all__ = ("get_rougail_config",)
diff --git a/src/rougail/output_environment/export.py b/src/rougail/output_environment/export.py
new file mode 100644
index 0000000..a4d9682
--- /dev/null
+++ b/src/rougail/output_environment/export.py
@@ -0,0 +1,219 @@
+"""
+Silique (https://www.silique.fr)
+Copyright (C) 2026
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Lesser General Public License as published by the
+Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with this program. If not, see .
+"""
+
+from shlex import quote
+from rougail.error import ExtensionError
+
+
+from .i18n import _
+
+
+class RougailOutputEnvironment:
+ output_name = "environment"
+
+ def __init__(
+ self,
+ config: "Config",
+ *,
+ rougailconfig: "RougailConfig" = None,
+ user_data_errors: Optional[list] = None,
+ user_data_warnings: Optional[list] = None,
+ true_config: "Config" = None,
+ **kwargs,
+ ) -> None:
+ if rougailconfig is None:
+ from rougail import RougailConfig
+
+ rougailconfig = RougailConfig
+ rougailconfig["step.output"] = self.output_name
+ if rougailconfig["step.output"] != self.output_name:
+ raise ExtensionError(
+ _('the "step.output" is not set to "{0}"').format(self.output_name)
+ )
+ self.rougailconfig = rougailconfig
+ self.config = config
+ if true_config:
+ self.true_config = true_config
+ else:
+ self.true_config = config
+ if user_data_errors:
+ self.errors = user_data_errors
+ else:
+ self.errors = []
+ if user_data_warnings:
+ self.warnings = user_data_warnings
+ else:
+ self.warnings = []
+
+ def run(self) -> None:
+ self.prefix = self.rougailconfig["environment.output.prefix"] or ""
+ if self.rougailconfig["environment.output.boolean_type"] == "string":
+ self.booleans = {True: "true", False: "false"}
+ else:
+ self.booleans = {True: 1, False: 0}
+ self.upper = self.rougailconfig["environment.output.upper"]
+ self.path_is_variable_name = self.rougailconfig["environment.output.path_is_variable_name"]
+ if self.path_is_variable_name:
+ self.custom_separator = self.rougailconfig["environment.output.custom_separator"]
+ else:
+ self.custom_separator = None
+ self.multi_in_array = self.rougailconfig["environment.output.multi_in_array"]
+ if not self.multi_in_array:
+ self.multi_separator = self.rougailconfig["environment.output.multi_separator"]
+ self.submulti_separator = self.rougailconfig["environment.output.submulti_separator"]
+ ret = self.exporter()
+ if isinstance(self.dico, str):
+ value = self.dico
+ else:
+ value = "\n".join(self.dico.values()) + "\n"
+ return ret, value
+
+ def print(self) -> str:
+ ret, data = self.run()
+ print(data)
+ return ret
+
+ def exporter(self) -> None:
+ self.dico = {}
+ self.manage_warnings()
+ if not self.manage_errors():
+ return False
+ if not self.config.isoptiondescription():
+ name = self.get_name(self.config)
+ self.set_value(name, self.config.value.get())
+ return True
+ self.parse_family(
+ self.config,
+ )
+ return self.manage_errors()
+
+ def manage_warnings(self) -> None:
+ if not self.warnings:
+ return
+ warnings = []
+ for w in self.warnings:
+ if isinstance(w, dict):
+ msg, opt = next(iter(w.items()))
+ warnings.append(_("{0}: {1}").format(opt.path, msg))
+ else:
+ warnings.append(w)
+ self.set_value("_warnings", warnings)
+
+ def manage_errors(self) -> bool:
+ if not self.errors:
+ return True
+ errors = []
+ for e in self.errors:
+ if isinstance(e, dict):
+ msg, opt = next(iter(e.items()))
+ errors.append(_("{0}: {1}").format(opt.path, msg))
+ else:
+ errors.append(e)
+ self.set_value("_errors", errors)
+ return False
+
+ def parse_family(
+ self,
+ parent,
+ ):
+ for child in parent:
+ if child.isoptiondescription():
+ if child.isleadership():
+ parse = self.parse_sequence
+ else:
+ parse = self.parse_family
+ parse(child)
+ else:
+ name = self.get_name(child)
+ self.set_value(name, child.value.get())
+
+ def get_name(self, child):
+ if self.path_is_variable_name:
+ name = child.path()
+ else:
+ name = child.name()
+ if self.upper:
+ name = name.upper()
+ if self.custom_separator:
+ name = name.replace(".", self.custom_separator)
+ if self.prefix:
+ name = self.prefix + name
+ return name
+
+ def set_value(self, name, values):
+ if name in self.dico:
+ raise ExtensionError(_('The variable name "{0}" is duplicated').format(name))
+ self.dico[name] = f'{name}={self.conv_values(name, values)}'
+
+ def conv_values(self, name, values):
+ if isinstance(values, list):
+ values = [self.conv_sub_values(name, value) for value in values]
+ if self.multi_in_array:
+ return f'({" ".join(values)})'
+ return self.multi_separator.join(values)
+ values = self.conv_to_string(values)
+ return quote(values)
+
+ def conv_sub_values(self, name, values):
+ if isinstance(values, list):
+ new_values = []
+ for value in values:
+ value = self.conv_to_string(value)
+ if self.submulti_separator in value:
+ raise ExtensionError(_('the character "{0}" is a sub multi separator, this character must not in the "{1}" value').format(self.submulti_separator, name))
+ new_values.append(value)
+ values = self.submulti_separator.join(new_values)
+ values = self.conv_to_string(values)
+ if not self.multi_in_array and self.multi_separator in values:
+ raise ExtensionError(_('the character "{0}" is a multi separator, this character must not in the "{1}" value').format(self.multi_separator, name))
+ return quote(values)
+
+ def conv_to_string(self, values):
+ if isinstance(values, bool):
+ values = self.booleans.get(values, values)
+ if isinstance(values, (int, float)):
+ values = str(values)
+ if values is None:
+ values = ""
+ return values
+
+ def parse_sequence(
+ self,
+ child,
+ ):
+ leader, *followers = list(child)
+ leader_values = leader.value.get()
+ self.set_value(self.get_name(leader), leader_values)
+ followers_data = {}
+ followers_name = {}
+ for follower in list(followers):
+ follower_path = follower.path()
+ follower_name = followers_name.get(follower_path, None)
+ if not follower_name:
+ follower_name = self.get_name(follower)
+ followers_name[follower_path] = follower_name
+ followers_data.setdefault(follower_name, {})[follower.index()] = follower.value.get()
+ leader_len = len(leader_values)
+ for name, values in followers_data.items():
+ self.set_value(name, [values[idx] if idx in values else "" for idx in range(leader_len)])
+
+
+RougailOutput = RougailOutputEnvironment
+
+
+__all__ = ("RougailOutputEnvironment",)
diff --git a/src/rougail/output_environment/i18n.py b/src/rougail/output_environment/i18n.py
new file mode 100644
index 0000000..b35d851
--- /dev/null
+++ b/src/rougail/output_environment/i18n.py
@@ -0,0 +1,26 @@
+"""Internationalisation utilities
+Silique (https://www.silique.fr)
+Copyright (C) 2026
+
+This program is free software: you can redistribute it and/or modify it
+under the terms of the GNU Lesser General Public License as published by the
+Free Software Foundation, either version 3 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
+details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with this program. If not, see .
+"""
+
+from gettext import translation
+from pathlib import Path
+
+t = translation(
+ "rougail_output_environment", str(Path(__file__).parent / "locale"), fallback=True
+)
+
+_ = t.gettext
diff --git a/src/rougail/output_environment/locale/fr/LC_MESSAGES/rougail_output_environment.mo b/src/rougail/output_environment/locale/fr/LC_MESSAGES/rougail_output_environment.mo
new file mode 100644
index 0000000..f8c78c1
Binary files /dev/null and b/src/rougail/output_environment/locale/fr/LC_MESSAGES/rougail_output_environment.mo differ
diff --git a/tests/__pycache__/test_load.cpython-314-pytest-8.3.5.pyc b/tests/__pycache__/test_load.cpython-314-pytest-8.3.5.pyc
new file mode 100644
index 0000000..1b6e971
Binary files /dev/null and b/tests/__pycache__/test_load.cpython-314-pytest-8.3.5.pyc differ
diff --git a/tests/results/test/00_0empty.env b/tests/results/test/00_0empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/00_0empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/00_0no_variable.env b/tests/results/test/00_0no_variable.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/00_0no_variable.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/00_0no_variable_default_version.env b/tests/results/test/00_0no_variable_default_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/00_0no_variable_default_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/00_0no_variable_remove_version.env b/tests/results/test/00_0no_variable_remove_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/00_0no_variable_remove_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/00_0version_underscore.env b/tests/results/test/00_0version_underscore.env
new file mode 100644
index 0000000..70e0419
--- /dev/null
+++ b/tests/results/test/00_0version_underscore.env
@@ -0,0 +1 @@
+VERSION=string1
diff --git a/tests/results/test/00_1empty_variable.env b/tests/results/test/00_1empty_variable.env
new file mode 100644
index 0000000..12c724c
--- /dev/null
+++ b/tests/results/test/00_1empty_variable.env
@@ -0,0 +1 @@
+EMPTY=string1
diff --git a/tests/results/test/00_2default_calculated.env b/tests/results/test/00_2default_calculated.env
new file mode 100644
index 0000000..e387458
--- /dev/null
+++ b/tests/results/test/00_2default_calculated.env
@@ -0,0 +1,2 @@
+VAR1=no
+VAR2=(no)
diff --git a/tests/results/test/00_2default_calculated_multi.env b/tests/results/test/00_2default_calculated_multi.env
new file mode 100644
index 0000000..d966af6
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_multi.env
@@ -0,0 +1,2 @@
+VAR1=(no yes maybe)
+VAR2=(no yes maybe)
diff --git a/tests/results/test/00_2default_calculated_params_permissive.env b/tests/results/test/00_2default_calculated_params_permissive.env
new file mode 100644
index 0000000..9c93c53
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_params_permissive.env
@@ -0,0 +1 @@
+VAR2=a_value
diff --git a/tests/results/test/00_2default_calculated_variable.env b/tests/results/test/00_2default_calculated_variable.env
new file mode 100644
index 0000000..9c7d674
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_variable.env
@@ -0,0 +1,2 @@
+VAR1=(domain1.lan domain2.lan)
+VAR2=(domain1.lan domain2.lan)
diff --git a/tests/results/test/00_2default_calculated_variable_description.env b/tests/results/test/00_2default_calculated_variable_description.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_variable_description.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_2default_calculated_variable_description_multi_line.env b/tests/results/test/00_2default_calculated_variable_description_multi_line.env
new file mode 100644
index 0000000..0ac1729
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_variable_description_multi_line.env
@@ -0,0 +1,3 @@
+VAR1=string1
+VAR2=string1
+VAR3=string1
diff --git a/tests/results/test/00_2default_calculated_variable_transitive.env b/tests/results/test/00_2default_calculated_variable_transitive.env
new file mode 100644
index 0000000..9c7d674
--- /dev/null
+++ b/tests/results/test/00_2default_calculated_variable_transitive.env
@@ -0,0 +1,2 @@
+VAR1=(domain1.lan domain2.lan)
+VAR2=(domain1.lan domain2.lan)
diff --git a/tests/results/test/00_2default_with_exclamation.env b/tests/results/test/00_2default_with_exclamation.env
new file mode 100644
index 0000000..c1516c9
--- /dev/null
+++ b/tests/results/test/00_2default_with_exclamation.env
@@ -0,0 +1 @@
+VAR1='My%Val;ue$#!1su:'
diff --git a/tests/results/test/00_4load_subfolder.env b/tests/results/test/00_4load_subfolder.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_4load_subfolder.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_5load_notype.env b/tests/results/test/00_5load_notype.env
new file mode 100644
index 0000000..2664c0e
--- /dev/null
+++ b/tests/results/test/00_5load_notype.env
@@ -0,0 +1 @@
+WITHOUT_TYPE=non
diff --git a/tests/results/test/00_6boolean.env b/tests/results/test/00_6boolean.env
new file mode 100644
index 0000000..30fe08b
--- /dev/null
+++ b/tests/results/test/00_6boolean.env
@@ -0,0 +1,6 @@
+VAR1=true
+VAR2=true
+VAR3=true
+VAR4=false
+VAR5=false
+VAR6=false
diff --git a/tests/results/test/00_6boolean_no_mandatory.env b/tests/results/test/00_6boolean_no_mandatory.env
new file mode 100644
index 0000000..0399458
--- /dev/null
+++ b/tests/results/test/00_6boolean_no_mandatory.env
@@ -0,0 +1 @@
+VARIABLE=true
diff --git a/tests/results/test/00_6choice.env b/tests/results/test/00_6choice.env
new file mode 100644
index 0000000..5c4fe62
--- /dev/null
+++ b/tests/results/test/00_6choice.env
@@ -0,0 +1,6 @@
+VAR1=a
+VAR2=a
+VAR3=''
+VAR4=''
+VAR5=a
+VAR6=1
diff --git a/tests/results/test/00_6choice_calculation.env b/tests/results/test/00_6choice_calculation.env
new file mode 100644
index 0000000..3a1d22f
--- /dev/null
+++ b/tests/results/test/00_6choice_calculation.env
@@ -0,0 +1 @@
+VAR=9
diff --git a/tests/results/test/00_6choice_link.env b/tests/results/test/00_6choice_link.env
new file mode 100644
index 0000000..05c6bc7
--- /dev/null
+++ b/tests/results/test/00_6choice_link.env
@@ -0,0 +1,2 @@
+VAR1=a
+VAR2=a
diff --git a/tests/results/test/00_6choice_variable.env b/tests/results/test/00_6choice_variable.env
new file mode 100644
index 0000000..68066c7
--- /dev/null
+++ b/tests/results/test/00_6choice_variable.env
@@ -0,0 +1,2 @@
+VAR1=(a b c)
+VAR2=a
diff --git a/tests/results/test/00_6choice_variable_link.env b/tests/results/test/00_6choice_variable_link.env
new file mode 100644
index 0000000..db7ca28
--- /dev/null
+++ b/tests/results/test/00_6choice_variable_link.env
@@ -0,0 +1,3 @@
+VAR1=(a b c)
+VAR2=a
+VAR3=a
diff --git a/tests/results/test/00_6choice_variable_link2.env b/tests/results/test/00_6choice_variable_link2.env
new file mode 100644
index 0000000..80d075d
--- /dev/null
+++ b/tests/results/test/00_6choice_variable_link2.env
@@ -0,0 +1,3 @@
+VAR1=(a b c)
+VAR2=a
+FAMILY_VAR3=a
diff --git a/tests/results/test/00_6custom.env b/tests/results/test/00_6custom.env
new file mode 100644
index 0000000..1511fb7
--- /dev/null
+++ b/tests/results/test/00_6custom.env
@@ -0,0 +1,2 @@
+CUSTOM1=string1
+CUSTOM2=value
diff --git a/tests/results/test/00_6domainname.env b/tests/results/test/00_6domainname.env
new file mode 100644
index 0000000..8749ada
--- /dev/null
+++ b/tests/results/test/00_6domainname.env
@@ -0,0 +1 @@
+VARIABLE=my.domain.name
diff --git a/tests/results/test/00_6domainname_params.env b/tests/results/test/00_6domainname_params.env
new file mode 100644
index 0000000..8749ada
--- /dev/null
+++ b/tests/results/test/00_6domainname_params.env
@@ -0,0 +1 @@
+VARIABLE=my.domain.name
diff --git a/tests/results/test/00_6float.env b/tests/results/test/00_6float.env
new file mode 100644
index 0000000..23f8636
--- /dev/null
+++ b/tests/results/test/00_6float.env
@@ -0,0 +1,6 @@
+VAR1=0.0
+VAR2=0.0
+VAR3=0.0
+VAR4=10.1
+VAR5=10.1
+VAR6=10.1
diff --git a/tests/results/test/00_6integer.env b/tests/results/test/00_6integer.env
new file mode 100644
index 0000000..789cebd
--- /dev/null
+++ b/tests/results/test/00_6integer.env
@@ -0,0 +1,6 @@
+VAR1=0
+VAR2=0
+VAR3=0
+VAR4=10
+VAR5=10
+VAR6=10
diff --git a/tests/results/test/00_6ip.env b/tests/results/test/00_6ip.env
new file mode 100644
index 0000000..a2c530e
--- /dev/null
+++ b/tests/results/test/00_6ip.env
@@ -0,0 +1,3 @@
+VAR1=1.1.1.1
+VAR2=1.1.1.1/24
+VAR3=1.1.1.1/24
diff --git a/tests/results/test/00_6network.env b/tests/results/test/00_6network.env
new file mode 100644
index 0000000..9fbcbfc
--- /dev/null
+++ b/tests/results/test/00_6network.env
@@ -0,0 +1,3 @@
+VAR1=1.1.1.0
+VAR2=1.1.1.0/24
+VAR3=1.1.1.0/24
diff --git a/tests/results/test/00_6number.env b/tests/results/test/00_6number.env
new file mode 100644
index 0000000..789cebd
--- /dev/null
+++ b/tests/results/test/00_6number.env
@@ -0,0 +1,6 @@
+VAR1=0
+VAR2=0
+VAR3=0
+VAR4=10
+VAR5=10
+VAR6=10
diff --git a/tests/results/test/00_6port.env b/tests/results/test/00_6port.env
new file mode 100644
index 0000000..fb4a1d3
--- /dev/null
+++ b/tests/results/test/00_6port.env
@@ -0,0 +1,3 @@
+VARIABLE1=80
+VARIABLE2=8080
+VARIABLE3=8080
diff --git a/tests/results/test/00_6regexp.env b/tests/results/test/00_6regexp.env
new file mode 100644
index 0000000..176f619
--- /dev/null
+++ b/tests/results/test/00_6regexp.env
@@ -0,0 +1 @@
+VAR='#a1a1a1'
diff --git a/tests/results/test/00_6regexp_link.env b/tests/results/test/00_6regexp_link.env
new file mode 100644
index 0000000..94477a8
--- /dev/null
+++ b/tests/results/test/00_6regexp_link.env
@@ -0,0 +1,2 @@
+VAR1='#a1a1a1'
+VAR2='#a1a1a1'
diff --git a/tests/results/test/00_6secret.env b/tests/results/test/00_6secret.env
new file mode 100644
index 0000000..b244a61
--- /dev/null
+++ b/tests/results/test/00_6secret.env
@@ -0,0 +1,2 @@
+SECRET1=onE7vaLues_len1
+SECRET2=value
diff --git a/tests/results/test/00_6secret_param.env b/tests/results/test/00_6secret_param.env
new file mode 100644
index 0000000..a79918f
--- /dev/null
+++ b/tests/results/test/00_6secret_param.env
@@ -0,0 +1,3 @@
+SECRET1=onE7vaLues_len1
+SECRET2=value
+SECRET3=value
diff --git a/tests/results/test/00_6string.env b/tests/results/test/00_6string.env
new file mode 100644
index 0000000..d1adbdd
--- /dev/null
+++ b/tests/results/test/00_6string.env
@@ -0,0 +1,8 @@
+VAR1=string1
+VAR2=string1
+VAR3=string1
+VAR4=value
+VAR5=value
+VAR6=value
+VAR7=8080
+VAR8=true
diff --git a/tests/results/test/00_7choice_quote.env b/tests/results/test/00_7choice_quote.env
new file mode 100644
index 0000000..72d1353
--- /dev/null
+++ b/tests/results/test/00_7choice_quote.env
@@ -0,0 +1 @@
+VAR='quote'"'"''
diff --git a/tests/results/test/00_7help.env b/tests/results/test/00_7help.env
new file mode 100644
index 0000000..0ac1729
--- /dev/null
+++ b/tests/results/test/00_7help.env
@@ -0,0 +1,3 @@
+VAR1=string1
+VAR2=string1
+VAR3=string1
diff --git a/tests/results/test/00_7help_quote.env b/tests/results/test/00_7help_quote.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_7help_quote.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_7help_sup.env b/tests/results/test/00_7help_sup.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_7help_sup.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_7value_doublequote.env b/tests/results/test/00_7value_doublequote.env
new file mode 100644
index 0000000..181f5c6
--- /dev/null
+++ b/tests/results/test/00_7value_doublequote.env
@@ -0,0 +1 @@
+VARIABLE='quote"'
diff --git a/tests/results/test/00_7value_doublequote2.env b/tests/results/test/00_7value_doublequote2.env
new file mode 100644
index 0000000..1fe2119
--- /dev/null
+++ b/tests/results/test/00_7value_doublequote2.env
@@ -0,0 +1 @@
+VARIABLE='quote'"'"'"'
diff --git a/tests/results/test/00_7value_doublequote3.env b/tests/results/test/00_7value_doublequote3.env
new file mode 100644
index 0000000..52cb40d
--- /dev/null
+++ b/tests/results/test/00_7value_doublequote3.env
@@ -0,0 +1 @@
+VARIABLE='quote\"\'"'"''
diff --git a/tests/results/test/00_7value_quote.env b/tests/results/test/00_7value_quote.env
new file mode 100644
index 0000000..0328e7f
--- /dev/null
+++ b/tests/results/test/00_7value_quote.env
@@ -0,0 +1 @@
+VARIABLE='quote'"'"''
diff --git a/tests/results/test/00_8calculation_information.env b/tests/results/test/00_8calculation_information.env
new file mode 100644
index 0000000..07c2705
--- /dev/null
+++ b/tests/results/test/00_8calculation_information.env
@@ -0,0 +1 @@
+VARIABLE=string1
diff --git a/tests/results/test/00_8test.env b/tests/results/test/00_8test.env
new file mode 100644
index 0000000..efb1a94
--- /dev/null
+++ b/tests/results/test/00_8test.env
@@ -0,0 +1,6 @@
+VAR1=test
+VAR2=value
+VAR3=test1
+VAR4=''
+VAR5=true
+VAR6=(test1 test2)
diff --git a/tests/results/test/00_9choice_variable_multi.env b/tests/results/test/00_9choice_variable_multi.env
new file mode 100644
index 0000000..db98347
--- /dev/null
+++ b/tests/results/test/00_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+VARIABLE1=(val1 val2)
+VARIABLE2=()
diff --git a/tests/results/test/00_9choice_variables.env b/tests/results/test/00_9choice_variables.env
new file mode 100644
index 0000000..3a7102d
--- /dev/null
+++ b/tests/results/test/00_9choice_variables.env
@@ -0,0 +1,3 @@
+SOURCE_VARIABLE_1=val1
+SOURCE_VARIABLE_2=val2
+MY_VARIABLE=val1
diff --git a/tests/results/test/00_9default_calculation.env b/tests/results/test/00_9default_calculation.env
new file mode 100644
index 0000000..bf7abcd
--- /dev/null
+++ b/tests/results/test/00_9default_calculation.env
@@ -0,0 +1 @@
+VARIABLE=string_1_True_None
diff --git a/tests/results/test/00_9default_calculation_information.env b/tests/results/test/00_9default_calculation_information.env
new file mode 100644
index 0000000..e7a956b
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_information.env
@@ -0,0 +1 @@
+VAR=string1
diff --git a/tests/results/test/00_9default_calculation_information_other_variable.env b/tests/results/test/00_9default_calculation_information_other_variable.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_information_other_variable.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_9default_calculation_multi_optional.env b/tests/results/test/00_9default_calculation_multi_optional.env
new file mode 100644
index 0000000..91a739a
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_multi_optional.env
@@ -0,0 +1,2 @@
+MY_VARIABLE=val1
+MY_CALCULATED_VARIABLE=(val1)
diff --git a/tests/results/test/00_9default_calculation_multi_optional2.env b/tests/results/test/00_9default_calculation_multi_optional2.env
new file mode 100644
index 0000000..91a739a
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_multi_optional2.env
@@ -0,0 +1,2 @@
+MY_VARIABLE=val1
+MY_CALCULATED_VARIABLE=(val1)
diff --git a/tests/results/test/00_9default_calculation_multi_optional_default.env b/tests/results/test/00_9default_calculation_multi_optional_default.env
new file mode 100644
index 0000000..9479c91
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_multi_optional_default.env
@@ -0,0 +1,2 @@
+MY_VARIABLE=val1
+MY_CALCULATED_VARIABLE=(val1 value)
diff --git a/tests/results/test/00_9default_calculation_optional.env b/tests/results/test/00_9default_calculation_optional.env
new file mode 100644
index 0000000..5cbfec0
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_optional.env
@@ -0,0 +1 @@
+MY_CALCULATED_VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test/00_9default_calculation_optional_exists.env b/tests/results/test/00_9default_calculation_optional_exists.env
new file mode 100644
index 0000000..64e7b5f
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_optional_exists.env
@@ -0,0 +1,2 @@
+MY_VARIABLE=(val1 val2)
+MY_CALCULATED_VARIABLE=(val1 val2)
diff --git a/tests/results/test/00_9default_calculation_param_optional.env b/tests/results/test/00_9default_calculation_param_optional.env
new file mode 100644
index 0000000..4f24c41
--- /dev/null
+++ b/tests/results/test/00_9default_calculation_param_optional.env
@@ -0,0 +1,2 @@
+VAR1=no
+VAR2=no
diff --git a/tests/results/test/00_9default_information_other_variable.env b/tests/results/test/00_9default_information_other_variable.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_9default_information_other_variable.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_9default_information_other_variable2.env b/tests/results/test/00_9default_information_other_variable2.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/00_9default_information_other_variable2.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/00_9default_integer.env b/tests/results/test/00_9default_integer.env
new file mode 100644
index 0000000..3a1d22f
--- /dev/null
+++ b/tests/results/test/00_9default_integer.env
@@ -0,0 +1 @@
+VAR=9
diff --git a/tests/results/test/00_9default_number.env b/tests/results/test/00_9default_number.env
new file mode 100644
index 0000000..3a1d22f
--- /dev/null
+++ b/tests/results/test/00_9default_number.env
@@ -0,0 +1 @@
+VAR=9
diff --git a/tests/results/test/01_6boolean_multi.env b/tests/results/test/01_6boolean_multi.env
new file mode 100644
index 0000000..2dbd169
--- /dev/null
+++ b/tests/results/test/01_6boolean_multi.env
@@ -0,0 +1,8 @@
+VAR1=(true)
+VAR2=(true)
+VAR3=(true)
+VAR4=(false)
+VAR5=(false)
+VAR6=(false)
+VAR7=(true)
+VAR8=(true)
diff --git a/tests/results/test/01_6custom_multi.env b/tests/results/test/01_6custom_multi.env
new file mode 100644
index 0000000..7ba8186
--- /dev/null
+++ b/tests/results/test/01_6custom_multi.env
@@ -0,0 +1,2 @@
+CUSTOM1=(string1 string2 string3)
+CUSTOM2=(value)
diff --git a/tests/results/test/01_6float_multi.env b/tests/results/test/01_6float_multi.env
new file mode 100644
index 0000000..1373840
--- /dev/null
+++ b/tests/results/test/01_6float_multi.env
@@ -0,0 +1,8 @@
+VAR1=(0.0)
+VAR2=(0.0)
+VAR3=(0.0)
+VAR4=(10.1)
+VAR5=(10.1)
+VAR6=(10.1)
+VAR7=(0.0)
+VAR8=(0.0)
diff --git a/tests/results/test/01_6integer_multi.env b/tests/results/test/01_6integer_multi.env
new file mode 100644
index 0000000..accdcb4
--- /dev/null
+++ b/tests/results/test/01_6integer_multi.env
@@ -0,0 +1,8 @@
+VAR1=(0)
+VAR2=(0)
+VAR3=(0)
+VAR4=(10)
+VAR5=(10)
+VAR6=(10)
+VAR7=(0)
+VAR8=(0)
diff --git a/tests/results/test/01_6integer_multi_mandatory.env b/tests/results/test/01_6integer_multi_mandatory.env
new file mode 100644
index 0000000..2f35dc9
--- /dev/null
+++ b/tests/results/test/01_6integer_multi_mandatory.env
@@ -0,0 +1 @@
+VAR=(1 2 3)
diff --git a/tests/results/test/01_6string_empty.env b/tests/results/test/01_6string_empty.env
new file mode 100644
index 0000000..4b22f4e
--- /dev/null
+++ b/tests/results/test/01_6string_empty.env
@@ -0,0 +1 @@
+VAR1=(value '')
diff --git a/tests/results/test/01_6string_multi.env b/tests/results/test/01_6string_multi.env
new file mode 100644
index 0000000..6989dbe
--- /dev/null
+++ b/tests/results/test/01_6string_multi.env
@@ -0,0 +1,8 @@
+VAR1=(string1 string2 string3)
+VAR2=(string1 string2 string3)
+VAR3=(string1 string2 string3)
+VAR4=(value)
+VAR5=(value)
+VAR6=(value)
+VAR7=(value)
+VAR8=(value)
diff --git a/tests/results/test/01_6string_multi_length.env b/tests/results/test/01_6string_multi_length.env
new file mode 100644
index 0000000..bc1fce9
--- /dev/null
+++ b/tests/results/test/01_6string_multi_length.env
@@ -0,0 +1,2 @@
+VAR1=(val1 val2 val3)
+VAR2=(val4 val5)
diff --git a/tests/results/test/01_7value_multi_doublequote.env b/tests/results/test/01_7value_multi_doublequote.env
new file mode 100644
index 0000000..7d975ae
--- /dev/null
+++ b/tests/results/test/01_7value_multi_doublequote.env
@@ -0,0 +1 @@
+VARIABLE=('quote"')
diff --git a/tests/results/test/01_7value_multi_doublequote2.env b/tests/results/test/01_7value_multi_doublequote2.env
new file mode 100644
index 0000000..9e17365
--- /dev/null
+++ b/tests/results/test/01_7value_multi_doublequote2.env
@@ -0,0 +1 @@
+VARIABLE=('quote'"'"'"')
diff --git a/tests/results/test/01_7value_multi_quote.env b/tests/results/test/01_7value_multi_quote.env
new file mode 100644
index 0000000..a3af670
--- /dev/null
+++ b/tests/results/test/01_7value_multi_quote.env
@@ -0,0 +1 @@
+VARIABLE=('quote'"'"'')
diff --git a/tests/results/test/01_8calculation_information_multi.env b/tests/results/test/01_8calculation_information_multi.env
new file mode 100644
index 0000000..62a8888
--- /dev/null
+++ b/tests/results/test/01_8calculation_information_multi.env
@@ -0,0 +1 @@
+VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test/01_9choice_variable_multi.env b/tests/results/test/01_9choice_variable_multi.env
new file mode 100644
index 0000000..4e88cd2
--- /dev/null
+++ b/tests/results/test/01_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+VARIABLE1=(a b c)
+VARIABLE2=a
diff --git a/tests/results/test/01_9choice_variable_optional.env b/tests/results/test/01_9choice_variable_optional.env
new file mode 100644
index 0000000..0995cc7
--- /dev/null
+++ b/tests/results/test/01_9choice_variable_optional.env
@@ -0,0 +1 @@
+VARIABLE=c
diff --git a/tests/results/test/02_0tags.env b/tests/results/test/02_0tags.env
new file mode 100644
index 0000000..1b063e1
--- /dev/null
+++ b/tests/results/test/02_0tags.env
@@ -0,0 +1,2 @@
+VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/04_0type_param.env b/tests/results/test/04_0type_param.env
new file mode 100644
index 0000000..5e9cdec
--- /dev/null
+++ b/tests/results/test/04_0type_param.env
@@ -0,0 +1 @@
+INT=10
diff --git a/tests/results/test/04_0type_param_integer.env b/tests/results/test/04_0type_param_integer.env
new file mode 100644
index 0000000..5e9cdec
--- /dev/null
+++ b/tests/results/test/04_0type_param_integer.env
@@ -0,0 +1 @@
+INT=10
diff --git a/tests/results/test/04_1auto_save.env b/tests/results/test/04_1auto_save.env
new file mode 100644
index 0000000..e1920b1
--- /dev/null
+++ b/tests/results/test/04_1auto_save.env
@@ -0,0 +1 @@
+VARIABLE=no
diff --git a/tests/results/test/04_1auto_save_and_calculated.env b/tests/results/test/04_1auto_save_and_calculated.env
new file mode 100644
index 0000000..4f24c41
--- /dev/null
+++ b/tests/results/test/04_1auto_save_and_calculated.env
@@ -0,0 +1,2 @@
+VAR1=no
+VAR2=no
diff --git a/tests/results/test/04_1auto_save_and_calculated_hidden.env b/tests/results/test/04_1auto_save_and_calculated_hidden.env
new file mode 100644
index 0000000..327a237
--- /dev/null
+++ b/tests/results/test/04_1auto_save_and_calculated_hidden.env
@@ -0,0 +1,2 @@
+VAR1=no
+VAR2=yes
diff --git a/tests/results/test/04_1auto_save_and_hidden.env b/tests/results/test/04_1auto_save_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/04_1auto_save_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/04_1default_calculation_hidden.env b/tests/results/test/04_1default_calculation_hidden.env
new file mode 100644
index 0000000..2157bc3
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden.env
@@ -0,0 +1,2 @@
+VAR1=value
+VAR3=value
diff --git a/tests/results/test/04_1default_calculation_hidden_2.env b/tests/results/test/04_1default_calculation_hidden_2.env
new file mode 100644
index 0000000..68abb33
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden_2.env
@@ -0,0 +1,2 @@
+VAR1=value
+VAR3=string1
diff --git a/tests/results/test/04_1default_calculation_hidden_3.env b/tests/results/test/04_1default_calculation_hidden_3.env
new file mode 100644
index 0000000..29e881b
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden_3.env
@@ -0,0 +1 @@
+VAR3=value
diff --git a/tests/results/test/04_1default_calculation_hidden_4.env b/tests/results/test/04_1default_calculation_hidden_4.env
new file mode 100644
index 0000000..4809917
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden_4.env
@@ -0,0 +1,2 @@
+VAR2=string1
+VAR3=value
diff --git a/tests/results/test/04_1default_calculation_hidden_5.env b/tests/results/test/04_1default_calculation_hidden_5.env
new file mode 100644
index 0000000..d20ef0a
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden_5.env
@@ -0,0 +1 @@
+VAR1=value
diff --git a/tests/results/test/04_1default_calculation_hidden_6.env b/tests/results/test/04_1default_calculation_hidden_6.env
new file mode 100644
index 0000000..68abb33
--- /dev/null
+++ b/tests/results/test/04_1default_calculation_hidden_6.env
@@ -0,0 +1,2 @@
+VAR1=value
+VAR3=string1
diff --git a/tests/results/test/04_1jinja_and_hidden.env b/tests/results/test/04_1jinja_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/04_1jinja_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/04_5disabled_calculation_boolean.env b/tests/results/test/04_5disabled_calculation_boolean.env
new file mode 100644
index 0000000..4899631
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_boolean.env
@@ -0,0 +1,2 @@
+CONDITION=no
+VARIABLE1=string1
diff --git a/tests/results/test/04_5disabled_calculation_optional.env b/tests/results/test/04_5disabled_calculation_optional.env
new file mode 100644
index 0000000..26eb32d
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_optional.env
@@ -0,0 +1 @@
+CONDITION=no
diff --git a/tests/results/test/04_5disabled_calculation_optional_default.env b/tests/results/test/04_5disabled_calculation_optional_default.env
new file mode 100644
index 0000000..af20129
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_optional_default.env
@@ -0,0 +1,4 @@
+CONDITION=false
+VAR1=''
+VAR3=''
+VAR4=''
diff --git a/tests/results/test/04_5disabled_calculation_variable.env b/tests/results/test/04_5disabled_calculation_variable.env
new file mode 100644
index 0000000..66bd02d
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable.env
@@ -0,0 +1,2 @@
+CONDITION=false
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable10.env b/tests/results/test/04_5disabled_calculation_variable10.env
new file mode 100644
index 0000000..0645b53
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable10.env
@@ -0,0 +1 @@
+CONDITION=true
diff --git a/tests/results/test/04_5disabled_calculation_variable2.env b/tests/results/test/04_5disabled_calculation_variable2.env
new file mode 100644
index 0000000..0645b53
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable2.env
@@ -0,0 +1 @@
+CONDITION=true
diff --git a/tests/results/test/04_5disabled_calculation_variable3.env b/tests/results/test/04_5disabled_calculation_variable3.env
new file mode 100644
index 0000000..ec70037
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable3.env
@@ -0,0 +1 @@
+CONDITION=yes
diff --git a/tests/results/test/04_5disabled_calculation_variable4.env b/tests/results/test/04_5disabled_calculation_variable4.env
new file mode 100644
index 0000000..2c3236c
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable4.env
@@ -0,0 +1,2 @@
+CONDITION=yes
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable5.env b/tests/results/test/04_5disabled_calculation_variable5.env
new file mode 100644
index 0000000..07c2705
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable5.env
@@ -0,0 +1 @@
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable6.env b/tests/results/test/04_5disabled_calculation_variable6.env
new file mode 100644
index 0000000..07c2705
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable6.env
@@ -0,0 +1 @@
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable7.env b/tests/results/test/04_5disabled_calculation_variable7.env
new file mode 100644
index 0000000..66bd02d
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable7.env
@@ -0,0 +1,2 @@
+CONDITION=false
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable8.env b/tests/results/test/04_5disabled_calculation_variable8.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable8.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/04_5disabled_calculation_variable9.env b/tests/results/test/04_5disabled_calculation_variable9.env
new file mode 100644
index 0000000..07c2705
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable9.env
@@ -0,0 +1 @@
+VARIABLE=string1
diff --git a/tests/results/test/04_5disabled_calculation_variable_multi.env b/tests/results/test/04_5disabled_calculation_variable_multi.env
new file mode 100644
index 0000000..12690dd
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable_multi.env
@@ -0,0 +1,2 @@
+CONDITION=false
+VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test/04_5disabled_calculation_variable_transitive.env b/tests/results/test/04_5disabled_calculation_variable_transitive.env
new file mode 100644
index 0000000..0645b53
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable_transitive.env
@@ -0,0 +1 @@
+CONDITION=true
diff --git a/tests/results/test/04_5disabled_calculation_variable_transitive_2.env b/tests/results/test/04_5disabled_calculation_variable_transitive_2.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable_transitive_2.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/04_5disabled_calculation_variable_transitive_3.env b/tests/results/test/04_5disabled_calculation_variable_transitive_3.env
new file mode 100644
index 0000000..16b7d74
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable_transitive_3.env
@@ -0,0 +1,2 @@
+CONDITION=false
+VARIABLE1=disabled
diff --git a/tests/results/test/04_5disabled_calculation_variable_transitive_4.env b/tests/results/test/04_5disabled_calculation_variable_transitive_4.env
new file mode 100644
index 0000000..0645b53
--- /dev/null
+++ b/tests/results/test/04_5disabled_calculation_variable_transitive_4.env
@@ -0,0 +1 @@
+CONDITION=true
diff --git a/tests/results/test/04_5validators.env b/tests/results/test/04_5validators.env
new file mode 100644
index 0000000..78ee3e0
--- /dev/null
+++ b/tests/results/test/04_5validators.env
@@ -0,0 +1 @@
+INT=1
diff --git a/tests/results/test/04_5validators_differ.env b/tests/results/test/04_5validators_differ.env
new file mode 100644
index 0000000..e7b7f94
--- /dev/null
+++ b/tests/results/test/04_5validators_differ.env
@@ -0,0 +1,2 @@
+VAR1=oui
+VAR2=no
diff --git a/tests/results/test/04_5validators_multi.env b/tests/results/test/04_5validators_multi.env
new file mode 100644
index 0000000..f640802
--- /dev/null
+++ b/tests/results/test/04_5validators_multi.env
@@ -0,0 +1 @@
+VAR1=(no yes)
diff --git a/tests/results/test/04_5validators_multi2.env b/tests/results/test/04_5validators_multi2.env
new file mode 100644
index 0000000..f640802
--- /dev/null
+++ b/tests/results/test/04_5validators_multi2.env
@@ -0,0 +1 @@
+VAR1=(no yes)
diff --git a/tests/results/test/04_5validators_multi3.env b/tests/results/test/04_5validators_multi3.env
new file mode 100644
index 0000000..d523407
--- /dev/null
+++ b/tests/results/test/04_5validators_multi3.env
@@ -0,0 +1 @@
+VAR1=(0 1 2)
diff --git a/tests/results/test/04_5validators_warnings.env b/tests/results/test/04_5validators_warnings.env
new file mode 100644
index 0000000..fba7c3c
--- /dev/null
+++ b/tests/results/test/04_5validators_warnings.env
@@ -0,0 +1 @@
+INT=1000
diff --git a/tests/results/test/04_5validators_warnings_all.env b/tests/results/test/04_5validators_warnings_all.env
new file mode 100644
index 0000000..fba7c3c
--- /dev/null
+++ b/tests/results/test/04_5validators_warnings_all.env
@@ -0,0 +1 @@
+INT=1000
diff --git a/tests/results/test/05_0multi_not_uniq.env b/tests/results/test/05_0multi_not_uniq.env
new file mode 100644
index 0000000..e55b264
--- /dev/null
+++ b/tests/results/test/05_0multi_not_uniq.env
@@ -0,0 +1 @@
+VAR1=(non)
diff --git a/tests/results/test/05_0multi_uniq.env b/tests/results/test/05_0multi_uniq.env
new file mode 100644
index 0000000..d7f28b7
--- /dev/null
+++ b/tests/results/test/05_0multi_uniq.env
@@ -0,0 +1 @@
+VARIABLE=(non)
diff --git a/tests/results/test/12_1auto_save_expert.env b/tests/results/test/12_1auto_save_expert.env
new file mode 100644
index 0000000..62d2dd0
--- /dev/null
+++ b/tests/results/test/12_1auto_save_expert.env
@@ -0,0 +1 @@
+VAR=no
diff --git a/tests/results/test/16_0redefine_description.env b/tests/results/test/16_0redefine_description.env
new file mode 100644
index 0000000..e7a956b
--- /dev/null
+++ b/tests/results/test/16_0redefine_description.env
@@ -0,0 +1 @@
+VAR=string1
diff --git a/tests/results/test/16_2family_redefine_calculation.env b/tests/results/test/16_2family_redefine_calculation.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/16_2family_redefine_calculation.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/16_2family_redefine_disabled.env b/tests/results/test/16_2family_redefine_disabled.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/16_2family_redefine_disabled.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/16_3family_empty_at_ends.env b/tests/results/test/16_3family_empty_at_ends.env
new file mode 100644
index 0000000..c9804c6
--- /dev/null
+++ b/tests/results/test/16_3family_empty_at_ends.env
@@ -0,0 +1 @@
+FAMILY_VAR1=string1
diff --git a/tests/results/test/16_5exists_nonexists.env b/tests/results/test/16_5exists_nonexists.env
new file mode 100644
index 0000000..327a237
--- /dev/null
+++ b/tests/results/test/16_5exists_nonexists.env
@@ -0,0 +1,2 @@
+VAR1=no
+VAR2=yes
diff --git a/tests/results/test/16_5exists_redefine.env b/tests/results/test/16_5exists_redefine.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/16_5exists_redefine.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/16_5redefine_calculation.env b/tests/results/test/16_5redefine_calculation.env
new file mode 100644
index 0000000..3bf357d
--- /dev/null
+++ b/tests/results/test/16_5redefine_calculation.env
@@ -0,0 +1 @@
+VARIABLE=yes
diff --git a/tests/results/test/16_5redefine_choice.env b/tests/results/test/16_5redefine_choice.env
new file mode 100644
index 0000000..4490639
--- /dev/null
+++ b/tests/results/test/16_5redefine_choice.env
@@ -0,0 +1 @@
+VARIABLE=a
diff --git a/tests/results/test/16_5redefine_default.env b/tests/results/test/16_5redefine_default.env
new file mode 100644
index 0000000..3bf357d
--- /dev/null
+++ b/tests/results/test/16_5redefine_default.env
@@ -0,0 +1 @@
+VARIABLE=yes
diff --git a/tests/results/test/16_5redefine_default_calculation.env b/tests/results/test/16_5redefine_default_calculation.env
new file mode 100644
index 0000000..07c2705
--- /dev/null
+++ b/tests/results/test/16_5redefine_default_calculation.env
@@ -0,0 +1 @@
+VARIABLE=string1
diff --git a/tests/results/test/16_5redefine_family.env b/tests/results/test/16_5redefine_family.env
new file mode 100644
index 0000000..12a5a13
--- /dev/null
+++ b/tests/results/test/16_5redefine_family.env
@@ -0,0 +1 @@
+FAMILY_VARIABLE=string1
diff --git a/tests/results/test/16_5redefine_help.env b/tests/results/test/16_5redefine_help.env
new file mode 100644
index 0000000..12a5a13
--- /dev/null
+++ b/tests/results/test/16_5redefine_help.env
@@ -0,0 +1 @@
+FAMILY_VARIABLE=string1
diff --git a/tests/results/test/16_5redefine_hidden.env b/tests/results/test/16_5redefine_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/16_5redefine_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/16_5redefine_multi.env b/tests/results/test/16_5redefine_multi.env
new file mode 100644
index 0000000..d7f28b7
--- /dev/null
+++ b/tests/results/test/16_5redefine_multi.env
@@ -0,0 +1 @@
+VARIABLE=(non)
diff --git a/tests/results/test/16_5redefine_remove_disable_calculation.env b/tests/results/test/16_5redefine_remove_disable_calculation.env
new file mode 100644
index 0000000..ff75baf
--- /dev/null
+++ b/tests/results/test/16_5redefine_remove_disable_calculation.env
@@ -0,0 +1,2 @@
+CONDITION=no
+VARIABLE=string1
diff --git a/tests/results/test/16_5test_redefine.env b/tests/results/test/16_5test_redefine.env
new file mode 100644
index 0000000..0c2f129
--- /dev/null
+++ b/tests/results/test/16_5test_redefine.env
@@ -0,0 +1,3 @@
+VAR1=no
+VAR2=non
+VAR3=string1
diff --git a/tests/results/test/16_6choice_redefine.env b/tests/results/test/16_6choice_redefine.env
new file mode 100644
index 0000000..4f456dd
--- /dev/null
+++ b/tests/results/test/16_6choice_redefine.env
@@ -0,0 +1 @@
+VAR=c
diff --git a/tests/results/test/16_6exists_family.env b/tests/results/test/16_6exists_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/16_6exists_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/16_6exists_redefine_family.env b/tests/results/test/16_6exists_redefine_family.env
new file mode 100644
index 0000000..042d5b4
--- /dev/null
+++ b/tests/results/test/16_6exists_redefine_family.env
@@ -0,0 +1,2 @@
+FAMILY1_VARIABLE1=string1
+FAMILY2_VARIABLE2=string1
diff --git a/tests/results/test/16exists_exists.env b/tests/results/test/16exists_exists.env
new file mode 100644
index 0000000..e7a956b
--- /dev/null
+++ b/tests/results/test/16exists_exists.env
@@ -0,0 +1 @@
+VAR=string1
diff --git a/tests/results/test/17_5redefine_leadership.env b/tests/results/test/17_5redefine_leadership.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/17_5redefine_leadership.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/20_0empty_family.env b/tests/results/test/20_0empty_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/20_0empty_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/20_0family_append.env b/tests/results/test/20_0family_append.env
new file mode 100644
index 0000000..8f0adee
--- /dev/null
+++ b/tests/results/test/20_0family_append.env
@@ -0,0 +1,2 @@
+FAMILY_VAR1=string1
+FAMILY_VAR2=string1
diff --git a/tests/results/test/20_0family_underscore.env b/tests/results/test/20_0family_underscore.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/20_0family_underscore.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/20_0multi_family.env b/tests/results/test/20_0multi_family.env
new file mode 100644
index 0000000..711fc13
--- /dev/null
+++ b/tests/results/test/20_0multi_family.env
@@ -0,0 +1 @@
+FAMILY_SUBFAMILY_VARIABLE=''
diff --git a/tests/results/test/20_0multi_family_basic.env b/tests/results/test/20_0multi_family_basic.env
new file mode 100644
index 0000000..f703847
--- /dev/null
+++ b/tests/results/test/20_0multi_family_basic.env
@@ -0,0 +1 @@
+FAMILY_SUBFAMILY_VARIABLE=string1
diff --git a/tests/results/test/20_0multi_family_expert.env b/tests/results/test/20_0multi_family_expert.env
new file mode 100644
index 0000000..711fc13
--- /dev/null
+++ b/tests/results/test/20_0multi_family_expert.env
@@ -0,0 +1 @@
+FAMILY_SUBFAMILY_VARIABLE=''
diff --git a/tests/results/test/20_0multi_family_order.env b/tests/results/test/20_0multi_family_order.env
new file mode 100644
index 0000000..1a421b6
--- /dev/null
+++ b/tests/results/test/20_0multi_family_order.env
@@ -0,0 +1,4 @@
+VARIABLE=string1
+FAMILY_VARIABLE1=string1
+FAMILY_SUBFAMILY_VARIABLE=string1
+FAMILY_VARIABLE2=string1
diff --git a/tests/results/test/20_0validators_differ_redefine.env b/tests/results/test/20_0validators_differ_redefine.env
new file mode 100644
index 0000000..4fb4b24
--- /dev/null
+++ b/tests/results/test/20_0validators_differ_redefine.env
@@ -0,0 +1,3 @@
+VAR1=no
+VAR2=no
+VAR3=yes
diff --git a/tests/results/test/20_1empty_subfamily.env b/tests/results/test/20_1empty_subfamily.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/20_1empty_subfamily.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/20_2family_looks_like_dynamic.env b/tests/results/test/20_2family_looks_like_dynamic.env
new file mode 100644
index 0000000..72e1f96
--- /dev/null
+++ b/tests/results/test/20_2family_looks_like_dynamic.env
@@ -0,0 +1,2 @@
+MY_FAMILY_DYNAMIC=(val1 val2)
+MY_FAMILY_VAR=true
diff --git a/tests/results/test/20_2family_looks_like_variable.env b/tests/results/test/20_2family_looks_like_variable.env
new file mode 100644
index 0000000..b646820
--- /dev/null
+++ b/tests/results/test/20_2family_looks_like_variable.env
@@ -0,0 +1 @@
+MY_FAMILY_DEFAULT=true
diff --git a/tests/results/test/20_7help_family.env b/tests/results/test/20_7help_family.env
new file mode 100644
index 0000000..0407da1
--- /dev/null
+++ b/tests/results/test/20_7help_family.env
@@ -0,0 +1,3 @@
+FAMILY1_VAR=string1
+FAMILY2_VAR=string1
+FAMILY3_VAR=string1
diff --git a/tests/results/test/20_9default_information_parent.env b/tests/results/test/20_9default_information_parent.env
new file mode 100644
index 0000000..8f0adee
--- /dev/null
+++ b/tests/results/test/20_9default_information_parent.env
@@ -0,0 +1,2 @@
+FAMILY_VAR1=string1
+FAMILY_VAR2=string1
diff --git a/tests/results/test/20_9family_absolute.env b/tests/results/test/20_9family_absolute.env
new file mode 100644
index 0000000..4fceaa7
--- /dev/null
+++ b/tests/results/test/20_9family_absolute.env
@@ -0,0 +1,6 @@
+VAR1=string1
+FAMILY_VAR2=string6
+FAMILY_SUBFAMILY_VARIABLE=(string1 string6)
+FAMILY2_VAR2=string6
+FAMILY2_VAR3=string4
+FAMILY2_SUBFAMILY_VARIABLE=(string1 string6 string4)
diff --git a/tests/results/test/24_0family_hidden_condition_sub_family.env b/tests/results/test/24_0family_hidden_condition_sub_family.env
new file mode 100644
index 0000000..bbb9e02
--- /dev/null
+++ b/tests/results/test/24_0family_hidden_condition_sub_family.env
@@ -0,0 +1,2 @@
+CONDITION=no
+FAMILY_SUBFAMILY_VAR1=string1
diff --git a/tests/results/test/24_0family_hidden_condition_variable_sub_family.env b/tests/results/test/24_0family_hidden_condition_variable_sub_family.env
new file mode 100644
index 0000000..0645b53
--- /dev/null
+++ b/tests/results/test/24_0family_hidden_condition_variable_sub_family.env
@@ -0,0 +1 @@
+CONDITION=true
diff --git a/tests/results/test/24_0family_hidden_param_condition_sub_family.env b/tests/results/test/24_0family_hidden_param_condition_sub_family.env
new file mode 100644
index 0000000..5c24e77
--- /dev/null
+++ b/tests/results/test/24_0family_hidden_param_condition_sub_family.env
@@ -0,0 +1,2 @@
+CONDITION=no
+FAMILY_SUB_FAMILY_VAR1=string1
diff --git a/tests/results/test/24_0family_mandatory_condition.env b/tests/results/test/24_0family_mandatory_condition.env
new file mode 100644
index 0000000..2805a62
--- /dev/null
+++ b/tests/results/test/24_0family_mandatory_condition.env
@@ -0,0 +1,2 @@
+CONDITION=no
+VAR=''
diff --git a/tests/results/test/24_0family_mandatory_condition_variable.env b/tests/results/test/24_0family_mandatory_condition_variable.env
new file mode 100644
index 0000000..cb0f4b6
--- /dev/null
+++ b/tests/results/test/24_0family_mandatory_condition_variable.env
@@ -0,0 +1,2 @@
+CONDITION=true
+VAR=string1
diff --git a/tests/results/test/24_7validators_variable_optional.env b/tests/results/test/24_7validators_variable_optional.env
new file mode 100644
index 0000000..ba4d619
--- /dev/null
+++ b/tests/results/test/24_7validators_variable_optional.env
@@ -0,0 +1,2 @@
+GENERAL_INT=5
+GENERAL_INT2=1
diff --git a/tests/results/test/24_family_disabled_var_hidden.env b/tests/results/test/24_family_disabled_var_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/24_family_disabled_var_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/40_0leadership.env b/tests/results/test/40_0leadership.env
new file mode 100644
index 0000000..09aa022
--- /dev/null
+++ b/tests/results/test/40_0leadership.env
@@ -0,0 +1,3 @@
+LEADER_LEADER=(string1 string2 string3)
+LEADER_FOLLOWER1=(string1 string2 string3)
+LEADER_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test/40_0leadership_diff_name.env b/tests/results/test/40_0leadership_diff_name.env
new file mode 100644
index 0000000..713f4dd
--- /dev/null
+++ b/tests/results/test/40_0leadership_diff_name.env
@@ -0,0 +1,3 @@
+LEADERSHIP_LEADER=(string1 string2 string3)
+LEADERSHIP_FOLLOWER1=(string1 string2 string3)
+LEADERSHIP_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test/40_0leadership_empty.env b/tests/results/test/40_0leadership_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/40_0leadership_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/40_0leadership_follower_default_calculation.env b/tests/results/test/40_0leadership_follower_default_calculation.env
new file mode 100644
index 0000000..0c41616
--- /dev/null
+++ b/tests/results/test/40_0leadership_follower_default_calculation.env
@@ -0,0 +1,3 @@
+LEADER_LEADER=(string1 string2 string3)
+LEADER_FOLLOWER1=(value value value)
+LEADER_FOLLOWER2=(value value value)
diff --git a/tests/results/test/40_0leadership_follower_default_value.env b/tests/results/test/40_0leadership_follower_default_value.env
new file mode 100644
index 0000000..0ccf935
--- /dev/null
+++ b/tests/results/test/40_0leadership_follower_default_value.env
@@ -0,0 +1 @@
+LEADER_LEADER=()
diff --git a/tests/results/test/40_0leadership_leader_follower.env b/tests/results/test/40_0leadership_leader_follower.env
new file mode 100644
index 0000000..9d0a34a
--- /dev/null
+++ b/tests/results/test/40_0leadership_leader_follower.env
@@ -0,0 +1,2 @@
+LEADERSHIP_LEADER=(value1 value2)
+LEADERSHIP_FOLLOWER=(value1 value2)
diff --git a/tests/results/test/40_0leadership_leader_not_multi.env b/tests/results/test/40_0leadership_leader_not_multi.env
new file mode 100644
index 0000000..9cb23b3
--- /dev/null
+++ b/tests/results/test/40_0leadership_leader_not_multi.env
@@ -0,0 +1,4 @@
+GENERAL_MODE_CONTENEUR_ACTIF=non
+GENERAL1_LEADER_LEADER=(string1 string2 string3)
+GENERAL1_LEADER_FOLLOWER1=(string1 string2 string3)
+GENERAL1_LEADER_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test/40_0leadership_reduce.env b/tests/results/test/40_0leadership_reduce.env
new file mode 100644
index 0000000..867316b
--- /dev/null
+++ b/tests/results/test/40_0leadership_reduce.env
@@ -0,0 +1,2 @@
+LEADERSHIP_LEADER=(value_1 value_2 value_3)
+LEADERSHIP_FOLLOWER=(string1 string2 string3)
diff --git a/tests/results/test/40_1leadership_append_follower.env b/tests/results/test/40_1leadership_append_follower.env
new file mode 100644
index 0000000..2ee5b97
--- /dev/null
+++ b/tests/results/test/40_1leadership_append_follower.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(string1 string2 string3)
+LEADER_FOLLOWER1=(string1 string2 string3)
+LEADER_FOLLOWER2=(string1 string2 string3)
+LEADER_FOLLOWER3=(string1 string2 string3)
diff --git a/tests/results/test/40_2leadership_calculation_index.env b/tests/results/test/40_2leadership_calculation_index.env
new file mode 100644
index 0000000..a81d04b
--- /dev/null
+++ b/tests/results/test/40_2leadership_calculation_index.env
@@ -0,0 +1,2 @@
+LEADER_LEADER=(a b c)
+LEADER_FOLLOWER1=(0 1 2)
diff --git a/tests/results/test/40_2leadership_calculation_index_2.env b/tests/results/test/40_2leadership_calculation_index_2.env
new file mode 100644
index 0000000..a81d04b
--- /dev/null
+++ b/tests/results/test/40_2leadership_calculation_index_2.env
@@ -0,0 +1,2 @@
+LEADER_LEADER=(a b c)
+LEADER_FOLLOWER1=(0 1 2)
diff --git a/tests/results/test/40_6leadership_follower_multi.env b/tests/results/test/40_6leadership_follower_multi.env
new file mode 100644
index 0000000..d5d7388
--- /dev/null
+++ b/tests/results/test/40_6leadership_follower_multi.env
@@ -0,0 +1,3 @@
+LEADERSHIP_LEADER=(string1 string2 string3)
+LEADERSHIP_FOLLOWER1=('string1;string2;string3' 'string1;string2;string3' 'string1;string2;string3')
+LEADERSHIP_FOLLOWER2=(value value value)
diff --git a/tests/results/test/40_6leadership_follower_multi_no_mandatory.env b/tests/results/test/40_6leadership_follower_multi_no_mandatory.env
new file mode 100644
index 0000000..e985680
--- /dev/null
+++ b/tests/results/test/40_6leadership_follower_multi_no_mandatory.env
@@ -0,0 +1 @@
+LEADERSHIP_LEADER=()
diff --git a/tests/results/test/40_8calculation_boolean.env b/tests/results/test/40_8calculation_boolean.env
new file mode 100644
index 0000000..88c31d0
--- /dev/null
+++ b/tests/results/test/40_8calculation_boolean.env
@@ -0,0 +1,3 @@
+BOOL=false
+MULTI1=(false)
+MULTI2=(true false)
diff --git a/tests/results/test/40_8calculation_multi_variable.env b/tests/results/test/40_8calculation_multi_variable.env
new file mode 100644
index 0000000..9a6ea8c
--- /dev/null
+++ b/tests/results/test/40_8calculation_multi_variable.env
@@ -0,0 +1,3 @@
+VAR=(no yes)
+VAR2=no
+VAR3=yes
diff --git a/tests/results/test/40_8calculation_multi_variable_parent.env b/tests/results/test/40_8calculation_multi_variable_parent.env
new file mode 100644
index 0000000..48e1a8e
--- /dev/null
+++ b/tests/results/test/40_8calculation_multi_variable_parent.env
@@ -0,0 +1,2 @@
+VAR=no
+FAM1_VAR=no
diff --git a/tests/results/test/40_8calculation_multi_variable_parent2.env b/tests/results/test/40_8calculation_multi_variable_parent2.env
new file mode 100644
index 0000000..4308d24
--- /dev/null
+++ b/tests/results/test/40_8calculation_multi_variable_parent2.env
@@ -0,0 +1,2 @@
+FAM1_VAR=no
+FAM2_VAR=no
diff --git a/tests/results/test/40_9calculation_variable_leader_follower_multi_inside.env b/tests/results/test/40_9calculation_variable_leader_follower_multi_inside.env
new file mode 100644
index 0000000..9d0a34a
--- /dev/null
+++ b/tests/results/test/40_9calculation_variable_leader_follower_multi_inside.env
@@ -0,0 +1,2 @@
+LEADERSHIP_LEADER=(value1 value2)
+LEADERSHIP_FOLLOWER=(value1 value2)
diff --git a/tests/results/test/40_9leadership-calculation-outside-follower-first.env b/tests/results/test/40_9leadership-calculation-outside-follower-first.env
new file mode 100644
index 0000000..4d60c9f
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-follower-first.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=(val11)
diff --git a/tests/results/test/40_9leadership-calculation-outside-follower-last.env b/tests/results/test/40_9leadership-calculation-outside-follower-last.env
new file mode 100644
index 0000000..4d60c9f
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-follower-last.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=(val11)
diff --git a/tests/results/test/40_9leadership-calculation-outside-follower-no-mandatory.env b/tests/results/test/40_9leadership-calculation-outside-follower-no-mandatory.env
new file mode 100644
index 0000000..658b0ee
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-follower-no-mandatory.env
@@ -0,0 +1,3 @@
+LEADER_LEADER=(a b)
+LEADER_FOLLOWER=('' '')
+VARIABLE=('' '')
diff --git a/tests/results/test/40_9leadership-calculation-outside-follower.env b/tests/results/test/40_9leadership-calculation-outside-follower.env
new file mode 100644
index 0000000..3ceedf7
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-follower.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=(val11 val11)
diff --git a/tests/results/test/40_9leadership-calculation-outside-leader-first.env b/tests/results/test/40_9leadership-calculation-outside-leader-first.env
new file mode 100644
index 0000000..4140edc
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-leader-first.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=value1
diff --git a/tests/results/test/40_9leadership-calculation-outside-leader-last.env b/tests/results/test/40_9leadership-calculation-outside-leader-last.env
new file mode 100644
index 0000000..9cefb2a
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-leader-last.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=value2
diff --git a/tests/results/test/40_9leadership-calculation-outside-leader.env b/tests/results/test/40_9leadership-calculation-outside-leader.env
new file mode 100644
index 0000000..9b6d7c0
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-outside-leader.env
@@ -0,0 +1,4 @@
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
+CALCULATE=(value1 value2)
diff --git a/tests/results/test/40_9leadership-calculation-variable.env b/tests/results/test/40_9leadership-calculation-variable.env
new file mode 100644
index 0000000..c192965
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-variable.env
@@ -0,0 +1,4 @@
+CALCULATE=(value1 value2)
+LEADER_LEADER=(value1 value2)
+LEADER_FOLLOWER1=(val11 val11)
+LEADER_FOLLOWER2=(val21 val21)
diff --git a/tests/results/test/40_9leadership-calculation-variable_leader_follower.env b/tests/results/test/40_9leadership-calculation-variable_leader_follower.env
new file mode 100644
index 0000000..38eca52
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-variable_leader_follower.env
@@ -0,0 +1,4 @@
+LEADERSHIP_1_LEADER=(value1 value2)
+LEADERSHIP_1_FOLLOWER=(string1 string2)
+LEADERSHIP_2_LEADER=(string1 string2)
+LEADERSHIP_2_FOLLOWER=(val val)
diff --git a/tests/results/test/40_9leadership-calculation-variable_leader_follower_not_same.env b/tests/results/test/40_9leadership-calculation-variable_leader_follower_not_same.env
new file mode 100644
index 0000000..c2f69e5
--- /dev/null
+++ b/tests/results/test/40_9leadership-calculation-variable_leader_follower_not_same.env
@@ -0,0 +1,4 @@
+LEADERSHIP_1_LEADER=(value1 value2)
+LEADERSHIP_1_FOLLOWER=(string1 string2)
+LEADERSHIP_2_LEADER=(value1 value2)
+LEADERSHIP_2_FOLLOWER=('value1;value2' 'value1;value2')
diff --git a/tests/results/test/41_0choice_leader.env b/tests/results/test/41_0choice_leader.env
new file mode 100644
index 0000000..0ccf935
--- /dev/null
+++ b/tests/results/test/41_0choice_leader.env
@@ -0,0 +1 @@
+LEADER_LEADER=()
diff --git a/tests/results/test/44_0leadership_hidden.env b/tests/results/test/44_0leadership_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/44_0leadership_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/44_0leadership_leader_hidden.env b/tests/results/test/44_0leadership_leader_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/44_0leadership_leader_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/44_1leadership_append_hidden_follower.env b/tests/results/test/44_1leadership_append_hidden_follower.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/44_1leadership_append_hidden_follower.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/44_4disabled_calcultion_follower_index.env b/tests/results/test/44_4disabled_calcultion_follower_index.env
new file mode 100644
index 0000000..556aee3
--- /dev/null
+++ b/tests/results/test/44_4disabled_calcultion_follower_index.env
@@ -0,0 +1,2 @@
+LEADERSHIP_LEADER=(a b)
+LEADERSHIP_FOLLOWER=('' value)
diff --git a/tests/results/test/44_4leadership_mandatory.env b/tests/results/test/44_4leadership_mandatory.env
new file mode 100644
index 0000000..3fed800
--- /dev/null
+++ b/tests/results/test/44_4leadership_mandatory.env
@@ -0,0 +1,2 @@
+LEADER_LEADER=(string1 string2 string3)
+LEADER_FOLLOWER1=('' '' '')
diff --git a/tests/results/test/44_4leadership_mandatory_follower.env b/tests/results/test/44_4leadership_mandatory_follower.env
new file mode 100644
index 0000000..0ccf935
--- /dev/null
+++ b/tests/results/test/44_4leadership_mandatory_follower.env
@@ -0,0 +1 @@
+LEADER_LEADER=()
diff --git a/tests/results/test/44_5leadership_leader_hidden_calculation.env b/tests/results/test/44_5leadership_leader_hidden_calculation.env
new file mode 100644
index 0000000..26eb32d
--- /dev/null
+++ b/tests/results/test/44_5leadership_leader_hidden_calculation.env
@@ -0,0 +1 @@
+CONDITION=no
diff --git a/tests/results/test/44_6leadership_follower_disabled_calculation.env b/tests/results/test/44_6leadership_follower_disabled_calculation.env
new file mode 100644
index 0000000..0b4c1b2
--- /dev/null
+++ b/tests/results/test/44_6leadership_follower_disabled_calculation.env
@@ -0,0 +1,2 @@
+CONDITION=yes
+LEADER_LEADER=(string1 string2 string3)
diff --git a/tests/results/test/60_0family_dynamic.env b/tests/results/test/60_0family_dynamic.env
new file mode 100644
index 0000000..eb13fe4
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_1_1.env b/tests/results/test/60_0family_dynamic_1_1.env
new file mode 100644
index 0000000..002a428
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_1_1.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VARDYN=string1
+DYNVAL2_VARDYN=string1
diff --git a/tests/results/test/60_0family_dynamic_1_1_empty.env b/tests/results/test/60_0family_dynamic_1_1_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_1_1_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_0family_dynamic_empty.env b/tests/results/test/60_0family_dynamic_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_0family_dynamic_forbidden_char.env b/tests/results/test/60_0family_dynamic_forbidden_char.env
new file mode 100644
index 0000000..8b23606
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_forbidden_char.env
@@ -0,0 +1,5 @@
+VAR=(val.1 val.2)
+DYNVAL_1_VAR1=val.1
+DYNVAL_1_VAR2=val.1
+DYNVAL_2_VAR1=val.2
+DYNVAL_2_VAR2=val.2
diff --git a/tests/results/test/60_0family_dynamic_no_description.env b/tests/results/test/60_0family_dynamic_no_description.env
new file mode 100644
index 0000000..eb13fe4
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_no_description.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_no_description_empty.env b/tests/results/test/60_0family_dynamic_no_description_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_no_description_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_0family_dynamic_source_hidden.env b/tests/results/test/60_0family_dynamic_source_hidden.env
new file mode 100644
index 0000000..1639c13
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_source_hidden.env
@@ -0,0 +1,2 @@
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_static.env b/tests/results/test/60_0family_dynamic_static.env
new file mode 100644
index 0000000..1639c13
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_static.env
@@ -0,0 +1,2 @@
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_test.env b/tests/results/test/60_0family_dynamic_test.env
new file mode 100644
index 0000000..eb13fe4
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_test.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_upper_char.env b/tests/results/test/60_0family_dynamic_upper_char.env
new file mode 100644
index 0000000..9258752
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_upper_char.env
@@ -0,0 +1,3 @@
+VAR=(Val1 VAL2)
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_0family_dynamic_variable.env b/tests/results/test/60_0family_dynamic_variable.env
new file mode 100644
index 0000000..d633a20
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_variable.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VARIABLE=string1
+DYNVAL2_VARIABLE=string1
diff --git a/tests/results/test/60_0family_dynamic_variable_empty.env b/tests/results/test/60_0family_dynamic_variable_empty.env
new file mode 100644
index 0000000..6d587ba
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_variable_empty.env
@@ -0,0 +1,4 @@
+VAR=(string1 string2 string3)
+DYNSTRING1_VAR=val
+DYNSTRING2_VAR=val
+DYNSTRING3_VAR=val
diff --git a/tests/results/test/60_0family_dynamic_variable_optional.env b/tests/results/test/60_0family_dynamic_variable_optional.env
new file mode 100644
index 0000000..d9e3d0a
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_variable_optional.env
@@ -0,0 +1,2 @@
+DYNA_VAR=val
+DYNB_VAR=val
diff --git a/tests/results/test/60_0family_dynamic_variable_suffix.env b/tests/results/test/60_0family_dynamic_variable_suffix.env
new file mode 100644
index 0000000..4cc80e7
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_variable_suffix.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR='a value'
+DYNVAL2_VAR='a value'
diff --git a/tests/results/test/60_0family_dynamic_variable_suffix_empty.env b/tests/results/test/60_0family_dynamic_variable_suffix_empty.env
new file mode 100644
index 0000000..4cc80e7
--- /dev/null
+++ b/tests/results/test/60_0family_dynamic_variable_suffix_empty.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR='a value'
+DYNVAL2_VAR='a value'
diff --git a/tests/results/test/60_0family_empty.env b/tests/results/test/60_0family_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/60_0family_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/60_0family_hidden.env b/tests/results/test/60_0family_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test/60_0family_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test/60_0family_mode.env b/tests/results/test/60_0family_mode.env
new file mode 100644
index 0000000..ca98643
--- /dev/null
+++ b/tests/results/test/60_0family_mode.env
@@ -0,0 +1 @@
+FAMILY_VAR=non
diff --git a/tests/results/test/60_1family_dynamic_jinja.env b/tests/results/test/60_1family_dynamic_jinja.env
new file mode 100644
index 0000000..197ac0b
--- /dev/null
+++ b/tests/results/test/60_1family_dynamic_jinja.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYN1_VAR=val
+DYN2_VAR=val
diff --git a/tests/results/test/60_2family_dynamic_jinja_fill_sub_group.env b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group.env
new file mode 100644
index 0000000..92028cc
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group.env
@@ -0,0 +1,4 @@
+VAR1=(val1 val2)
+DYNVAL1_FAMILY_VAR=string1
+DYNVAL2_FAMILY_VAR=string1
+VAR2=string1
diff --git a/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2.env b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2.env
new file mode 100644
index 0000000..5ad28b2
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2.env
@@ -0,0 +1,4 @@
+VAR=(val1 val2)
+DYNVAL1_FAMILY_VAR=val1
+DYNVAL2_FAMILY_VAR=val2
+VAR2=val1
diff --git a/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2_empty.env b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
new file mode 100644
index 0000000..7241d4e
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
@@ -0,0 +1,2 @@
+VAR=()
+VAR2=''
diff --git a/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_empty.env b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_empty.env
new file mode 100644
index 0000000..702836b
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_jinja_fill_sub_group_empty.env
@@ -0,0 +1,2 @@
+VAR1=()
+VAR2=''
diff --git a/tests/results/test/60_2family_dynamic_outside_calc.env b/tests/results/test/60_2family_dynamic_outside_calc.env
new file mode 100644
index 0000000..a824086
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_outside_calc.env
@@ -0,0 +1,4 @@
+VAR1=(val1 val2)
+DYNVAL1_VAR=val
+DYNVAL2_VAR=val
+NEWVAR=val
diff --git a/tests/results/test/60_2family_dynamic_outside_calc_empty.env b/tests/results/test/60_2family_dynamic_outside_calc_empty.env
new file mode 100644
index 0000000..c782be5
--- /dev/null
+++ b/tests/results/test/60_2family_dynamic_outside_calc_empty.env
@@ -0,0 +1,2 @@
+VAR1=()
+NEWVAR=''
diff --git a/tests/results/test/60_5family_dynamic_calc_description.env b/tests/results/test/60_5family_dynamic_calc_description.env
new file mode 100644
index 0000000..ee883bf
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_description.env
@@ -0,0 +1,4 @@
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
+VAR1=string1
+VAR2=(string1 string1)
diff --git a/tests/results/test/60_5family_dynamic_calc_identifier.env b/tests/results/test/60_5family_dynamic_calc_identifier.env
new file mode 100644
index 0000000..6c2bdc5
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_identifier.env
@@ -0,0 +1,4 @@
+VAR1=(val1 val2)
+DYNVAL1_VAR=val1
+DYNVAL2_VAR=val2
+VAR3=val1
diff --git a/tests/results/test/60_5family_dynamic_calc_identifier_multi.env b/tests/results/test/60_5family_dynamic_calc_identifier_multi.env
new file mode 100644
index 0000000..1103ead
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_identifier_multi.env
@@ -0,0 +1,4 @@
+VAR1=(val1 val2)
+DYNVAL1_VAR=(val1)
+DYNVAL2_VAR=(val2)
+VAR3=(val1)
diff --git a/tests/results/test/60_5family_dynamic_calc_suffix2.env b/tests/results/test/60_5family_dynamic_calc_suffix2.env
new file mode 100644
index 0000000..e71610a
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_suffix2.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR=val1
+DYNVAL2_VAR=val2
diff --git a/tests/results/test/60_5family_dynamic_calc_suffix2_empty.env b/tests/results/test/60_5family_dynamic_calc_suffix2_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_suffix2_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_5family_dynamic_calc_suffix_disabled.env b/tests/results/test/60_5family_dynamic_calc_suffix_disabled.env
new file mode 100644
index 0000000..bdc21fd
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_suffix_disabled.env
@@ -0,0 +1 @@
+DYNVAL2_VAR=string1
diff --git a/tests/results/test/60_5family_dynamic_calc_suffix_param.env b/tests/results/test/60_5family_dynamic_calc_suffix_param.env
new file mode 100644
index 0000000..e71610a
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_suffix_param.env
@@ -0,0 +1,3 @@
+VAR=(val1 val2)
+DYNVAL1_VAR=val1
+DYNVAL2_VAR=val2
diff --git a/tests/results/test/60_5family_dynamic_calc_suffix_param_empty.env b/tests/results/test/60_5family_dynamic_calc_suffix_param_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_suffix_param_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_5family_dynamic_calc_variable.env b/tests/results/test/60_5family_dynamic_calc_variable.env
new file mode 100644
index 0000000..4407c4c
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_variable.env
@@ -0,0 +1,4 @@
+VAR1=(val1 val2)
+DYNVAL1_VAR=string1
+DYNVAL2_VAR=string1
+VAR2=string1
diff --git a/tests/results/test/60_5family_dynamic_calc_variable_disabled.env b/tests/results/test/60_5family_dynamic_calc_variable_disabled.env
new file mode 100644
index 0000000..3d176f2
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_variable_disabled.env
@@ -0,0 +1,4 @@
+DYNVAL1_VAR1=string1
+DYNVAL1_VAR2=string1
+DYNVAL2_VAR1=string1
+DYNVAL2_VAR2=string1
diff --git a/tests/results/test/60_5family_dynamic_calc_variable_disabled_outside.env b/tests/results/test/60_5family_dynamic_calc_variable_disabled_outside.env
new file mode 100644
index 0000000..73dba85
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_variable_disabled_outside.env
@@ -0,0 +1,3 @@
+DYNVAL1_VAR1=string1
+DYNVAL2_VAR1=string1
+VAR2=string1
diff --git a/tests/results/test/60_5family_dynamic_calc_variable_empty.env b/tests/results/test/60_5family_dynamic_calc_variable_empty.env
new file mode 100644
index 0000000..07cad46
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_calc_variable_empty.env
@@ -0,0 +1,2 @@
+VAR1=()
+VAR2=string1
diff --git a/tests/results/test/60_5family_dynamic_hidden_suffix.env b/tests/results/test/60_5family_dynamic_hidden_suffix.env
new file mode 100644
index 0000000..f6190b5
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_hidden_suffix.env
@@ -0,0 +1,2 @@
+DYNVAL1_VAR=''
+DYNVAL1_FAMILY_VAR=''
diff --git a/tests/results/test/60_5family_dynamic_variable_outside_suffix.env b/tests/results/test/60_5family_dynamic_variable_outside_suffix.env
new file mode 100644
index 0000000..78863eb
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_variable_outside_suffix.env
@@ -0,0 +1,4 @@
+VAR=(val1 val2)
+DYN_VAL1_VAR=val1
+DYN_VAL2_VAR=val2
+VAR2=val1
diff --git a/tests/results/test/60_5family_dynamic_variable_outside_suffix_empty.env b/tests/results/test/60_5family_dynamic_variable_outside_suffix_empty.env
new file mode 100644
index 0000000..7241d4e
--- /dev/null
+++ b/tests/results/test/60_5family_dynamic_variable_outside_suffix_empty.env
@@ -0,0 +1,2 @@
+VAR=()
+VAR2=''
diff --git a/tests/results/test/60_6family_dynamic_leadership.env b/tests/results/test/60_6family_dynamic_leadership.env
new file mode 100644
index 0000000..c80a264
--- /dev/null
+++ b/tests/results/test/60_6family_dynamic_leadership.env
@@ -0,0 +1,7 @@
+VAR=(val1 val2)
+DYNVAL1_LEADERSHIP_LEADER=(string1 string2 string3)
+DYNVAL1_LEADERSHIP_FOLLOWER1=('' '' '')
+DYNVAL1_LEADERSHIP_FOLLOWER2=('' '' '')
+DYNVAL2_LEADERSHIP_LEADER=(string1 string2 string3)
+DYNVAL2_LEADERSHIP_FOLLOWER1=('' '' '')
+DYNVAL2_LEADERSHIP_FOLLOWER2=('' '' '')
diff --git a/tests/results/test/60_6family_dynamic_leadership_empty.env b/tests/results/test/60_6family_dynamic_leadership_empty.env
new file mode 100644
index 0000000..0eb083c
--- /dev/null
+++ b/tests/results/test/60_6family_dynamic_leadership_empty.env
@@ -0,0 +1 @@
+VAR=()
diff --git a/tests/results/test/60_6family_subdynamic_inside.env b/tests/results/test/60_6family_subdynamic_inside.env
new file mode 100644
index 0000000..75704bc
--- /dev/null
+++ b/tests/results/test/60_6family_subdynamic_inside.env
@@ -0,0 +1,9 @@
+VAR=(val1 val2)
+DYNVAL1_DYNVAL1_VAR1=string1
+DYNVAL1_DYNVAL1_VAR2=(string1 string2 string3)
+DYNVAL1_DYNVAL2_VAR1=string1
+DYNVAL1_DYNVAL2_VAR2=(string1 string2 string3)
+DYNVAL2_DYNVAL1_VAR1=string1
+DYNVAL2_DYNVAL1_VAR2=(string1 string2 string3)
+DYNVAL2_DYNVAL2_VAR1=string1
+DYNVAL2_DYNVAL2_VAR2=(string1 string1)
diff --git a/tests/results/test/60_9family_dynamic_calc_both.env b/tests/results/test/60_9family_dynamic_calc_both.env
new file mode 100644
index 0000000..6693a43
--- /dev/null
+++ b/tests/results/test/60_9family_dynamic_calc_both.env
@@ -0,0 +1,3 @@
+VAR=val2
+DYNVAL1_VARDYN=string1
+DYNVAL2_VARDYN=string1
diff --git a/tests/results/test/68_0family_leadership_mode.env b/tests/results/test/68_0family_leadership_mode.env
new file mode 100644
index 0000000..0ccf935
--- /dev/null
+++ b/tests/results/test/68_0family_leadership_mode.env
@@ -0,0 +1 @@
+LEADER_LEADER=()
diff --git a/tests/results/test_change/00_0empty.env b/tests/results/test_change/00_0empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/00_0empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/00_0no_variable.env b/tests/results/test_change/00_0no_variable.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/00_0no_variable.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/00_0no_variable_default_version.env b/tests/results/test_change/00_0no_variable_default_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/00_0no_variable_default_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/00_0no_variable_remove_version.env b/tests/results/test_change/00_0no_variable_remove_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/00_0no_variable_remove_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/00_0version_underscore.env b/tests/results/test_change/00_0version_underscore.env
new file mode 100644
index 0000000..8c85580
--- /dev/null
+++ b/tests/results/test_change/00_0version_underscore.env
@@ -0,0 +1 @@
+ROUGAIL_version=string1
diff --git a/tests/results/test_change/00_1empty_variable.env b/tests/results/test_change/00_1empty_variable.env
new file mode 100644
index 0000000..047ad24
--- /dev/null
+++ b/tests/results/test_change/00_1empty_variable.env
@@ -0,0 +1 @@
+ROUGAIL_empty=string1
diff --git a/tests/results/test_change/00_2default_calculated.env b/tests/results/test_change/00_2default_calculated.env
new file mode 100644
index 0000000..a4d45cc
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=no
diff --git a/tests/results/test_change/00_2default_calculated_multi.env b/tests/results/test_change/00_2default_calculated_multi.env
new file mode 100644
index 0000000..2a49227
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no;yes;maybe
+ROUGAIL_var2=no;yes;maybe
diff --git a/tests/results/test_change/00_2default_calculated_params_permissive.env b/tests/results/test_change/00_2default_calculated_params_permissive.env
new file mode 100644
index 0000000..e0c20c4
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_params_permissive.env
@@ -0,0 +1 @@
+ROUGAIL_var2=a_value
diff --git a/tests/results/test_change/00_2default_calculated_variable.env b/tests/results/test_change/00_2default_calculated_variable.env
new file mode 100644
index 0000000..6fedf5d
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=domain1.lan;domain2.lan
+ROUGAIL_var2=domain1.lan;domain2.lan
diff --git a/tests/results/test_change/00_2default_calculated_variable_description.env b/tests/results/test_change/00_2default_calculated_variable_description.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_variable_description.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_2default_calculated_variable_description_multi_line.env b/tests/results/test_change/00_2default_calculated_variable_description_multi_line.env
new file mode 100644
index 0000000..c681be4
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_variable_description_multi_line.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
+ROUGAIL_var3=string1
diff --git a/tests/results/test_change/00_2default_calculated_variable_transitive.env b/tests/results/test_change/00_2default_calculated_variable_transitive.env
new file mode 100644
index 0000000..6fedf5d
--- /dev/null
+++ b/tests/results/test_change/00_2default_calculated_variable_transitive.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=domain1.lan;domain2.lan
+ROUGAIL_var2=domain1.lan;domain2.lan
diff --git a/tests/results/test_change/00_2default_with_exclamation.env b/tests/results/test_change/00_2default_with_exclamation.env
new file mode 100644
index 0000000..e2d6b22
--- /dev/null
+++ b/tests/results/test_change/00_2default_with_exclamation.env
@@ -0,0 +1 @@
+ROUGAIL_var1='My%Val;ue$#!1su:'
diff --git a/tests/results/test_change/00_4load_subfolder.env b/tests/results/test_change/00_4load_subfolder.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_4load_subfolder.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_5load_notype.env b/tests/results/test_change/00_5load_notype.env
new file mode 100644
index 0000000..bb9a9c2
--- /dev/null
+++ b/tests/results/test_change/00_5load_notype.env
@@ -0,0 +1 @@
+ROUGAIL_without_type=non
diff --git a/tests/results/test_change/00_6boolean.env b/tests/results/test_change/00_6boolean.env
new file mode 100644
index 0000000..ed2235f
--- /dev/null
+++ b/tests/results/test_change/00_6boolean.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=1
+ROUGAIL_var2=1
+ROUGAIL_var3=1
+ROUGAIL_var4=0
+ROUGAIL_var5=0
+ROUGAIL_var6=0
diff --git a/tests/results/test_change/00_6boolean_no_mandatory.env b/tests/results/test_change/00_6boolean_no_mandatory.env
new file mode 100644
index 0000000..8f80a03
--- /dev/null
+++ b/tests/results/test_change/00_6boolean_no_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_variable=1
diff --git a/tests/results/test_change/00_6choice.env b/tests/results/test_change/00_6choice.env
new file mode 100644
index 0000000..5195c22
--- /dev/null
+++ b/tests/results/test_change/00_6choice.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=a
+ROUGAIL_var2=a
+ROUGAIL_var3=''
+ROUGAIL_var4=''
+ROUGAIL_var5=a
+ROUGAIL_var6=1
diff --git a/tests/results/test_change/00_6choice_calculation.env b/tests/results/test_change/00_6choice_calculation.env
new file mode 100644
index 0000000..c0164c7
--- /dev/null
+++ b/tests/results/test_change/00_6choice_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_var=9
diff --git a/tests/results/test_change/00_6choice_link.env b/tests/results/test_change/00_6choice_link.env
new file mode 100644
index 0000000..a60f979
--- /dev/null
+++ b/tests/results/test_change/00_6choice_link.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=a
+ROUGAIL_var2=a
diff --git a/tests/results/test_change/00_6choice_variable.env b/tests/results/test_change/00_6choice_variable.env
new file mode 100644
index 0000000..6186cad
--- /dev/null
+++ b/tests/results/test_change/00_6choice_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=a;b;c
+ROUGAIL_var2=a
diff --git a/tests/results/test_change/00_6choice_variable_link.env b/tests/results/test_change/00_6choice_variable_link.env
new file mode 100644
index 0000000..81f6236
--- /dev/null
+++ b/tests/results/test_change/00_6choice_variable_link.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=a;b;c
+ROUGAIL_var2=a
+ROUGAIL_var3=a
diff --git a/tests/results/test_change/00_6choice_variable_link2.env b/tests/results/test_change/00_6choice_variable_link2.env
new file mode 100644
index 0000000..81f6236
--- /dev/null
+++ b/tests/results/test_change/00_6choice_variable_link2.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=a;b;c
+ROUGAIL_var2=a
+ROUGAIL_var3=a
diff --git a/tests/results/test_change/00_6custom.env b/tests/results/test_change/00_6custom.env
new file mode 100644
index 0000000..1b08a10
--- /dev/null
+++ b/tests/results/test_change/00_6custom.env
@@ -0,0 +1,2 @@
+ROUGAIL_custom1=string1
+ROUGAIL_custom2=value
diff --git a/tests/results/test_change/00_6domainname.env b/tests/results/test_change/00_6domainname.env
new file mode 100644
index 0000000..612916f
--- /dev/null
+++ b/tests/results/test_change/00_6domainname.env
@@ -0,0 +1 @@
+ROUGAIL_variable=my.domain.name
diff --git a/tests/results/test_change/00_6domainname_params.env b/tests/results/test_change/00_6domainname_params.env
new file mode 100644
index 0000000..612916f
--- /dev/null
+++ b/tests/results/test_change/00_6domainname_params.env
@@ -0,0 +1 @@
+ROUGAIL_variable=my.domain.name
diff --git a/tests/results/test_change/00_6float.env b/tests/results/test_change/00_6float.env
new file mode 100644
index 0000000..9b36ef7
--- /dev/null
+++ b/tests/results/test_change/00_6float.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=0.0
+ROUGAIL_var2=0.0
+ROUGAIL_var3=0.0
+ROUGAIL_var4=10.1
+ROUGAIL_var5=10.1
+ROUGAIL_var6=10.1
diff --git a/tests/results/test_change/00_6integer.env b/tests/results/test_change/00_6integer.env
new file mode 100644
index 0000000..d5e1659
--- /dev/null
+++ b/tests/results/test_change/00_6integer.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=0
+ROUGAIL_var2=0
+ROUGAIL_var3=0
+ROUGAIL_var4=10
+ROUGAIL_var5=10
+ROUGAIL_var6=10
diff --git a/tests/results/test_change/00_6ip.env b/tests/results/test_change/00_6ip.env
new file mode 100644
index 0000000..91e20af
--- /dev/null
+++ b/tests/results/test_change/00_6ip.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=1.1.1.1
+ROUGAIL_var2=1.1.1.1/24
+ROUGAIL_var3=1.1.1.1/24
diff --git a/tests/results/test_change/00_6network.env b/tests/results/test_change/00_6network.env
new file mode 100644
index 0000000..c586368
--- /dev/null
+++ b/tests/results/test_change/00_6network.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=1.1.1.0
+ROUGAIL_var2=1.1.1.0/24
+ROUGAIL_var3=1.1.1.0/24
diff --git a/tests/results/test_change/00_6number.env b/tests/results/test_change/00_6number.env
new file mode 100644
index 0000000..d5e1659
--- /dev/null
+++ b/tests/results/test_change/00_6number.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=0
+ROUGAIL_var2=0
+ROUGAIL_var3=0
+ROUGAIL_var4=10
+ROUGAIL_var5=10
+ROUGAIL_var6=10
diff --git a/tests/results/test_change/00_6port.env b/tests/results/test_change/00_6port.env
new file mode 100644
index 0000000..8e6a6f0
--- /dev/null
+++ b/tests/results/test_change/00_6port.env
@@ -0,0 +1,3 @@
+ROUGAIL_variable1=80
+ROUGAIL_variable2=8080
+ROUGAIL_variable3=8080
diff --git a/tests/results/test_change/00_6regexp.env b/tests/results/test_change/00_6regexp.env
new file mode 100644
index 0000000..82215b3
--- /dev/null
+++ b/tests/results/test_change/00_6regexp.env
@@ -0,0 +1 @@
+ROUGAIL_var='#a1a1a1'
diff --git a/tests/results/test_change/00_6regexp_link.env b/tests/results/test_change/00_6regexp_link.env
new file mode 100644
index 0000000..5df0018
--- /dev/null
+++ b/tests/results/test_change/00_6regexp_link.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1='#a1a1a1'
+ROUGAIL_var2='#a1a1a1'
diff --git a/tests/results/test_change/00_6secret.env b/tests/results/test_change/00_6secret.env
new file mode 100644
index 0000000..ec7822f
--- /dev/null
+++ b/tests/results/test_change/00_6secret.env
@@ -0,0 +1,2 @@
+ROUGAIL_secret1=onE7vaLues_len1
+ROUGAIL_secret2=value
diff --git a/tests/results/test_change/00_6secret_param.env b/tests/results/test_change/00_6secret_param.env
new file mode 100644
index 0000000..2a95bfb
--- /dev/null
+++ b/tests/results/test_change/00_6secret_param.env
@@ -0,0 +1,3 @@
+ROUGAIL_secret1=onE7vaLues_len1
+ROUGAIL_secret2=value
+ROUGAIL_secret3=value
diff --git a/tests/results/test_change/00_6string.env b/tests/results/test_change/00_6string.env
new file mode 100644
index 0000000..4c1c904
--- /dev/null
+++ b/tests/results/test_change/00_6string.env
@@ -0,0 +1,8 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
+ROUGAIL_var3=string1
+ROUGAIL_var4=value
+ROUGAIL_var5=value
+ROUGAIL_var6=value
+ROUGAIL_var7=8080
+ROUGAIL_var8=true
diff --git a/tests/results/test_change/00_7choice_quote.env b/tests/results/test_change/00_7choice_quote.env
new file mode 100644
index 0000000..03780b1
--- /dev/null
+++ b/tests/results/test_change/00_7choice_quote.env
@@ -0,0 +1 @@
+ROUGAIL_var='quote'"'"''
diff --git a/tests/results/test_change/00_7help.env b/tests/results/test_change/00_7help.env
new file mode 100644
index 0000000..c681be4
--- /dev/null
+++ b/tests/results/test_change/00_7help.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
+ROUGAIL_var3=string1
diff --git a/tests/results/test_change/00_7help_quote.env b/tests/results/test_change/00_7help_quote.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_7help_quote.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_7help_sup.env b/tests/results/test_change/00_7help_sup.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_7help_sup.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_7value_doublequote.env b/tests/results/test_change/00_7value_doublequote.env
new file mode 100644
index 0000000..e2ac841
--- /dev/null
+++ b/tests/results/test_change/00_7value_doublequote.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote"'
diff --git a/tests/results/test_change/00_7value_doublequote2.env b/tests/results/test_change/00_7value_doublequote2.env
new file mode 100644
index 0000000..b022c63
--- /dev/null
+++ b/tests/results/test_change/00_7value_doublequote2.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote'"'"'"'
diff --git a/tests/results/test_change/00_7value_doublequote3.env b/tests/results/test_change/00_7value_doublequote3.env
new file mode 100644
index 0000000..e6fd40b
--- /dev/null
+++ b/tests/results/test_change/00_7value_doublequote3.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote\"\'"'"''
diff --git a/tests/results/test_change/00_7value_quote.env b/tests/results/test_change/00_7value_quote.env
new file mode 100644
index 0000000..9b6f6b6
--- /dev/null
+++ b/tests/results/test_change/00_7value_quote.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote'"'"''
diff --git a/tests/results/test_change/00_8calculation_information.env b/tests/results/test_change/00_8calculation_information.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/00_8calculation_information.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/00_8test.env b/tests/results/test_change/00_8test.env
new file mode 100644
index 0000000..630136d
--- /dev/null
+++ b/tests/results/test_change/00_8test.env
@@ -0,0 +1,6 @@
+ROUGAIL_var1=test
+ROUGAIL_var2=value
+ROUGAIL_var3=test1
+ROUGAIL_var4=''
+ROUGAIL_var5=1
+ROUGAIL_var6=test1;test2
diff --git a/tests/results/test_change/00_9choice_variable_multi.env b/tests/results/test_change/00_9choice_variable_multi.env
new file mode 100644
index 0000000..087859c
--- /dev/null
+++ b/tests/results/test_change/00_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_variable1=val1;val2
+ROUGAIL_variable2=
diff --git a/tests/results/test_change/00_9choice_variables.env b/tests/results/test_change/00_9choice_variables.env
new file mode 100644
index 0000000..46f43a5
--- /dev/null
+++ b/tests/results/test_change/00_9choice_variables.env
@@ -0,0 +1,3 @@
+ROUGAIL_source_variable_1=val1
+ROUGAIL_source_variable_2=val2
+ROUGAIL_my_variable=val1
diff --git a/tests/results/test_change/00_9default_calculation.env b/tests/results/test_change/00_9default_calculation.env
new file mode 100644
index 0000000..ba35897
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string_1_True_None
diff --git a/tests/results/test_change/00_9default_calculation_information.env b/tests/results/test_change/00_9default_calculation_information.env
new file mode 100644
index 0000000..3db51d1
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_information.env
@@ -0,0 +1 @@
+ROUGAIL_var=string1
diff --git a/tests/results/test_change/00_9default_calculation_information_other_variable.env b/tests/results/test_change/00_9default_calculation_information_other_variable.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_information_other_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_9default_calculation_multi_optional.env b/tests/results/test_change/00_9default_calculation_multi_optional.env
new file mode 100644
index 0000000..d325b33
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_multi_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_my_variable=val1
+ROUGAIL_my_calculated_variable=val1
diff --git a/tests/results/test_change/00_9default_calculation_multi_optional2.env b/tests/results/test_change/00_9default_calculation_multi_optional2.env
new file mode 100644
index 0000000..d325b33
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_multi_optional2.env
@@ -0,0 +1,2 @@
+ROUGAIL_my_variable=val1
+ROUGAIL_my_calculated_variable=val1
diff --git a/tests/results/test_change/00_9default_calculation_multi_optional_default.env b/tests/results/test_change/00_9default_calculation_multi_optional_default.env
new file mode 100644
index 0000000..b7ab09f
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_multi_optional_default.env
@@ -0,0 +1,2 @@
+ROUGAIL_my_variable=val1
+ROUGAIL_my_calculated_variable=val1;value
diff --git a/tests/results/test_change/00_9default_calculation_optional.env b/tests/results/test_change/00_9default_calculation_optional.env
new file mode 100644
index 0000000..1937315
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_optional.env
@@ -0,0 +1 @@
+ROUGAIL_my_calculated_variable=string1;string2;string3
diff --git a/tests/results/test_change/00_9default_calculation_optional_exists.env b/tests/results/test_change/00_9default_calculation_optional_exists.env
new file mode 100644
index 0000000..6e4bdf3
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_optional_exists.env
@@ -0,0 +1,2 @@
+ROUGAIL_my_variable=val1;val2
+ROUGAIL_my_calculated_variable=val1;val2
diff --git a/tests/results/test_change/00_9default_calculation_param_optional.env b/tests/results/test_change/00_9default_calculation_param_optional.env
new file mode 100644
index 0000000..a4d45cc
--- /dev/null
+++ b/tests/results/test_change/00_9default_calculation_param_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=no
diff --git a/tests/results/test_change/00_9default_information_other_variable.env b/tests/results/test_change/00_9default_information_other_variable.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_9default_information_other_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_9default_information_other_variable2.env b/tests/results/test_change/00_9default_information_other_variable2.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/00_9default_information_other_variable2.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/00_9default_integer.env b/tests/results/test_change/00_9default_integer.env
new file mode 100644
index 0000000..c0164c7
--- /dev/null
+++ b/tests/results/test_change/00_9default_integer.env
@@ -0,0 +1 @@
+ROUGAIL_var=9
diff --git a/tests/results/test_change/00_9default_number.env b/tests/results/test_change/00_9default_number.env
new file mode 100644
index 0000000..c0164c7
--- /dev/null
+++ b/tests/results/test_change/00_9default_number.env
@@ -0,0 +1 @@
+ROUGAIL_var=9
diff --git a/tests/results/test_change/01_6boolean_multi.env b/tests/results/test_change/01_6boolean_multi.env
new file mode 100644
index 0000000..b695ba2
--- /dev/null
+++ b/tests/results/test_change/01_6boolean_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_var1=1
+ROUGAIL_var2=1
+ROUGAIL_var3=1
+ROUGAIL_var4=0
+ROUGAIL_var5=0
+ROUGAIL_var6=0
+ROUGAIL_var7=1
+ROUGAIL_var8=1
diff --git a/tests/results/test_change/01_6custom_multi.env b/tests/results/test_change/01_6custom_multi.env
new file mode 100644
index 0000000..c50c1a2
--- /dev/null
+++ b/tests/results/test_change/01_6custom_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_custom1=string1;string2;string3
+ROUGAIL_custom2=value
diff --git a/tests/results/test_change/01_6float_multi.env b/tests/results/test_change/01_6float_multi.env
new file mode 100644
index 0000000..4c8a8ef
--- /dev/null
+++ b/tests/results/test_change/01_6float_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_var1=0.0
+ROUGAIL_var2=0.0
+ROUGAIL_var3=0.0
+ROUGAIL_var4=10.1
+ROUGAIL_var5=10.1
+ROUGAIL_var6=10.1
+ROUGAIL_var7=0.0
+ROUGAIL_var8=0.0
diff --git a/tests/results/test_change/01_6integer_multi.env b/tests/results/test_change/01_6integer_multi.env
new file mode 100644
index 0000000..d9048c5
--- /dev/null
+++ b/tests/results/test_change/01_6integer_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_var1=0
+ROUGAIL_var2=0
+ROUGAIL_var3=0
+ROUGAIL_var4=10
+ROUGAIL_var5=10
+ROUGAIL_var6=10
+ROUGAIL_var7=0
+ROUGAIL_var8=0
diff --git a/tests/results/test_change/01_6integer_multi_mandatory.env b/tests/results/test_change/01_6integer_multi_mandatory.env
new file mode 100644
index 0000000..3e76fc3
--- /dev/null
+++ b/tests/results/test_change/01_6integer_multi_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_var=1;2;3
diff --git a/tests/results/test_change/01_6string_empty.env b/tests/results/test_change/01_6string_empty.env
new file mode 100644
index 0000000..a6c06ce
--- /dev/null
+++ b/tests/results/test_change/01_6string_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var1=value;''
diff --git a/tests/results/test_change/01_6string_multi.env b/tests/results/test_change/01_6string_multi.env
new file mode 100644
index 0000000..effc2a5
--- /dev/null
+++ b/tests/results/test_change/01_6string_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_var1=string1;string2;string3
+ROUGAIL_var2=string1;string2;string3
+ROUGAIL_var3=string1;string2;string3
+ROUGAIL_var4=value
+ROUGAIL_var5=value
+ROUGAIL_var6=value
+ROUGAIL_var7=value
+ROUGAIL_var8=value
diff --git a/tests/results/test_change/01_6string_multi_length.env b/tests/results/test_change/01_6string_multi_length.env
new file mode 100644
index 0000000..858506f
--- /dev/null
+++ b/tests/results/test_change/01_6string_multi_length.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=val1;val2;val3
+ROUGAIL_var2=val4;val5
diff --git a/tests/results/test_change/01_7value_multi_doublequote.env b/tests/results/test_change/01_7value_multi_doublequote.env
new file mode 100644
index 0000000..e2ac841
--- /dev/null
+++ b/tests/results/test_change/01_7value_multi_doublequote.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote"'
diff --git a/tests/results/test_change/01_7value_multi_doublequote2.env b/tests/results/test_change/01_7value_multi_doublequote2.env
new file mode 100644
index 0000000..b022c63
--- /dev/null
+++ b/tests/results/test_change/01_7value_multi_doublequote2.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote'"'"'"'
diff --git a/tests/results/test_change/01_7value_multi_quote.env b/tests/results/test_change/01_7value_multi_quote.env
new file mode 100644
index 0000000..9b6f6b6
--- /dev/null
+++ b/tests/results/test_change/01_7value_multi_quote.env
@@ -0,0 +1 @@
+ROUGAIL_variable='quote'"'"''
diff --git a/tests/results/test_change/01_8calculation_information_multi.env b/tests/results/test_change/01_8calculation_information_multi.env
new file mode 100644
index 0000000..71dbc12
--- /dev/null
+++ b/tests/results/test_change/01_8calculation_information_multi.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1;string2;string3
diff --git a/tests/results/test_change/01_9choice_variable_multi.env b/tests/results/test_change/01_9choice_variable_multi.env
new file mode 100644
index 0000000..b634de6
--- /dev/null
+++ b/tests/results/test_change/01_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_variable1=a;b;c
+ROUGAIL_variable2=a
diff --git a/tests/results/test_change/01_9choice_variable_optional.env b/tests/results/test_change/01_9choice_variable_optional.env
new file mode 100644
index 0000000..2112b27
--- /dev/null
+++ b/tests/results/test_change/01_9choice_variable_optional.env
@@ -0,0 +1 @@
+ROUGAIL_variable=c
diff --git a/tests/results/test_change/02_0tags.env b/tests/results/test_change/02_0tags.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/02_0tags.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/04_0type_param.env b/tests/results/test_change/04_0type_param.env
new file mode 100644
index 0000000..f97a29c
--- /dev/null
+++ b/tests/results/test_change/04_0type_param.env
@@ -0,0 +1 @@
+ROUGAIL_int=10
diff --git a/tests/results/test_change/04_0type_param_integer.env b/tests/results/test_change/04_0type_param_integer.env
new file mode 100644
index 0000000..f97a29c
--- /dev/null
+++ b/tests/results/test_change/04_0type_param_integer.env
@@ -0,0 +1 @@
+ROUGAIL_int=10
diff --git a/tests/results/test_change/04_1auto_save.env b/tests/results/test_change/04_1auto_save.env
new file mode 100644
index 0000000..3cc528a
--- /dev/null
+++ b/tests/results/test_change/04_1auto_save.env
@@ -0,0 +1 @@
+ROUGAIL_variable=no
diff --git a/tests/results/test_change/04_1auto_save_and_calculated.env b/tests/results/test_change/04_1auto_save_and_calculated.env
new file mode 100644
index 0000000..a4d45cc
--- /dev/null
+++ b/tests/results/test_change/04_1auto_save_and_calculated.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=no
diff --git a/tests/results/test_change/04_1auto_save_and_calculated_hidden.env b/tests/results/test_change/04_1auto_save_and_calculated_hidden.env
new file mode 100644
index 0000000..0ee2d8c
--- /dev/null
+++ b/tests/results/test_change/04_1auto_save_and_calculated_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=yes
diff --git a/tests/results/test_change/04_1auto_save_and_hidden.env b/tests/results/test_change/04_1auto_save_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/04_1auto_save_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/04_1default_calculation_hidden.env b/tests/results/test_change/04_1default_calculation_hidden.env
new file mode 100644
index 0000000..1a97bd1
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=value
+ROUGAIL_var3=value
diff --git a/tests/results/test_change/04_1default_calculation_hidden_2.env b/tests/results/test_change/04_1default_calculation_hidden_2.env
new file mode 100644
index 0000000..60f1f37
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden_2.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=value
+ROUGAIL_var3=string1
diff --git a/tests/results/test_change/04_1default_calculation_hidden_3.env b/tests/results/test_change/04_1default_calculation_hidden_3.env
new file mode 100644
index 0000000..8277787
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden_3.env
@@ -0,0 +1 @@
+ROUGAIL_var3=value
diff --git a/tests/results/test_change/04_1default_calculation_hidden_4.env b/tests/results/test_change/04_1default_calculation_hidden_4.env
new file mode 100644
index 0000000..43cee50
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden_4.env
@@ -0,0 +1,2 @@
+ROUGAIL_var2=string1
+ROUGAIL_var3=value
diff --git a/tests/results/test_change/04_1default_calculation_hidden_5.env b/tests/results/test_change/04_1default_calculation_hidden_5.env
new file mode 100644
index 0000000..ef4c830
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden_5.env
@@ -0,0 +1 @@
+ROUGAIL_var1=value
diff --git a/tests/results/test_change/04_1default_calculation_hidden_6.env b/tests/results/test_change/04_1default_calculation_hidden_6.env
new file mode 100644
index 0000000..60f1f37
--- /dev/null
+++ b/tests/results/test_change/04_1default_calculation_hidden_6.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=value
+ROUGAIL_var3=string1
diff --git a/tests/results/test_change/04_1jinja_and_hidden.env b/tests/results/test_change/04_1jinja_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/04_1jinja_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/04_5disabled_calculation_boolean.env b/tests/results/test_change/04_5disabled_calculation_boolean.env
new file mode 100644
index 0000000..af241b6
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_boolean.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=no
+ROUGAIL_variable1=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_optional.env b/tests/results/test_change/04_5disabled_calculation_optional.env
new file mode 100644
index 0000000..456e305
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_optional.env
@@ -0,0 +1 @@
+ROUGAIL_condition=no
diff --git a/tests/results/test_change/04_5disabled_calculation_optional_default.env b/tests/results/test_change/04_5disabled_calculation_optional_default.env
new file mode 100644
index 0000000..14bb3fe
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_optional_default.env
@@ -0,0 +1,4 @@
+ROUGAIL_condition=0
+ROUGAIL_var1=''
+ROUGAIL_var3=''
+ROUGAIL_var4=''
diff --git a/tests/results/test_change/04_5disabled_calculation_variable.env b/tests/results/test_change/04_5disabled_calculation_variable.env
new file mode 100644
index 0000000..a658037
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=0
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable10.env b/tests/results/test_change/04_5disabled_calculation_variable10.env
new file mode 100644
index 0000000..879c86b
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable10.env
@@ -0,0 +1 @@
+ROUGAIL_condition=1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable2.env b/tests/results/test_change/04_5disabled_calculation_variable2.env
new file mode 100644
index 0000000..879c86b
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable2.env
@@ -0,0 +1 @@
+ROUGAIL_condition=1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable3.env b/tests/results/test_change/04_5disabled_calculation_variable3.env
new file mode 100644
index 0000000..8f0f078
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable3.env
@@ -0,0 +1 @@
+ROUGAIL_condition=yes
diff --git a/tests/results/test_change/04_5disabled_calculation_variable4.env b/tests/results/test_change/04_5disabled_calculation_variable4.env
new file mode 100644
index 0000000..0915f25
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable4.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=yes
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable5.env b/tests/results/test_change/04_5disabled_calculation_variable5.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable5.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable6.env b/tests/results/test_change/04_5disabled_calculation_variable6.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable6.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable7.env b/tests/results/test_change/04_5disabled_calculation_variable7.env
new file mode 100644
index 0000000..a658037
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable7.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=0
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable8.env b/tests/results/test_change/04_5disabled_calculation_variable8.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable8.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/04_5disabled_calculation_variable9.env b/tests/results/test_change/04_5disabled_calculation_variable9.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable9.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable_multi.env b/tests/results/test_change/04_5disabled_calculation_variable_multi.env
new file mode 100644
index 0000000..a7f42bd
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=0
+ROUGAIL_variable=string1;string2;string3
diff --git a/tests/results/test_change/04_5disabled_calculation_variable_transitive.env b/tests/results/test_change/04_5disabled_calculation_variable_transitive.env
new file mode 100644
index 0000000..879c86b
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable_transitive.env
@@ -0,0 +1 @@
+ROUGAIL_condition=1
diff --git a/tests/results/test_change/04_5disabled_calculation_variable_transitive_2.env b/tests/results/test_change/04_5disabled_calculation_variable_transitive_2.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable_transitive_2.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/04_5disabled_calculation_variable_transitive_3.env b/tests/results/test_change/04_5disabled_calculation_variable_transitive_3.env
new file mode 100644
index 0000000..9702f5d
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable_transitive_3.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=0
+ROUGAIL_variable1=disabled
diff --git a/tests/results/test_change/04_5disabled_calculation_variable_transitive_4.env b/tests/results/test_change/04_5disabled_calculation_variable_transitive_4.env
new file mode 100644
index 0000000..879c86b
--- /dev/null
+++ b/tests/results/test_change/04_5disabled_calculation_variable_transitive_4.env
@@ -0,0 +1 @@
+ROUGAIL_condition=1
diff --git a/tests/results/test_change/04_5validators.env b/tests/results/test_change/04_5validators.env
new file mode 100644
index 0000000..88d37da
--- /dev/null
+++ b/tests/results/test_change/04_5validators.env
@@ -0,0 +1 @@
+ROUGAIL_int=1
diff --git a/tests/results/test_change/04_5validators_differ.env b/tests/results/test_change/04_5validators_differ.env
new file mode 100644
index 0000000..fde757e
--- /dev/null
+++ b/tests/results/test_change/04_5validators_differ.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=oui
+ROUGAIL_var2=no
diff --git a/tests/results/test_change/04_5validators_multi.env b/tests/results/test_change/04_5validators_multi.env
new file mode 100644
index 0000000..93597ed
--- /dev/null
+++ b/tests/results/test_change/04_5validators_multi.env
@@ -0,0 +1 @@
+ROUGAIL_var1=no;yes
diff --git a/tests/results/test_change/04_5validators_multi2.env b/tests/results/test_change/04_5validators_multi2.env
new file mode 100644
index 0000000..93597ed
--- /dev/null
+++ b/tests/results/test_change/04_5validators_multi2.env
@@ -0,0 +1 @@
+ROUGAIL_var1=no;yes
diff --git a/tests/results/test_change/04_5validators_multi3.env b/tests/results/test_change/04_5validators_multi3.env
new file mode 100644
index 0000000..1224d03
--- /dev/null
+++ b/tests/results/test_change/04_5validators_multi3.env
@@ -0,0 +1 @@
+ROUGAIL_var1=0;1;2
diff --git a/tests/results/test_change/04_5validators_warnings.env b/tests/results/test_change/04_5validators_warnings.env
new file mode 100644
index 0000000..021407e
--- /dev/null
+++ b/tests/results/test_change/04_5validators_warnings.env
@@ -0,0 +1 @@
+ROUGAIL_int=1000
diff --git a/tests/results/test_change/04_5validators_warnings_all.env b/tests/results/test_change/04_5validators_warnings_all.env
new file mode 100644
index 0000000..021407e
--- /dev/null
+++ b/tests/results/test_change/04_5validators_warnings_all.env
@@ -0,0 +1 @@
+ROUGAIL_int=1000
diff --git a/tests/results/test_change/05_0multi_not_uniq.env b/tests/results/test_change/05_0multi_not_uniq.env
new file mode 100644
index 0000000..d631b5f
--- /dev/null
+++ b/tests/results/test_change/05_0multi_not_uniq.env
@@ -0,0 +1 @@
+ROUGAIL_var1=non
diff --git a/tests/results/test_change/05_0multi_uniq.env b/tests/results/test_change/05_0multi_uniq.env
new file mode 100644
index 0000000..2257769
--- /dev/null
+++ b/tests/results/test_change/05_0multi_uniq.env
@@ -0,0 +1 @@
+ROUGAIL_variable=non
diff --git a/tests/results/test_change/12_1auto_save_expert.env b/tests/results/test_change/12_1auto_save_expert.env
new file mode 100644
index 0000000..bd66ae7
--- /dev/null
+++ b/tests/results/test_change/12_1auto_save_expert.env
@@ -0,0 +1 @@
+ROUGAIL_var=no
diff --git a/tests/results/test_change/16_0redefine_description.env b/tests/results/test_change/16_0redefine_description.env
new file mode 100644
index 0000000..3db51d1
--- /dev/null
+++ b/tests/results/test_change/16_0redefine_description.env
@@ -0,0 +1 @@
+ROUGAIL_var=string1
diff --git a/tests/results/test_change/16_2family_redefine_calculation.env b/tests/results/test_change/16_2family_redefine_calculation.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/16_2family_redefine_calculation.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/16_2family_redefine_disabled.env b/tests/results/test_change/16_2family_redefine_disabled.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/16_2family_redefine_disabled.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/16_3family_empty_at_ends.env b/tests/results/test_change/16_3family_empty_at_ends.env
new file mode 100644
index 0000000..921001d
--- /dev/null
+++ b/tests/results/test_change/16_3family_empty_at_ends.env
@@ -0,0 +1 @@
+ROUGAIL_var1=string1
diff --git a/tests/results/test_change/16_5exists_nonexists.env b/tests/results/test_change/16_5exists_nonexists.env
new file mode 100644
index 0000000..0ee2d8c
--- /dev/null
+++ b/tests/results/test_change/16_5exists_nonexists.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=yes
diff --git a/tests/results/test_change/16_5exists_redefine.env b/tests/results/test_change/16_5exists_redefine.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/16_5exists_redefine.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/16_5redefine_calculation.env b/tests/results/test_change/16_5redefine_calculation.env
new file mode 100644
index 0000000..a64d514
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_variable=yes
diff --git a/tests/results/test_change/16_5redefine_choice.env b/tests/results/test_change/16_5redefine_choice.env
new file mode 100644
index 0000000..ec3b8d8
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_choice.env
@@ -0,0 +1 @@
+ROUGAIL_variable=a
diff --git a/tests/results/test_change/16_5redefine_default.env b/tests/results/test_change/16_5redefine_default.env
new file mode 100644
index 0000000..a64d514
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_default.env
@@ -0,0 +1 @@
+ROUGAIL_variable=yes
diff --git a/tests/results/test_change/16_5redefine_default_calculation.env b/tests/results/test_change/16_5redefine_default_calculation.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_default_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/16_5redefine_family.env b/tests/results/test_change/16_5redefine_family.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_family.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/16_5redefine_help.env b/tests/results/test_change/16_5redefine_help.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_help.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/16_5redefine_hidden.env b/tests/results/test_change/16_5redefine_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/16_5redefine_multi.env b/tests/results/test_change/16_5redefine_multi.env
new file mode 100644
index 0000000..2257769
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_multi.env
@@ -0,0 +1 @@
+ROUGAIL_variable=non
diff --git a/tests/results/test_change/16_5redefine_remove_disable_calculation.env b/tests/results/test_change/16_5redefine_remove_disable_calculation.env
new file mode 100644
index 0000000..0e138ef
--- /dev/null
+++ b/tests/results/test_change/16_5redefine_remove_disable_calculation.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=no
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/16_5test_redefine.env b/tests/results/test_change/16_5test_redefine.env
new file mode 100644
index 0000000..15ed544
--- /dev/null
+++ b/tests/results/test_change/16_5test_redefine.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=non
+ROUGAIL_var3=string1
diff --git a/tests/results/test_change/16_6choice_redefine.env b/tests/results/test_change/16_6choice_redefine.env
new file mode 100644
index 0000000..35a219d
--- /dev/null
+++ b/tests/results/test_change/16_6choice_redefine.env
@@ -0,0 +1 @@
+ROUGAIL_var=c
diff --git a/tests/results/test_change/16_6exists_family.env b/tests/results/test_change/16_6exists_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/16_6exists_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/16_6exists_redefine_family.env b/tests/results/test_change/16_6exists_redefine_family.env
new file mode 100644
index 0000000..ab48e3f
--- /dev/null
+++ b/tests/results/test_change/16_6exists_redefine_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_variable1=string1
+ROUGAIL_variable2=string1
diff --git a/tests/results/test_change/16exists_exists.env b/tests/results/test_change/16exists_exists.env
new file mode 100644
index 0000000..3db51d1
--- /dev/null
+++ b/tests/results/test_change/16exists_exists.env
@@ -0,0 +1 @@
+ROUGAIL_var=string1
diff --git a/tests/results/test_change/17_5redefine_leadership.env b/tests/results/test_change/17_5redefine_leadership.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/17_5redefine_leadership.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/20_0empty_family.env b/tests/results/test_change/20_0empty_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/20_0empty_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/20_0family_append.env b/tests/results/test_change/20_0family_append.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/20_0family_append.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/20_0family_underscore.env b/tests/results/test_change/20_0family_underscore.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/20_0family_underscore.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/20_0multi_family.env b/tests/results/test_change/20_0multi_family.env
new file mode 100644
index 0000000..e2e5242
--- /dev/null
+++ b/tests/results/test_change/20_0multi_family.env
@@ -0,0 +1 @@
+ROUGAIL_variable=''
diff --git a/tests/results/test_change/20_0multi_family_basic.env b/tests/results/test_change/20_0multi_family_basic.env
new file mode 100644
index 0000000..421eca5
--- /dev/null
+++ b/tests/results/test_change/20_0multi_family_basic.env
@@ -0,0 +1 @@
+ROUGAIL_variable=string1
diff --git a/tests/results/test_change/20_0multi_family_expert.env b/tests/results/test_change/20_0multi_family_expert.env
new file mode 100644
index 0000000..e2e5242
--- /dev/null
+++ b/tests/results/test_change/20_0multi_family_expert.env
@@ -0,0 +1 @@
+ROUGAIL_variable=''
diff --git a/tests/results/test_change/20_0multi_family_order.duplicate b/tests/results/test_change/20_0multi_family_order.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/20_0validators_differ_redefine.env b/tests/results/test_change/20_0validators_differ_redefine.env
new file mode 100644
index 0000000..9fd8003
--- /dev/null
+++ b/tests/results/test_change/20_0validators_differ_redefine.env
@@ -0,0 +1,3 @@
+ROUGAIL_var1=no
+ROUGAIL_var2=no
+ROUGAIL_var3=yes
diff --git a/tests/results/test_change/20_1empty_subfamily.env b/tests/results/test_change/20_1empty_subfamily.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/20_1empty_subfamily.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/20_2family_looks_like_dynamic.env b/tests/results/test_change/20_2family_looks_like_dynamic.env
new file mode 100644
index 0000000..43e2eb1
--- /dev/null
+++ b/tests/results/test_change/20_2family_looks_like_dynamic.env
@@ -0,0 +1,2 @@
+ROUGAIL_dynamic=val1;val2
+ROUGAIL_var=1
diff --git a/tests/results/test_change/20_2family_looks_like_variable.env b/tests/results/test_change/20_2family_looks_like_variable.env
new file mode 100644
index 0000000..d0de9b8
--- /dev/null
+++ b/tests/results/test_change/20_2family_looks_like_variable.env
@@ -0,0 +1 @@
+ROUGAIL_default=1
diff --git a/tests/results/test_change/20_7help_family.duplicate b/tests/results/test_change/20_7help_family.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/20_9default_information_parent.env b/tests/results/test_change/20_9default_information_parent.env
new file mode 100644
index 0000000..9163ead
--- /dev/null
+++ b/tests/results/test_change/20_9default_information_parent.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=string1
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/20_9family_absolute.duplicate b/tests/results/test_change/20_9family_absolute.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/24_0family_hidden_condition_sub_family.env b/tests/results/test_change/24_0family_hidden_condition_sub_family.env
new file mode 100644
index 0000000..1049417
--- /dev/null
+++ b/tests/results/test_change/24_0family_hidden_condition_sub_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=no
+ROUGAIL_var1=string1
diff --git a/tests/results/test_change/24_0family_hidden_condition_variable_sub_family.env b/tests/results/test_change/24_0family_hidden_condition_variable_sub_family.env
new file mode 100644
index 0000000..879c86b
--- /dev/null
+++ b/tests/results/test_change/24_0family_hidden_condition_variable_sub_family.env
@@ -0,0 +1 @@
+ROUGAIL_condition=1
diff --git a/tests/results/test_change/24_0family_hidden_param_condition_sub_family.env b/tests/results/test_change/24_0family_hidden_param_condition_sub_family.env
new file mode 100644
index 0000000..1049417
--- /dev/null
+++ b/tests/results/test_change/24_0family_hidden_param_condition_sub_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=no
+ROUGAIL_var1=string1
diff --git a/tests/results/test_change/24_0family_mandatory_condition.env b/tests/results/test_change/24_0family_mandatory_condition.env
new file mode 100644
index 0000000..452b863
--- /dev/null
+++ b/tests/results/test_change/24_0family_mandatory_condition.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=no
+ROUGAIL_var=''
diff --git a/tests/results/test_change/24_0family_mandatory_condition_variable.env b/tests/results/test_change/24_0family_mandatory_condition_variable.env
new file mode 100644
index 0000000..810c9a2
--- /dev/null
+++ b/tests/results/test_change/24_0family_mandatory_condition_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=1
+ROUGAIL_var=string1
diff --git a/tests/results/test_change/24_7validators_variable_optional.env b/tests/results/test_change/24_7validators_variable_optional.env
new file mode 100644
index 0000000..45cbf14
--- /dev/null
+++ b/tests/results/test_change/24_7validators_variable_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_int=5
+ROUGAIL_int2=1
diff --git a/tests/results/test_change/24_family_disabled_var_hidden.env b/tests/results/test_change/24_family_disabled_var_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/24_family_disabled_var_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/40_0leadership.env b/tests/results/test_change/40_0leadership.env
new file mode 100644
index 0000000..1a24a0b
--- /dev/null
+++ b/tests/results/test_change/40_0leadership.env
@@ -0,0 +1,3 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=string1;string2;string3
+ROUGAIL_follower2=string1;string2;string3
diff --git a/tests/results/test_change/40_0leadership_diff_name.env b/tests/results/test_change/40_0leadership_diff_name.env
new file mode 100644
index 0000000..1a24a0b
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_diff_name.env
@@ -0,0 +1,3 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=string1;string2;string3
+ROUGAIL_follower2=string1;string2;string3
diff --git a/tests/results/test_change/40_0leadership_empty.env b/tests/results/test_change/40_0leadership_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/40_0leadership_follower_default_calculation.env b/tests/results/test_change/40_0leadership_follower_default_calculation.env
new file mode 100644
index 0000000..e50e09d
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_follower_default_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=value;value;value
+ROUGAIL_follower2=value;value;value
diff --git a/tests/results/test_change/40_0leadership_follower_default_value.env b/tests/results/test_change/40_0leadership_follower_default_value.env
new file mode 100644
index 0000000..c670024
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_follower_default_value.env
@@ -0,0 +1 @@
+ROUGAIL_leader=
diff --git a/tests/results/test_change/40_0leadership_leader_follower.env b/tests/results/test_change/40_0leadership_leader_follower.env
new file mode 100644
index 0000000..9afac59
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_leader_follower.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower=value1;value2
diff --git a/tests/results/test_change/40_0leadership_leader_not_multi.env b/tests/results/test_change/40_0leadership_leader_not_multi.env
new file mode 100644
index 0000000..d238fb6
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_leader_not_multi.env
@@ -0,0 +1,4 @@
+ROUGAIL_mode_conteneur_actif=non
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=string1;string2;string3
+ROUGAIL_follower2=string1;string2;string3
diff --git a/tests/results/test_change/40_0leadership_reduce.env b/tests/results/test_change/40_0leadership_reduce.env
new file mode 100644
index 0000000..fd07d24
--- /dev/null
+++ b/tests/results/test_change/40_0leadership_reduce.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=value_1;value_2;value_3
+ROUGAIL_follower=string1;string2;string3
diff --git a/tests/results/test_change/40_1leadership_append_follower.env b/tests/results/test_change/40_1leadership_append_follower.env
new file mode 100644
index 0000000..f642fb9
--- /dev/null
+++ b/tests/results/test_change/40_1leadership_append_follower.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=string1;string2;string3
+ROUGAIL_follower2=string1;string2;string3
+ROUGAIL_follower3=string1;string2;string3
diff --git a/tests/results/test_change/40_2leadership_calculation_index.env b/tests/results/test_change/40_2leadership_calculation_index.env
new file mode 100644
index 0000000..63221d7
--- /dev/null
+++ b/tests/results/test_change/40_2leadership_calculation_index.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=a;b;c
+ROUGAIL_follower1=0;1;2
diff --git a/tests/results/test_change/40_2leadership_calculation_index_2.env b/tests/results/test_change/40_2leadership_calculation_index_2.env
new file mode 100644
index 0000000..63221d7
--- /dev/null
+++ b/tests/results/test_change/40_2leadership_calculation_index_2.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=a;b;c
+ROUGAIL_follower1=0;1;2
diff --git a/tests/results/test_change/40_6leadership_follower_multi.env b/tests/results/test_change/40_6leadership_follower_multi.env
new file mode 100644
index 0000000..d5e166f
--- /dev/null
+++ b/tests/results/test_change/40_6leadership_follower_multi.env
@@ -0,0 +1,3 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1=string1,string2,string3;string1,string2,string3;string1,string2,string3
+ROUGAIL_follower2=value;value;value
diff --git a/tests/results/test_change/40_6leadership_follower_multi_no_mandatory.env b/tests/results/test_change/40_6leadership_follower_multi_no_mandatory.env
new file mode 100644
index 0000000..c670024
--- /dev/null
+++ b/tests/results/test_change/40_6leadership_follower_multi_no_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_leader=
diff --git a/tests/results/test_change/40_8calculation_boolean.env b/tests/results/test_change/40_8calculation_boolean.env
new file mode 100644
index 0000000..8085c65
--- /dev/null
+++ b/tests/results/test_change/40_8calculation_boolean.env
@@ -0,0 +1,3 @@
+ROUGAIL_bool=0
+ROUGAIL_multi1=0
+ROUGAIL_multi2=1;0
diff --git a/tests/results/test_change/40_8calculation_multi_variable.env b/tests/results/test_change/40_8calculation_multi_variable.env
new file mode 100644
index 0000000..a5fd565
--- /dev/null
+++ b/tests/results/test_change/40_8calculation_multi_variable.env
@@ -0,0 +1,3 @@
+ROUGAIL_var=no;yes
+ROUGAIL_var2=no
+ROUGAIL_var3=yes
diff --git a/tests/results/test_change/40_8calculation_multi_variable_parent.duplicate b/tests/results/test_change/40_8calculation_multi_variable_parent.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/40_8calculation_multi_variable_parent2.duplicate b/tests/results/test_change/40_8calculation_multi_variable_parent2.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/40_9calculation_variable_leader_follower_multi_inside.env b/tests/results/test_change/40_9calculation_variable_leader_follower_multi_inside.env
new file mode 100644
index 0000000..9afac59
--- /dev/null
+++ b/tests/results/test_change/40_9calculation_variable_leader_follower_multi_inside.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower=value1;value2
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-follower-first.env b/tests/results/test_change/40_9leadership-calculation-outside-follower-first.env
new file mode 100644
index 0000000..7bc37c7
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-follower-first.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=val11
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-follower-last.env b/tests/results/test_change/40_9leadership-calculation-outside-follower-last.env
new file mode 100644
index 0000000..7bc37c7
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-follower-last.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=val11
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-follower-no-mandatory.env b/tests/results/test_change/40_9leadership-calculation-outside-follower-no-mandatory.env
new file mode 100644
index 0000000..3a76336
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-follower-no-mandatory.env
@@ -0,0 +1,3 @@
+ROUGAIL_leader=a;b
+ROUGAIL_follower='';''
+ROUGAIL_variable='';''
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-follower.env b/tests/results/test_change/40_9leadership-calculation-outside-follower.env
new file mode 100644
index 0000000..e6d732c
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-follower.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=val11;val11
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-leader-first.env b/tests/results/test_change/40_9leadership-calculation-outside-leader-first.env
new file mode 100644
index 0000000..1ce8932
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-leader-first.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=value1
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-leader-last.env b/tests/results/test_change/40_9leadership-calculation-outside-leader-last.env
new file mode 100644
index 0000000..e33216d
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-leader-last.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=value2
diff --git a/tests/results/test_change/40_9leadership-calculation-outside-leader.env b/tests/results/test_change/40_9leadership-calculation-outside-leader.env
new file mode 100644
index 0000000..f7b0bb5
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-outside-leader.env
@@ -0,0 +1,4 @@
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
+ROUGAIL_calculate=value1;value2
diff --git a/tests/results/test_change/40_9leadership-calculation-variable.env b/tests/results/test_change/40_9leadership-calculation-variable.env
new file mode 100644
index 0000000..7d4197d
--- /dev/null
+++ b/tests/results/test_change/40_9leadership-calculation-variable.env
@@ -0,0 +1,4 @@
+ROUGAIL_calculate=value1;value2
+ROUGAIL_leader=value1;value2
+ROUGAIL_follower1=val11;val11
+ROUGAIL_follower2=val21;val21
diff --git a/tests/results/test_change/40_9leadership-calculation-variable_leader_follower.duplicate b/tests/results/test_change/40_9leadership-calculation-variable_leader_follower.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/40_9leadership-calculation-variable_leader_follower_not_same.duplicate b/tests/results/test_change/40_9leadership-calculation-variable_leader_follower_not_same.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/41_0choice_leader.env b/tests/results/test_change/41_0choice_leader.env
new file mode 100644
index 0000000..c670024
--- /dev/null
+++ b/tests/results/test_change/41_0choice_leader.env
@@ -0,0 +1 @@
+ROUGAIL_leader=
diff --git a/tests/results/test_change/44_0leadership_hidden.env b/tests/results/test_change/44_0leadership_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/44_0leadership_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/44_0leadership_leader_hidden.env b/tests/results/test_change/44_0leadership_leader_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/44_0leadership_leader_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/44_1leadership_append_hidden_follower.env b/tests/results/test_change/44_1leadership_append_hidden_follower.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/44_1leadership_append_hidden_follower.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/44_4disabled_calcultion_follower_index.env b/tests/results/test_change/44_4disabled_calcultion_follower_index.env
new file mode 100644
index 0000000..d0308ba
--- /dev/null
+++ b/tests/results/test_change/44_4disabled_calcultion_follower_index.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=a;b
+ROUGAIL_follower='';value
diff --git a/tests/results/test_change/44_4leadership_mandatory.env b/tests/results/test_change/44_4leadership_mandatory.env
new file mode 100644
index 0000000..2b84a4a
--- /dev/null
+++ b/tests/results/test_change/44_4leadership_mandatory.env
@@ -0,0 +1,2 @@
+ROUGAIL_leader=string1;string2;string3
+ROUGAIL_follower1='';'';''
diff --git a/tests/results/test_change/44_4leadership_mandatory_follower.env b/tests/results/test_change/44_4leadership_mandatory_follower.env
new file mode 100644
index 0000000..c670024
--- /dev/null
+++ b/tests/results/test_change/44_4leadership_mandatory_follower.env
@@ -0,0 +1 @@
+ROUGAIL_leader=
diff --git a/tests/results/test_change/44_5leadership_leader_hidden_calculation.env b/tests/results/test_change/44_5leadership_leader_hidden_calculation.env
new file mode 100644
index 0000000..456e305
--- /dev/null
+++ b/tests/results/test_change/44_5leadership_leader_hidden_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_condition=no
diff --git a/tests/results/test_change/44_6leadership_follower_disabled_calculation.env b/tests/results/test_change/44_6leadership_follower_disabled_calculation.env
new file mode 100644
index 0000000..1009f4f
--- /dev/null
+++ b/tests/results/test_change/44_6leadership_follower_disabled_calculation.env
@@ -0,0 +1,2 @@
+ROUGAIL_condition=yes
+ROUGAIL_leader=string1;string2;string3
diff --git a/tests/results/test_change/60_0family_dynamic.duplicate b/tests/results/test_change/60_0family_dynamic.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_1_1.duplicate b/tests/results/test_change/60_0family_dynamic_1_1.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_1_1_empty.env b/tests/results/test_change/60_0family_dynamic_1_1_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_0family_dynamic_1_1_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_0family_dynamic_empty.env b/tests/results/test_change/60_0family_dynamic_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_0family_dynamic_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_0family_dynamic_forbidden_char.duplicate b/tests/results/test_change/60_0family_dynamic_forbidden_char.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_no_description.duplicate b/tests/results/test_change/60_0family_dynamic_no_description.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_no_description_empty.env b/tests/results/test_change/60_0family_dynamic_no_description_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_0family_dynamic_no_description_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_0family_dynamic_source_hidden.duplicate b/tests/results/test_change/60_0family_dynamic_source_hidden.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_static.duplicate b/tests/results/test_change/60_0family_dynamic_static.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_test.duplicate b/tests/results/test_change/60_0family_dynamic_test.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_upper_char.duplicate b/tests/results/test_change/60_0family_dynamic_upper_char.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_variable.duplicate b/tests/results/test_change/60_0family_dynamic_variable.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_variable_empty.duplicate b/tests/results/test_change/60_0family_dynamic_variable_empty.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_variable_optional.duplicate b/tests/results/test_change/60_0family_dynamic_variable_optional.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_variable_suffix.duplicate b/tests/results/test_change/60_0family_dynamic_variable_suffix.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_dynamic_variable_suffix_empty.duplicate b/tests/results/test_change/60_0family_dynamic_variable_suffix_empty.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_0family_empty.env b/tests/results/test_change/60_0family_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/60_0family_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/60_0family_hidden.env b/tests/results/test_change/60_0family_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_change/60_0family_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_change/60_0family_mode.env b/tests/results/test_change/60_0family_mode.env
new file mode 100644
index 0000000..0a65949
--- /dev/null
+++ b/tests/results/test_change/60_0family_mode.env
@@ -0,0 +1 @@
+ROUGAIL_var=non
diff --git a/tests/results/test_change/60_1family_dynamic_jinja.duplicate b/tests/results/test_change/60_1family_dynamic_jinja.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group.duplicate b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_2.duplicate b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_2.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_2_empty.env b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
new file mode 100644
index 0000000..b7794e0
--- /dev/null
+++ b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_var=
+ROUGAIL_var2=''
diff --git a/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_empty.env b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_empty.env
new file mode 100644
index 0000000..6c35236
--- /dev/null
+++ b/tests/results/test_change/60_2family_dynamic_jinja_fill_sub_group_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=
+ROUGAIL_var2=''
diff --git a/tests/results/test_change/60_2family_dynamic_outside_calc.duplicate b/tests/results/test_change/60_2family_dynamic_outside_calc.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_2family_dynamic_outside_calc_empty.env b/tests/results/test_change/60_2family_dynamic_outside_calc_empty.env
new file mode 100644
index 0000000..3f1ae38
--- /dev/null
+++ b/tests/results/test_change/60_2family_dynamic_outside_calc_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=
+ROUGAIL_newvar=''
diff --git a/tests/results/test_change/60_5family_dynamic_calc_description.duplicate b/tests/results/test_change/60_5family_dynamic_calc_description.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_identifier.duplicate b/tests/results/test_change/60_5family_dynamic_calc_identifier.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_identifier_multi.duplicate b/tests/results/test_change/60_5family_dynamic_calc_identifier_multi.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_suffix2.duplicate b/tests/results/test_change/60_5family_dynamic_calc_suffix2.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_suffix2_empty.env b/tests/results/test_change/60_5family_dynamic_calc_suffix2_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_5family_dynamic_calc_suffix2_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_5family_dynamic_calc_suffix_disabled.env b/tests/results/test_change/60_5family_dynamic_calc_suffix_disabled.env
new file mode 100644
index 0000000..3db51d1
--- /dev/null
+++ b/tests/results/test_change/60_5family_dynamic_calc_suffix_disabled.env
@@ -0,0 +1 @@
+ROUGAIL_var=string1
diff --git a/tests/results/test_change/60_5family_dynamic_calc_suffix_param.duplicate b/tests/results/test_change/60_5family_dynamic_calc_suffix_param.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_suffix_param_empty.env b/tests/results/test_change/60_5family_dynamic_calc_suffix_param_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_5family_dynamic_calc_suffix_param_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_5family_dynamic_calc_variable.duplicate b/tests/results/test_change/60_5family_dynamic_calc_variable.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_variable_disabled.duplicate b/tests/results/test_change/60_5family_dynamic_calc_variable_disabled.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_variable_disabled_outside.duplicate b/tests/results/test_change/60_5family_dynamic_calc_variable_disabled_outside.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_calc_variable_empty.env b/tests/results/test_change/60_5family_dynamic_calc_variable_empty.env
new file mode 100644
index 0000000..dacd5ef
--- /dev/null
+++ b/tests/results/test_change/60_5family_dynamic_calc_variable_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_var1=
+ROUGAIL_var2=string1
diff --git a/tests/results/test_change/60_5family_dynamic_hidden_suffix.duplicate b/tests/results/test_change/60_5family_dynamic_hidden_suffix.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_variable_outside_suffix.duplicate b/tests/results/test_change/60_5family_dynamic_variable_outside_suffix.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_5family_dynamic_variable_outside_suffix_empty.env b/tests/results/test_change/60_5family_dynamic_variable_outside_suffix_empty.env
new file mode 100644
index 0000000..b7794e0
--- /dev/null
+++ b/tests/results/test_change/60_5family_dynamic_variable_outside_suffix_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_var=
+ROUGAIL_var2=''
diff --git a/tests/results/test_change/60_6family_dynamic_leadership.duplicate b/tests/results/test_change/60_6family_dynamic_leadership.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_6family_dynamic_leadership_empty.env b/tests/results/test_change/60_6family_dynamic_leadership_empty.env
new file mode 100644
index 0000000..aeef15f
--- /dev/null
+++ b/tests/results/test_change/60_6family_dynamic_leadership_empty.env
@@ -0,0 +1 @@
+ROUGAIL_var=
diff --git a/tests/results/test_change/60_6family_subdynamic_inside.duplicate b/tests/results/test_change/60_6family_subdynamic_inside.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/60_9family_dynamic_calc_both.duplicate b/tests/results/test_change/60_9family_dynamic_calc_both.duplicate
new file mode 100644
index 0000000..473a0f4
diff --git a/tests/results/test_change/68_0family_leadership_mode.env b/tests/results/test_change/68_0family_leadership_mode.env
new file mode 100644
index 0000000..c670024
--- /dev/null
+++ b/tests/results/test_change/68_0family_leadership_mode.env
@@ -0,0 +1 @@
+ROUGAIL_leader=
diff --git a/tests/results/test_namespace/00_0empty.env b/tests/results/test_namespace/00_0empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/00_0empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/00_0no_variable.env b/tests/results/test_namespace/00_0no_variable.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/00_0no_variable.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/00_0no_variable_default_version.env b/tests/results/test_namespace/00_0no_variable_default_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/00_0no_variable_default_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/00_0no_variable_remove_version.env b/tests/results/test_namespace/00_0no_variable_remove_version.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/00_0no_variable_remove_version.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/00_0version_underscore.env b/tests/results/test_namespace/00_0version_underscore.env
new file mode 100644
index 0000000..bf9c848
--- /dev/null
+++ b/tests/results/test_namespace/00_0version_underscore.env
@@ -0,0 +1 @@
+ROUGAIL_VERSION=string1
diff --git a/tests/results/test_namespace/00_1empty_variable.env b/tests/results/test_namespace/00_1empty_variable.env
new file mode 100644
index 0000000..888c6d4
--- /dev/null
+++ b/tests/results/test_namespace/00_1empty_variable.env
@@ -0,0 +1 @@
+ROUGAIL_EMPTY=string1
diff --git a/tests/results/test_namespace/00_2default_calculated.env b/tests/results/test_namespace/00_2default_calculated.env
new file mode 100644
index 0000000..563e3ba
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=(no)
diff --git a/tests/results/test_namespace/00_2default_calculated_multi.env b/tests/results/test_namespace/00_2default_calculated_multi.env
new file mode 100644
index 0000000..d4c4d1d
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(no yes maybe)
+ROUGAIL_VAR2=(no yes maybe)
diff --git a/tests/results/test_namespace/00_2default_calculated_params_permissive.env b/tests/results/test_namespace/00_2default_calculated_params_permissive.env
new file mode 100644
index 0000000..42221d8
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_params_permissive.env
@@ -0,0 +1 @@
+ROUGAIL_VAR2=a_value
diff --git a/tests/results/test_namespace/00_2default_calculated_variable.env b/tests/results/test_namespace/00_2default_calculated_variable.env
new file mode 100644
index 0000000..c54116e
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(domain1.lan domain2.lan)
+ROUGAIL_VAR2=(domain1.lan domain2.lan)
diff --git a/tests/results/test_namespace/00_2default_calculated_variable_description.env b/tests/results/test_namespace/00_2default_calculated_variable_description.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_variable_description.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_2default_calculated_variable_description_multi_line.env b/tests/results/test_namespace/00_2default_calculated_variable_description_multi_line.env
new file mode 100644
index 0000000..c3f581f
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_variable_description_multi_line.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
+ROUGAIL_VAR3=string1
diff --git a/tests/results/test_namespace/00_2default_calculated_variable_transitive.env b/tests/results/test_namespace/00_2default_calculated_variable_transitive.env
new file mode 100644
index 0000000..c54116e
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_calculated_variable_transitive.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(domain1.lan domain2.lan)
+ROUGAIL_VAR2=(domain1.lan domain2.lan)
diff --git a/tests/results/test_namespace/00_2default_with_exclamation.env b/tests/results/test_namespace/00_2default_with_exclamation.env
new file mode 100644
index 0000000..94c7231
--- /dev/null
+++ b/tests/results/test_namespace/00_2default_with_exclamation.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1='My%Val;ue$#!1su:'
diff --git a/tests/results/test_namespace/00_4load_subfolder.env b/tests/results/test_namespace/00_4load_subfolder.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_4load_subfolder.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_5load_notype.env b/tests/results/test_namespace/00_5load_notype.env
new file mode 100644
index 0000000..f44d31c
--- /dev/null
+++ b/tests/results/test_namespace/00_5load_notype.env
@@ -0,0 +1 @@
+ROUGAIL_WITHOUT_TYPE=non
diff --git a/tests/results/test_namespace/00_6boolean.env b/tests/results/test_namespace/00_6boolean.env
new file mode 100644
index 0000000..5874006
--- /dev/null
+++ b/tests/results/test_namespace/00_6boolean.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=true
+ROUGAIL_VAR2=true
+ROUGAIL_VAR3=true
+ROUGAIL_VAR4=false
+ROUGAIL_VAR5=false
+ROUGAIL_VAR6=false
diff --git a/tests/results/test_namespace/00_6boolean_no_mandatory.env b/tests/results/test_namespace/00_6boolean_no_mandatory.env
new file mode 100644
index 0000000..1910876
--- /dev/null
+++ b/tests/results/test_namespace/00_6boolean_no_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=true
diff --git a/tests/results/test_namespace/00_6choice.env b/tests/results/test_namespace/00_6choice.env
new file mode 100644
index 0000000..0365131
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=a
+ROUGAIL_VAR2=a
+ROUGAIL_VAR3=''
+ROUGAIL_VAR4=''
+ROUGAIL_VAR5=a
+ROUGAIL_VAR6=1
diff --git a/tests/results/test_namespace/00_6choice_calculation.env b/tests/results/test_namespace/00_6choice_calculation.env
new file mode 100644
index 0000000..ae724a2
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=9
diff --git a/tests/results/test_namespace/00_6choice_link.env b/tests/results/test_namespace/00_6choice_link.env
new file mode 100644
index 0000000..3e894dd
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice_link.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=a
+ROUGAIL_VAR2=a
diff --git a/tests/results/test_namespace/00_6choice_variable.env b/tests/results/test_namespace/00_6choice_variable.env
new file mode 100644
index 0000000..7029546
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(a b c)
+ROUGAIL_VAR2=a
diff --git a/tests/results/test_namespace/00_6choice_variable_link.env b/tests/results/test_namespace/00_6choice_variable_link.env
new file mode 100644
index 0000000..e3abde8
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice_variable_link.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=(a b c)
+ROUGAIL_VAR2=a
+ROUGAIL_VAR3=a
diff --git a/tests/results/test_namespace/00_6choice_variable_link2.env b/tests/results/test_namespace/00_6choice_variable_link2.env
new file mode 100644
index 0000000..ec75a25
--- /dev/null
+++ b/tests/results/test_namespace/00_6choice_variable_link2.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=(a b c)
+ROUGAIL_VAR2=a
+ROUGAIL_FAMILY_VAR3=a
diff --git a/tests/results/test_namespace/00_6custom.env b/tests/results/test_namespace/00_6custom.env
new file mode 100644
index 0000000..5f5741a
--- /dev/null
+++ b/tests/results/test_namespace/00_6custom.env
@@ -0,0 +1,2 @@
+ROUGAIL_CUSTOM1=string1
+ROUGAIL_CUSTOM2=value
diff --git a/tests/results/test_namespace/00_6domainname.env b/tests/results/test_namespace/00_6domainname.env
new file mode 100644
index 0000000..9ef1ad9
--- /dev/null
+++ b/tests/results/test_namespace/00_6domainname.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=my.domain.name
diff --git a/tests/results/test_namespace/00_6domainname_params.env b/tests/results/test_namespace/00_6domainname_params.env
new file mode 100644
index 0000000..9ef1ad9
--- /dev/null
+++ b/tests/results/test_namespace/00_6domainname_params.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=my.domain.name
diff --git a/tests/results/test_namespace/00_6float.env b/tests/results/test_namespace/00_6float.env
new file mode 100644
index 0000000..9c80bd0
--- /dev/null
+++ b/tests/results/test_namespace/00_6float.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=0.0
+ROUGAIL_VAR2=0.0
+ROUGAIL_VAR3=0.0
+ROUGAIL_VAR4=10.1
+ROUGAIL_VAR5=10.1
+ROUGAIL_VAR6=10.1
diff --git a/tests/results/test_namespace/00_6integer.env b/tests/results/test_namespace/00_6integer.env
new file mode 100644
index 0000000..4e52fb8
--- /dev/null
+++ b/tests/results/test_namespace/00_6integer.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=0
+ROUGAIL_VAR2=0
+ROUGAIL_VAR3=0
+ROUGAIL_VAR4=10
+ROUGAIL_VAR5=10
+ROUGAIL_VAR6=10
diff --git a/tests/results/test_namespace/00_6ip.env b/tests/results/test_namespace/00_6ip.env
new file mode 100644
index 0000000..70a8aa9
--- /dev/null
+++ b/tests/results/test_namespace/00_6ip.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=1.1.1.1
+ROUGAIL_VAR2=1.1.1.1/24
+ROUGAIL_VAR3=1.1.1.1/24
diff --git a/tests/results/test_namespace/00_6network.env b/tests/results/test_namespace/00_6network.env
new file mode 100644
index 0000000..2c494f1
--- /dev/null
+++ b/tests/results/test_namespace/00_6network.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=1.1.1.0
+ROUGAIL_VAR2=1.1.1.0/24
+ROUGAIL_VAR3=1.1.1.0/24
diff --git a/tests/results/test_namespace/00_6number.env b/tests/results/test_namespace/00_6number.env
new file mode 100644
index 0000000..4e52fb8
--- /dev/null
+++ b/tests/results/test_namespace/00_6number.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=0
+ROUGAIL_VAR2=0
+ROUGAIL_VAR3=0
+ROUGAIL_VAR4=10
+ROUGAIL_VAR5=10
+ROUGAIL_VAR6=10
diff --git a/tests/results/test_namespace/00_6port.env b/tests/results/test_namespace/00_6port.env
new file mode 100644
index 0000000..86079c9
--- /dev/null
+++ b/tests/results/test_namespace/00_6port.env
@@ -0,0 +1,3 @@
+ROUGAIL_VARIABLE1=80
+ROUGAIL_VARIABLE2=8080
+ROUGAIL_VARIABLE3=8080
diff --git a/tests/results/test_namespace/00_6regexp.env b/tests/results/test_namespace/00_6regexp.env
new file mode 100644
index 0000000..b26e786
--- /dev/null
+++ b/tests/results/test_namespace/00_6regexp.env
@@ -0,0 +1 @@
+ROUGAIL_VAR='#a1a1a1'
diff --git a/tests/results/test_namespace/00_6regexp_link.env b/tests/results/test_namespace/00_6regexp_link.env
new file mode 100644
index 0000000..566a150
--- /dev/null
+++ b/tests/results/test_namespace/00_6regexp_link.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1='#a1a1a1'
+ROUGAIL_VAR2='#a1a1a1'
diff --git a/tests/results/test_namespace/00_6secret.env b/tests/results/test_namespace/00_6secret.env
new file mode 100644
index 0000000..18441a9
--- /dev/null
+++ b/tests/results/test_namespace/00_6secret.env
@@ -0,0 +1,2 @@
+ROUGAIL_SECRET1=onE7vaLues_len1
+ROUGAIL_SECRET2=value
diff --git a/tests/results/test_namespace/00_6secret_param.env b/tests/results/test_namespace/00_6secret_param.env
new file mode 100644
index 0000000..9747037
--- /dev/null
+++ b/tests/results/test_namespace/00_6secret_param.env
@@ -0,0 +1,3 @@
+ROUGAIL_SECRET1=onE7vaLues_len1
+ROUGAIL_SECRET2=value
+ROUGAIL_SECRET3=value
diff --git a/tests/results/test_namespace/00_6string.env b/tests/results/test_namespace/00_6string.env
new file mode 100644
index 0000000..466ca94
--- /dev/null
+++ b/tests/results/test_namespace/00_6string.env
@@ -0,0 +1,8 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
+ROUGAIL_VAR3=string1
+ROUGAIL_VAR4=value
+ROUGAIL_VAR5=value
+ROUGAIL_VAR6=value
+ROUGAIL_VAR7=8080
+ROUGAIL_VAR8=true
diff --git a/tests/results/test_namespace/00_7choice_quote.env b/tests/results/test_namespace/00_7choice_quote.env
new file mode 100644
index 0000000..4eb0608
--- /dev/null
+++ b/tests/results/test_namespace/00_7choice_quote.env
@@ -0,0 +1 @@
+ROUGAIL_VAR='quote'"'"''
diff --git a/tests/results/test_namespace/00_7help.env b/tests/results/test_namespace/00_7help.env
new file mode 100644
index 0000000..c3f581f
--- /dev/null
+++ b/tests/results/test_namespace/00_7help.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
+ROUGAIL_VAR3=string1
diff --git a/tests/results/test_namespace/00_7help_quote.env b/tests/results/test_namespace/00_7help_quote.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_7help_quote.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_7help_sup.env b/tests/results/test_namespace/00_7help_sup.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_7help_sup.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_7value_doublequote.env b/tests/results/test_namespace/00_7value_doublequote.env
new file mode 100644
index 0000000..43029c7
--- /dev/null
+++ b/tests/results/test_namespace/00_7value_doublequote.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE='quote"'
diff --git a/tests/results/test_namespace/00_7value_doublequote2.env b/tests/results/test_namespace/00_7value_doublequote2.env
new file mode 100644
index 0000000..9cf0e4c
--- /dev/null
+++ b/tests/results/test_namespace/00_7value_doublequote2.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE='quote'"'"'"'
diff --git a/tests/results/test_namespace/00_7value_doublequote3.env b/tests/results/test_namespace/00_7value_doublequote3.env
new file mode 100644
index 0000000..fd5247c
--- /dev/null
+++ b/tests/results/test_namespace/00_7value_doublequote3.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE='quote\"\'"'"''
diff --git a/tests/results/test_namespace/00_7value_quote.env b/tests/results/test_namespace/00_7value_quote.env
new file mode 100644
index 0000000..0612016
--- /dev/null
+++ b/tests/results/test_namespace/00_7value_quote.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE='quote'"'"''
diff --git a/tests/results/test_namespace/00_8calculation_information.env b/tests/results/test_namespace/00_8calculation_information.env
new file mode 100644
index 0000000..c5ace83
--- /dev/null
+++ b/tests/results/test_namespace/00_8calculation_information.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/00_8calculation_namespace.env b/tests/results/test_namespace/00_8calculation_namespace.env
new file mode 100644
index 0000000..1c4ec1d
--- /dev/null
+++ b/tests/results/test_namespace/00_8calculation_namespace.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=Rougail
diff --git a/tests/results/test_namespace/00_8calculation_param_namespace.env b/tests/results/test_namespace/00_8calculation_param_namespace.env
new file mode 100644
index 0000000..1c4ec1d
--- /dev/null
+++ b/tests/results/test_namespace/00_8calculation_param_namespace.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=Rougail
diff --git a/tests/results/test_namespace/00_8test.env b/tests/results/test_namespace/00_8test.env
new file mode 100644
index 0000000..62fbd44
--- /dev/null
+++ b/tests/results/test_namespace/00_8test.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=test
+ROUGAIL_VAR2=value
+ROUGAIL_VAR3=test1
+ROUGAIL_VAR4=''
+ROUGAIL_VAR5=true
+ROUGAIL_VAR6=(test1 test2)
diff --git a/tests/results/test_namespace/00_9choice_variable_multi.env b/tests/results/test_namespace/00_9choice_variable_multi.env
new file mode 100644
index 0000000..baaa202
--- /dev/null
+++ b/tests/results/test_namespace/00_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_VARIABLE1=(val1 val2)
+ROUGAIL_VARIABLE2=()
diff --git a/tests/results/test_namespace/00_9choice_variables.env b/tests/results/test_namespace/00_9choice_variables.env
new file mode 100644
index 0000000..7de4a2f
--- /dev/null
+++ b/tests/results/test_namespace/00_9choice_variables.env
@@ -0,0 +1,3 @@
+ROUGAIL_SOURCE_VARIABLE_1=val1
+ROUGAIL_SOURCE_VARIABLE_2=val2
+ROUGAIL_MY_VARIABLE=val1
diff --git a/tests/results/test_namespace/00_9default_calculation.env b/tests/results/test_namespace/00_9default_calculation.env
new file mode 100644
index 0000000..520205a
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string_1_True_None
diff --git a/tests/results/test_namespace/00_9default_calculation_information.env b/tests/results/test_namespace/00_9default_calculation_information.env
new file mode 100644
index 0000000..39a1266
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_information.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=string1
diff --git a/tests/results/test_namespace/00_9default_calculation_information_other_variable.env b/tests/results/test_namespace/00_9default_calculation_information_other_variable.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_information_other_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_9default_calculation_multi_optional.env b/tests/results/test_namespace/00_9default_calculation_multi_optional.env
new file mode 100644
index 0000000..c93d944
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_multi_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_MY_VARIABLE=val1
+ROUGAIL_MY_CALCULATED_VARIABLE=(val1)
diff --git a/tests/results/test_namespace/00_9default_calculation_multi_optional2.env b/tests/results/test_namespace/00_9default_calculation_multi_optional2.env
new file mode 100644
index 0000000..c93d944
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_multi_optional2.env
@@ -0,0 +1,2 @@
+ROUGAIL_MY_VARIABLE=val1
+ROUGAIL_MY_CALCULATED_VARIABLE=(val1)
diff --git a/tests/results/test_namespace/00_9default_calculation_multi_optional_default.env b/tests/results/test_namespace/00_9default_calculation_multi_optional_default.env
new file mode 100644
index 0000000..34ac43d
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_multi_optional_default.env
@@ -0,0 +1,2 @@
+ROUGAIL_MY_VARIABLE=val1
+ROUGAIL_MY_CALCULATED_VARIABLE=(val1 value)
diff --git a/tests/results/test_namespace/00_9default_calculation_optional.env b/tests/results/test_namespace/00_9default_calculation_optional.env
new file mode 100644
index 0000000..8051869
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_optional.env
@@ -0,0 +1 @@
+ROUGAIL_MY_CALCULATED_VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test_namespace/00_9default_calculation_optional_exists.env b/tests/results/test_namespace/00_9default_calculation_optional_exists.env
new file mode 100644
index 0000000..4ea102b
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_optional_exists.env
@@ -0,0 +1,2 @@
+ROUGAIL_MY_VARIABLE=(val1 val2)
+ROUGAIL_MY_CALCULATED_VARIABLE=(val1 val2)
diff --git a/tests/results/test_namespace/00_9default_calculation_param_optional.env b/tests/results/test_namespace/00_9default_calculation_param_optional.env
new file mode 100644
index 0000000..f57effa
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_calculation_param_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/00_9default_information_other_variable.env b/tests/results/test_namespace/00_9default_information_other_variable.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_information_other_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_9default_information_other_variable2.env b/tests/results/test_namespace/00_9default_information_other_variable2.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_information_other_variable2.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/00_9default_integer.env b/tests/results/test_namespace/00_9default_integer.env
new file mode 100644
index 0000000..ae724a2
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_integer.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=9
diff --git a/tests/results/test_namespace/00_9default_number.env b/tests/results/test_namespace/00_9default_number.env
new file mode 100644
index 0000000..ae724a2
--- /dev/null
+++ b/tests/results/test_namespace/00_9default_number.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=9
diff --git a/tests/results/test_namespace/00_9extra.env b/tests/results/test_namespace/00_9extra.env
new file mode 100644
index 0000000..5dcce0a
--- /dev/null
+++ b/tests/results/test_namespace/00_9extra.env
@@ -0,0 +1,2 @@
+ROUGAIL_VARIABLE=rougail
+EXTRA_VARIABLE=no
diff --git a/tests/results/test_namespace/00_9extra_calculation.env b/tests/results/test_namespace/00_9extra_calculation.env
new file mode 100644
index 0000000..3b2e04a
--- /dev/null
+++ b/tests/results/test_namespace/00_9extra_calculation.env
@@ -0,0 +1,4 @@
+ROUGAIL_VARIABLE=value
+EXTRA_VARIABLE1=value
+EXTRA_VARIABLE2=value
+EXTRA_VARIABLE3=value
diff --git a/tests/results/test_namespace/00_9extra_ouside.env b/tests/results/test_namespace/00_9extra_ouside.env
new file mode 100644
index 0000000..6f0a966
--- /dev/null
+++ b/tests/results/test_namespace/00_9extra_ouside.env
@@ -0,0 +1,2 @@
+ROUGAIL_VARIABLE='value in extra'
+EXTRA_VARIABLE='value in extra'
diff --git a/tests/results/test_namespace/01_6boolean_multi.env b/tests/results/test_namespace/01_6boolean_multi.env
new file mode 100644
index 0000000..255040e
--- /dev/null
+++ b/tests/results/test_namespace/01_6boolean_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_VAR1=(true)
+ROUGAIL_VAR2=(true)
+ROUGAIL_VAR3=(true)
+ROUGAIL_VAR4=(false)
+ROUGAIL_VAR5=(false)
+ROUGAIL_VAR6=(false)
+ROUGAIL_VAR7=(true)
+ROUGAIL_VAR8=(true)
diff --git a/tests/results/test_namespace/01_6custom_multi.env b/tests/results/test_namespace/01_6custom_multi.env
new file mode 100644
index 0000000..a29e9d6
--- /dev/null
+++ b/tests/results/test_namespace/01_6custom_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_CUSTOM1=(string1 string2 string3)
+ROUGAIL_CUSTOM2=(value)
diff --git a/tests/results/test_namespace/01_6float_multi.env b/tests/results/test_namespace/01_6float_multi.env
new file mode 100644
index 0000000..9737259
--- /dev/null
+++ b/tests/results/test_namespace/01_6float_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_VAR1=(0.0)
+ROUGAIL_VAR2=(0.0)
+ROUGAIL_VAR3=(0.0)
+ROUGAIL_VAR4=(10.1)
+ROUGAIL_VAR5=(10.1)
+ROUGAIL_VAR6=(10.1)
+ROUGAIL_VAR7=(0.0)
+ROUGAIL_VAR8=(0.0)
diff --git a/tests/results/test_namespace/01_6integer_multi.env b/tests/results/test_namespace/01_6integer_multi.env
new file mode 100644
index 0000000..ec25d31
--- /dev/null
+++ b/tests/results/test_namespace/01_6integer_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_VAR1=(0)
+ROUGAIL_VAR2=(0)
+ROUGAIL_VAR3=(0)
+ROUGAIL_VAR4=(10)
+ROUGAIL_VAR5=(10)
+ROUGAIL_VAR6=(10)
+ROUGAIL_VAR7=(0)
+ROUGAIL_VAR8=(0)
diff --git a/tests/results/test_namespace/01_6integer_multi_mandatory.env b/tests/results/test_namespace/01_6integer_multi_mandatory.env
new file mode 100644
index 0000000..2a032ab
--- /dev/null
+++ b/tests/results/test_namespace/01_6integer_multi_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=(1 2 3)
diff --git a/tests/results/test_namespace/01_6string_empty.env b/tests/results/test_namespace/01_6string_empty.env
new file mode 100644
index 0000000..69a0a09
--- /dev/null
+++ b/tests/results/test_namespace/01_6string_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=(value '')
diff --git a/tests/results/test_namespace/01_6string_multi.env b/tests/results/test_namespace/01_6string_multi.env
new file mode 100644
index 0000000..08bf2bd
--- /dev/null
+++ b/tests/results/test_namespace/01_6string_multi.env
@@ -0,0 +1,8 @@
+ROUGAIL_VAR1=(string1 string2 string3)
+ROUGAIL_VAR2=(string1 string2 string3)
+ROUGAIL_VAR3=(string1 string2 string3)
+ROUGAIL_VAR4=(value)
+ROUGAIL_VAR5=(value)
+ROUGAIL_VAR6=(value)
+ROUGAIL_VAR7=(value)
+ROUGAIL_VAR8=(value)
diff --git a/tests/results/test_namespace/01_6string_multi_length.env b/tests/results/test_namespace/01_6string_multi_length.env
new file mode 100644
index 0000000..cc35ace
--- /dev/null
+++ b/tests/results/test_namespace/01_6string_multi_length.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(val1 val2 val3)
+ROUGAIL_VAR2=(val4 val5)
diff --git a/tests/results/test_namespace/01_7value_multi_doublequote.env b/tests/results/test_namespace/01_7value_multi_doublequote.env
new file mode 100644
index 0000000..c5e68c0
--- /dev/null
+++ b/tests/results/test_namespace/01_7value_multi_doublequote.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=('quote"')
diff --git a/tests/results/test_namespace/01_7value_multi_doublequote2.env b/tests/results/test_namespace/01_7value_multi_doublequote2.env
new file mode 100644
index 0000000..db17a59
--- /dev/null
+++ b/tests/results/test_namespace/01_7value_multi_doublequote2.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=('quote'"'"'"')
diff --git a/tests/results/test_namespace/01_7value_multi_quote.env b/tests/results/test_namespace/01_7value_multi_quote.env
new file mode 100644
index 0000000..67657c2
--- /dev/null
+++ b/tests/results/test_namespace/01_7value_multi_quote.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=('quote'"'"'')
diff --git a/tests/results/test_namespace/01_8calculation_information_multi.env b/tests/results/test_namespace/01_8calculation_information_multi.env
new file mode 100644
index 0000000..c71f206
--- /dev/null
+++ b/tests/results/test_namespace/01_8calculation_information_multi.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test_namespace/01_9choice_variable_multi.env b/tests/results/test_namespace/01_9choice_variable_multi.env
new file mode 100644
index 0000000..f08225b
--- /dev/null
+++ b/tests/results/test_namespace/01_9choice_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_VARIABLE1=(a b c)
+ROUGAIL_VARIABLE2=a
diff --git a/tests/results/test_namespace/01_9choice_variable_optional.env b/tests/results/test_namespace/01_9choice_variable_optional.env
new file mode 100644
index 0000000..511b3ed
--- /dev/null
+++ b/tests/results/test_namespace/01_9choice_variable_optional.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=c
diff --git a/tests/results/test_namespace/02_0tags.env b/tests/results/test_namespace/02_0tags.env
new file mode 100644
index 0000000..6a053be
--- /dev/null
+++ b/tests/results/test_namespace/02_0tags.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/04_0type_param.env b/tests/results/test_namespace/04_0type_param.env
new file mode 100644
index 0000000..e1c932d
--- /dev/null
+++ b/tests/results/test_namespace/04_0type_param.env
@@ -0,0 +1 @@
+ROUGAIL_INT=10
diff --git a/tests/results/test_namespace/04_0type_param_integer.env b/tests/results/test_namespace/04_0type_param_integer.env
new file mode 100644
index 0000000..e1c932d
--- /dev/null
+++ b/tests/results/test_namespace/04_0type_param_integer.env
@@ -0,0 +1 @@
+ROUGAIL_INT=10
diff --git a/tests/results/test_namespace/04_1auto_save.env b/tests/results/test_namespace/04_1auto_save.env
new file mode 100644
index 0000000..22cadef
--- /dev/null
+++ b/tests/results/test_namespace/04_1auto_save.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=no
diff --git a/tests/results/test_namespace/04_1auto_save_and_calculated.env b/tests/results/test_namespace/04_1auto_save_and_calculated.env
new file mode 100644
index 0000000..f57effa
--- /dev/null
+++ b/tests/results/test_namespace/04_1auto_save_and_calculated.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/04_1auto_save_and_calculated_hidden.env b/tests/results/test_namespace/04_1auto_save_and_calculated_hidden.env
new file mode 100644
index 0000000..feecb61
--- /dev/null
+++ b/tests/results/test_namespace/04_1auto_save_and_calculated_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=yes
diff --git a/tests/results/test_namespace/04_1auto_save_and_hidden.env b/tests/results/test_namespace/04_1auto_save_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/04_1auto_save_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden.env b/tests/results/test_namespace/04_1default_calculation_hidden.env
new file mode 100644
index 0000000..31f9b97
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=value
+ROUGAIL_VAR3=value
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden_2.env b/tests/results/test_namespace/04_1default_calculation_hidden_2.env
new file mode 100644
index 0000000..ffa7ed2
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden_2.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=value
+ROUGAIL_VAR3=string1
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden_3.env b/tests/results/test_namespace/04_1default_calculation_hidden_3.env
new file mode 100644
index 0000000..679f038
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden_3.env
@@ -0,0 +1 @@
+ROUGAIL_VAR3=value
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden_4.env b/tests/results/test_namespace/04_1default_calculation_hidden_4.env
new file mode 100644
index 0000000..f6a1c99
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden_4.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR2=string1
+ROUGAIL_VAR3=value
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden_5.env b/tests/results/test_namespace/04_1default_calculation_hidden_5.env
new file mode 100644
index 0000000..99fb22c
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden_5.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=value
diff --git a/tests/results/test_namespace/04_1default_calculation_hidden_6.env b/tests/results/test_namespace/04_1default_calculation_hidden_6.env
new file mode 100644
index 0000000..ffa7ed2
--- /dev/null
+++ b/tests/results/test_namespace/04_1default_calculation_hidden_6.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=value
+ROUGAIL_VAR3=string1
diff --git a/tests/results/test_namespace/04_1jinja_and_hidden.env b/tests/results/test_namespace/04_1jinja_and_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/04_1jinja_and_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/04_5disabled_calculation.env b/tests/results/test_namespace/04_5disabled_calculation.env
new file mode 100644
index 0000000..1ac8f31
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VARIABLE1=string1
+ROUGAIL_VARIABLE2=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_boolean.env b/tests/results/test_namespace/04_5disabled_calculation_boolean.env
new file mode 100644
index 0000000..cd783db
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_boolean.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VARIABLE1=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_default.env b/tests/results/test_namespace/04_5disabled_calculation_default.env
new file mode 100644
index 0000000..8184276
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_default.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/04_5disabled_calculation_multi.env b/tests/results/test_namespace/04_5disabled_calculation_multi.env
new file mode 100644
index 0000000..2c6d47d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_multi.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VARIABLE1=(string1 string2 string3)
+ROUGAIL_VARIABLE2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/04_5disabled_calculation_optional.env b/tests/results/test_namespace/04_5disabled_calculation_optional.env
new file mode 100644
index 0000000..0f748ea
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_optional.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=no
diff --git a/tests/results/test_namespace/04_5disabled_calculation_optional_default.env b/tests/results/test_namespace/04_5disabled_calculation_optional_default.env
new file mode 100644
index 0000000..ef01531
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_optional_default.env
@@ -0,0 +1,4 @@
+ROUGAIL_CONDITION=false
+ROUGAIL_VAR1=''
+ROUGAIL_VAR3=''
+ROUGAIL_VAR4=''
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable.env b/tests/results/test_namespace/04_5disabled_calculation_variable.env
new file mode 100644
index 0000000..72ec1cf
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=false
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable10.env b/tests/results/test_namespace/04_5disabled_calculation_variable10.env
new file mode 100644
index 0000000..aaf965d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable10.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=true
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable2.env b/tests/results/test_namespace/04_5disabled_calculation_variable2.env
new file mode 100644
index 0000000..aaf965d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable2.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=true
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable3.env b/tests/results/test_namespace/04_5disabled_calculation_variable3.env
new file mode 100644
index 0000000..eaff230
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable3.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=yes
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable4.env b/tests/results/test_namespace/04_5disabled_calculation_variable4.env
new file mode 100644
index 0000000..c22a8c4
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable4.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=yes
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable5.env b/tests/results/test_namespace/04_5disabled_calculation_variable5.env
new file mode 100644
index 0000000..c5ace83
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable5.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable6.env b/tests/results/test_namespace/04_5disabled_calculation_variable6.env
new file mode 100644
index 0000000..c5ace83
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable6.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable7.env b/tests/results/test_namespace/04_5disabled_calculation_variable7.env
new file mode 100644
index 0000000..72ec1cf
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable7.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=false
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable8.env b/tests/results/test_namespace/04_5disabled_calculation_variable8.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable8.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable9.env b/tests/results/test_namespace/04_5disabled_calculation_variable9.env
new file mode 100644
index 0000000..c5ace83
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable9.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable_multi.env b/tests/results/test_namespace/04_5disabled_calculation_variable_multi.env
new file mode 100644
index 0000000..87a00f8
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=false
+ROUGAIL_VARIABLE=(string1 string2 string3)
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable_transitive.env b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive.env
new file mode 100644
index 0000000..aaf965d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=true
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_2.env b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_2.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_2.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_3.env b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_3.env
new file mode 100644
index 0000000..975eaf4
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_3.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=false
+ROUGAIL_VARIABLE1=disabled
diff --git a/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_4.env b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_4.env
new file mode 100644
index 0000000..aaf965d
--- /dev/null
+++ b/tests/results/test_namespace/04_5disabled_calculation_variable_transitive_4.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=true
diff --git a/tests/results/test_namespace/04_5hidden_calculation.env b/tests/results/test_namespace/04_5hidden_calculation.env
new file mode 100644
index 0000000..8184276
--- /dev/null
+++ b/tests/results/test_namespace/04_5hidden_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/04_5hidden_calculation2.env b/tests/results/test_namespace/04_5hidden_calculation2.env
new file mode 100644
index 0000000..0f748ea
--- /dev/null
+++ b/tests/results/test_namespace/04_5hidden_calculation2.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=no
diff --git a/tests/results/test_namespace/04_5hidden_calculation_default_calculation.env b/tests/results/test_namespace/04_5hidden_calculation_default_calculation.env
new file mode 100644
index 0000000..8184276
--- /dev/null
+++ b/tests/results/test_namespace/04_5hidden_calculation_default_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/04_5validators.env b/tests/results/test_namespace/04_5validators.env
new file mode 100644
index 0000000..57be1b8
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators.env
@@ -0,0 +1 @@
+ROUGAIL_INT=1
diff --git a/tests/results/test_namespace/04_5validators_differ.env b/tests/results/test_namespace/04_5validators_differ.env
new file mode 100644
index 0000000..67e60f0
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_differ.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=oui
+ROUGAIL_VAR2=no
diff --git a/tests/results/test_namespace/04_5validators_multi.env b/tests/results/test_namespace/04_5validators_multi.env
new file mode 100644
index 0000000..3441c8e
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_multi.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=(no yes)
diff --git a/tests/results/test_namespace/04_5validators_multi2.env b/tests/results/test_namespace/04_5validators_multi2.env
new file mode 100644
index 0000000..3441c8e
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_multi2.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=(no yes)
diff --git a/tests/results/test_namespace/04_5validators_multi3.env b/tests/results/test_namespace/04_5validators_multi3.env
new file mode 100644
index 0000000..54fe459
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_multi3.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=(0 1 2)
diff --git a/tests/results/test_namespace/04_5validators_warnings.env b/tests/results/test_namespace/04_5validators_warnings.env
new file mode 100644
index 0000000..fa54ede
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_warnings.env
@@ -0,0 +1 @@
+ROUGAIL_INT=1000
diff --git a/tests/results/test_namespace/04_5validators_warnings_all.env b/tests/results/test_namespace/04_5validators_warnings_all.env
new file mode 100644
index 0000000..fa54ede
--- /dev/null
+++ b/tests/results/test_namespace/04_5validators_warnings_all.env
@@ -0,0 +1 @@
+ROUGAIL_INT=1000
diff --git a/tests/results/test_namespace/05_0multi_not_uniq.env b/tests/results/test_namespace/05_0multi_not_uniq.env
new file mode 100644
index 0000000..c7c59ee
--- /dev/null
+++ b/tests/results/test_namespace/05_0multi_not_uniq.env
@@ -0,0 +1 @@
+ROUGAIL_VAR1=(non)
diff --git a/tests/results/test_namespace/05_0multi_uniq.env b/tests/results/test_namespace/05_0multi_uniq.env
new file mode 100644
index 0000000..7166519
--- /dev/null
+++ b/tests/results/test_namespace/05_0multi_uniq.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=(non)
diff --git a/tests/results/test_namespace/12_1auto_save_expert.env b/tests/results/test_namespace/12_1auto_save_expert.env
new file mode 100644
index 0000000..b45b061
--- /dev/null
+++ b/tests/results/test_namespace/12_1auto_save_expert.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=no
diff --git a/tests/results/test_namespace/16_0redefine_description.env b/tests/results/test_namespace/16_0redefine_description.env
new file mode 100644
index 0000000..39a1266
--- /dev/null
+++ b/tests/results/test_namespace/16_0redefine_description.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=string1
diff --git a/tests/results/test_namespace/16_2family_redefine_calculation.env b/tests/results/test_namespace/16_2family_redefine_calculation.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/16_2family_redefine_calculation.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/16_2family_redefine_disabled.env b/tests/results/test_namespace/16_2family_redefine_disabled.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/16_2family_redefine_disabled.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/16_3family_empty_at_ends.env b/tests/results/test_namespace/16_3family_empty_at_ends.env
new file mode 100644
index 0000000..96377db
--- /dev/null
+++ b/tests/results/test_namespace/16_3family_empty_at_ends.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_VAR1=string1
diff --git a/tests/results/test_namespace/16_5exists_nonexists.env b/tests/results/test_namespace/16_5exists_nonexists.env
new file mode 100644
index 0000000..feecb61
--- /dev/null
+++ b/tests/results/test_namespace/16_5exists_nonexists.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=yes
diff --git a/tests/results/test_namespace/16_5exists_redefine.env b/tests/results/test_namespace/16_5exists_redefine.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/16_5exists_redefine.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/16_5redefine_calculation.env b/tests/results/test_namespace/16_5redefine_calculation.env
new file mode 100644
index 0000000..119ce14
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=yes
diff --git a/tests/results/test_namespace/16_5redefine_choice.env b/tests/results/test_namespace/16_5redefine_choice.env
new file mode 100644
index 0000000..c8da083
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_choice.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=a
diff --git a/tests/results/test_namespace/16_5redefine_default.env b/tests/results/test_namespace/16_5redefine_default.env
new file mode 100644
index 0000000..119ce14
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_default.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=yes
diff --git a/tests/results/test_namespace/16_5redefine_default_calculation.env b/tests/results/test_namespace/16_5redefine_default_calculation.env
new file mode 100644
index 0000000..c5ace83
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_default_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/16_5redefine_family.env b/tests/results/test_namespace/16_5redefine_family.env
new file mode 100644
index 0000000..5848417
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_family.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_VARIABLE=string1
diff --git a/tests/results/test_namespace/16_5redefine_help.env b/tests/results/test_namespace/16_5redefine_help.env
new file mode 100644
index 0000000..5848417
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_help.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_VARIABLE=string1
diff --git a/tests/results/test_namespace/16_5redefine_hidden.env b/tests/results/test_namespace/16_5redefine_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/16_5redefine_multi.env b/tests/results/test_namespace/16_5redefine_multi.env
new file mode 100644
index 0000000..7166519
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_multi.env
@@ -0,0 +1 @@
+ROUGAIL_VARIABLE=(non)
diff --git a/tests/results/test_namespace/16_5redefine_remove_disable_calculation.env b/tests/results/test_namespace/16_5redefine_remove_disable_calculation.env
new file mode 100644
index 0000000..adb8f43
--- /dev/null
+++ b/tests/results/test_namespace/16_5redefine_remove_disable_calculation.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VARIABLE=string1
diff --git a/tests/results/test_namespace/16_5test_redefine.env b/tests/results/test_namespace/16_5test_redefine.env
new file mode 100644
index 0000000..535b231
--- /dev/null
+++ b/tests/results/test_namespace/16_5test_redefine.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=non
+ROUGAIL_VAR3=string1
diff --git a/tests/results/test_namespace/16_6choice_redefine.env b/tests/results/test_namespace/16_6choice_redefine.env
new file mode 100644
index 0000000..78ab1c4
--- /dev/null
+++ b/tests/results/test_namespace/16_6choice_redefine.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=c
diff --git a/tests/results/test_namespace/16_6exists_family.env b/tests/results/test_namespace/16_6exists_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/16_6exists_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/16_6exists_redefine_family.env b/tests/results/test_namespace/16_6exists_redefine_family.env
new file mode 100644
index 0000000..5c53473
--- /dev/null
+++ b/tests/results/test_namespace/16_6exists_redefine_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_FAMILY1_VARIABLE1=string1
+ROUGAIL_FAMILY2_VARIABLE2=string1
diff --git a/tests/results/test_namespace/16exists_exists.env b/tests/results/test_namespace/16exists_exists.env
new file mode 100644
index 0000000..39a1266
--- /dev/null
+++ b/tests/results/test_namespace/16exists_exists.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=string1
diff --git a/tests/results/test_namespace/17_5redefine_leadership.env b/tests/results/test_namespace/17_5redefine_leadership.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/17_5redefine_leadership.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/20_0empty_family.env b/tests/results/test_namespace/20_0empty_family.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/20_0empty_family.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/20_0family_append.env b/tests/results/test_namespace/20_0family_append.env
new file mode 100644
index 0000000..17cbbf5
--- /dev/null
+++ b/tests/results/test_namespace/20_0family_append.env
@@ -0,0 +1,2 @@
+ROUGAIL_FAMILY_VAR1=string1
+ROUGAIL_FAMILY_VAR2=string1
diff --git a/tests/results/test_namespace/20_0family_underscore.env b/tests/results/test_namespace/20_0family_underscore.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/20_0family_underscore.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/20_0multi_family.env b/tests/results/test_namespace/20_0multi_family.env
new file mode 100644
index 0000000..a8dede7
--- /dev/null
+++ b/tests/results/test_namespace/20_0multi_family.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_SUBFAMILY_VARIABLE=''
diff --git a/tests/results/test_namespace/20_0multi_family_basic.env b/tests/results/test_namespace/20_0multi_family_basic.env
new file mode 100644
index 0000000..9b12825
--- /dev/null
+++ b/tests/results/test_namespace/20_0multi_family_basic.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_SUBFAMILY_VARIABLE=string1
diff --git a/tests/results/test_namespace/20_0multi_family_expert.env b/tests/results/test_namespace/20_0multi_family_expert.env
new file mode 100644
index 0000000..a8dede7
--- /dev/null
+++ b/tests/results/test_namespace/20_0multi_family_expert.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_SUBFAMILY_VARIABLE=''
diff --git a/tests/results/test_namespace/20_0multi_family_order.env b/tests/results/test_namespace/20_0multi_family_order.env
new file mode 100644
index 0000000..0cbcc9d
--- /dev/null
+++ b/tests/results/test_namespace/20_0multi_family_order.env
@@ -0,0 +1,4 @@
+ROUGAIL_VARIABLE=string1
+ROUGAIL_FAMILY_VARIABLE1=string1
+ROUGAIL_FAMILY_SUBFAMILY_VARIABLE=string1
+ROUGAIL_FAMILY_VARIABLE2=string1
diff --git a/tests/results/test_namespace/20_0validators_differ_redefine.env b/tests/results/test_namespace/20_0validators_differ_redefine.env
new file mode 100644
index 0000000..fa608e9
--- /dev/null
+++ b/tests/results/test_namespace/20_0validators_differ_redefine.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR1=no
+ROUGAIL_VAR2=no
+ROUGAIL_VAR3=yes
diff --git a/tests/results/test_namespace/20_1empty_subfamily.env b/tests/results/test_namespace/20_1empty_subfamily.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/20_1empty_subfamily.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/20_2family_looks_like_dynamic.env b/tests/results/test_namespace/20_2family_looks_like_dynamic.env
new file mode 100644
index 0000000..08d50c6
--- /dev/null
+++ b/tests/results/test_namespace/20_2family_looks_like_dynamic.env
@@ -0,0 +1,2 @@
+ROUGAIL_MY_FAMILY_DYNAMIC=(val1 val2)
+ROUGAIL_MY_FAMILY_VAR=true
diff --git a/tests/results/test_namespace/20_2family_looks_like_variable.env b/tests/results/test_namespace/20_2family_looks_like_variable.env
new file mode 100644
index 0000000..3653ff5
--- /dev/null
+++ b/tests/results/test_namespace/20_2family_looks_like_variable.env
@@ -0,0 +1 @@
+ROUGAIL_MY_FAMILY_DEFAULT=true
diff --git a/tests/results/test_namespace/20_7help_family.env b/tests/results/test_namespace/20_7help_family.env
new file mode 100644
index 0000000..db1f1f0
--- /dev/null
+++ b/tests/results/test_namespace/20_7help_family.env
@@ -0,0 +1,3 @@
+ROUGAIL_FAMILY1_VAR=string1
+ROUGAIL_FAMILY2_VAR=string1
+ROUGAIL_FAMILY3_VAR=string1
diff --git a/tests/results/test_namespace/20_9default_information_parent.env b/tests/results/test_namespace/20_9default_information_parent.env
new file mode 100644
index 0000000..17cbbf5
--- /dev/null
+++ b/tests/results/test_namespace/20_9default_information_parent.env
@@ -0,0 +1,2 @@
+ROUGAIL_FAMILY_VAR1=string1
+ROUGAIL_FAMILY_VAR2=string1
diff --git a/tests/results/test_namespace/24_0family_hidden_condition.env b/tests/results/test_namespace/24_0family_hidden_condition.env
new file mode 100644
index 0000000..a98195d
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_condition.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_FAMILY_VAR1=string1
diff --git a/tests/results/test_namespace/24_0family_hidden_condition_boolean.env b/tests/results/test_namespace/24_0family_hidden_condition_boolean.env
new file mode 100644
index 0000000..0b43855
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_condition_boolean.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=false
diff --git a/tests/results/test_namespace/24_0family_hidden_condition_sub_family.env b/tests/results/test_namespace/24_0family_hidden_condition_sub_family.env
new file mode 100644
index 0000000..07952ce
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_condition_sub_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_FAMILY_SUBFAMILY_VAR1=string1
diff --git a/tests/results/test_namespace/24_0family_hidden_condition_variable_sub_family.env b/tests/results/test_namespace/24_0family_hidden_condition_variable_sub_family.env
new file mode 100644
index 0000000..aaf965d
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_condition_variable_sub_family.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=true
diff --git a/tests/results/test_namespace/24_0family_hidden_condition_with_variable.env b/tests/results/test_namespace/24_0family_hidden_condition_with_variable.env
new file mode 100644
index 0000000..348c137
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_condition_with_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION1=false
+ROUGAIL_CONDITION2=false
diff --git a/tests/results/test_namespace/24_0family_hidden_param_condition_sub_family.env b/tests/results/test_namespace/24_0family_hidden_param_condition_sub_family.env
new file mode 100644
index 0000000..a236b86
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_hidden_param_condition_sub_family.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_FAMILY_SUB_FAMILY_VAR1=string1
diff --git a/tests/results/test_namespace/24_0family_mandatory_condition.env b/tests/results/test_namespace/24_0family_mandatory_condition.env
new file mode 100644
index 0000000..5b57ba5
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_mandatory_condition.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=no
+ROUGAIL_VAR=''
diff --git a/tests/results/test_namespace/24_0family_mandatory_condition_variable.env b/tests/results/test_namespace/24_0family_mandatory_condition_variable.env
new file mode 100644
index 0000000..1ae4e41
--- /dev/null
+++ b/tests/results/test_namespace/24_0family_mandatory_condition_variable.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=true
+ROUGAIL_VAR=string1
diff --git a/tests/results/test_namespace/24_7validators_variable_optional.env b/tests/results/test_namespace/24_7validators_variable_optional.env
new file mode 100644
index 0000000..b0ff9a5
--- /dev/null
+++ b/tests/results/test_namespace/24_7validators_variable_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_GENERAL_INT=5
+ROUGAIL_GENERAL_INT2=1
diff --git a/tests/results/test_namespace/24_family_disabled_var_hidden.env b/tests/results/test_namespace/24_family_disabled_var_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/24_family_disabled_var_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/40_0leadership.env b/tests/results/test_namespace/40_0leadership.env
new file mode 100644
index 0000000..ea51d00
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER1=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/40_0leadership_diff_name.env b/tests/results/test_namespace/40_0leadership_diff_name.env
new file mode 100644
index 0000000..716cdfb
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_diff_name.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADERSHIP_LEADER=(string1 string2 string3)
+ROUGAIL_LEADERSHIP_FOLLOWER1=(string1 string2 string3)
+ROUGAIL_LEADERSHIP_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/40_0leadership_empty.env b/tests/results/test_namespace/40_0leadership_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/40_0leadership_follower_default_calculation.env b/tests/results/test_namespace/40_0leadership_follower_default_calculation.env
new file mode 100644
index 0000000..534c042
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_follower_default_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER1=(value value value)
+ROUGAIL_LEADER_FOLLOWER2=(value value value)
diff --git a/tests/results/test_namespace/40_0leadership_follower_default_submulti.env b/tests/results/test_namespace/40_0leadership_follower_default_submulti.env
new file mode 100644
index 0000000..d45198f
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_follower_default_submulti.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(leader)
+ROUGAIL_LEADER_FOLLOWER1=(value)
+ROUGAIL_LEADER_FOLLOWER2=('value1;value2')
diff --git a/tests/results/test_namespace/40_0leadership_follower_default_submulti_calculation.env b/tests/results/test_namespace/40_0leadership_follower_default_submulti_calculation.env
new file mode 100644
index 0000000..5e231fc
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_follower_default_submulti_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(leader)
+ROUGAIL_LEADER_FOLLOWER1=(value)
+ROUGAIL_LEADER_FOLLOWER2=(value)
diff --git a/tests/results/test_namespace/40_0leadership_follower_default_value.env b/tests/results/test_namespace/40_0leadership_follower_default_value.env
new file mode 100644
index 0000000..184597a
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_follower_default_value.env
@@ -0,0 +1 @@
+ROUGAIL_LEADER_LEADER=()
diff --git a/tests/results/test_namespace/40_0leadership_leader_follower.env b/tests/results/test_namespace/40_0leadership_leader_follower.env
new file mode 100644
index 0000000..3715d85
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_leader_follower.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADERSHIP_LEADER=(value1 value2)
+ROUGAIL_LEADERSHIP_FOLLOWER=(value1 value2)
diff --git a/tests/results/test_namespace/40_0leadership_leader_not_multi.env b/tests/results/test_namespace/40_0leadership_leader_not_multi.env
new file mode 100644
index 0000000..542e926
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_leader_not_multi.env
@@ -0,0 +1,4 @@
+ROUGAIL_GENERAL_MODE_CONTENEUR_ACTIF=non
+ROUGAIL_GENERAL1_LEADER_LEADER=(string1 string2 string3)
+ROUGAIL_GENERAL1_LEADER_FOLLOWER1=(string1 string2 string3)
+ROUGAIL_GENERAL1_LEADER_FOLLOWER2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/40_0leadership_reduce.env b/tests/results/test_namespace/40_0leadership_reduce.env
new file mode 100644
index 0000000..c6046e4
--- /dev/null
+++ b/tests/results/test_namespace/40_0leadership_reduce.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADERSHIP_LEADER=(value_1 value_2 value_3)
+ROUGAIL_LEADERSHIP_FOLLOWER=(string1 string2 string3)
diff --git a/tests/results/test_namespace/40_1leadership_append_follower.env b/tests/results/test_namespace/40_1leadership_append_follower.env
new file mode 100644
index 0000000..68d1881
--- /dev/null
+++ b/tests/results/test_namespace/40_1leadership_append_follower.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER1=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER2=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER3=(string1 string2 string3)
diff --git a/tests/results/test_namespace/40_2leadership_calculation_index.env b/tests/results/test_namespace/40_2leadership_calculation_index.env
new file mode 100644
index 0000000..df578d1
--- /dev/null
+++ b/tests/results/test_namespace/40_2leadership_calculation_index.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADER_LEADER=(a b c)
+ROUGAIL_LEADER_FOLLOWER1=(0 1 2)
diff --git a/tests/results/test_namespace/40_2leadership_calculation_index_2.env b/tests/results/test_namespace/40_2leadership_calculation_index_2.env
new file mode 100644
index 0000000..df578d1
--- /dev/null
+++ b/tests/results/test_namespace/40_2leadership_calculation_index_2.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADER_LEADER=(a b c)
+ROUGAIL_LEADER_FOLLOWER1=(0 1 2)
diff --git a/tests/results/test_namespace/40_2leadership_calculation_param_index.env b/tests/results/test_namespace/40_2leadership_calculation_param_index.env
new file mode 100644
index 0000000..df578d1
--- /dev/null
+++ b/tests/results/test_namespace/40_2leadership_calculation_param_index.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADER_LEADER=(a b c)
+ROUGAIL_LEADER_FOLLOWER1=(0 1 2)
diff --git a/tests/results/test_namespace/40_2leadership_leader_calculation.env b/tests/results/test_namespace/40_2leadership_leader_calculation.env
new file mode 100644
index 0000000..cb9bccc
--- /dev/null
+++ b/tests/results/test_namespace/40_2leadership_leader_calculation.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(val1 val2)
+ROUGAIL_LEADER_FOLLOWER1=(string1 string2)
+ROUGAIL_LEADER_FOLLOWER2=(string1 string2)
diff --git a/tests/results/test_namespace/40_6leadership_follower_multi.env b/tests/results/test_namespace/40_6leadership_follower_multi.env
new file mode 100644
index 0000000..40284e8
--- /dev/null
+++ b/tests/results/test_namespace/40_6leadership_follower_multi.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADERSHIP_LEADER=(string1 string2 string3)
+ROUGAIL_LEADERSHIP_FOLLOWER1=('string1;string2;string3' 'string1;string2;string3' 'string1;string2;string3')
+ROUGAIL_LEADERSHIP_FOLLOWER2=(value value value)
diff --git a/tests/results/test_namespace/40_6leadership_follower_multi_no_mandatory.env b/tests/results/test_namespace/40_6leadership_follower_multi_no_mandatory.env
new file mode 100644
index 0000000..3301d91
--- /dev/null
+++ b/tests/results/test_namespace/40_6leadership_follower_multi_no_mandatory.env
@@ -0,0 +1 @@
+ROUGAIL_LEADERSHIP_LEADER=()
diff --git a/tests/results/test_namespace/40_8calculation_boolean.env b/tests/results/test_namespace/40_8calculation_boolean.env
new file mode 100644
index 0000000..5236ed3
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_boolean.env
@@ -0,0 +1,3 @@
+ROUGAIL_BOOL=false
+ROUGAIL_MULTI1=(false)
+ROUGAIL_MULTI2=(true false)
diff --git a/tests/results/test_namespace/40_8calculation_boolean_return_none.env b/tests/results/test_namespace/40_8calculation_boolean_return_none.env
new file mode 100644
index 0000000..f31fd11
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_boolean_return_none.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=yes
+ROUGAIL_VAR2=true
diff --git a/tests/results/test_namespace/40_8calculation_integer.env b/tests/results/test_namespace/40_8calculation_integer.env
new file mode 100644
index 0000000..c102a6d
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_integer.env
@@ -0,0 +1,3 @@
+ROUGAIL_BOOL=false
+ROUGAIL_INT1=2
+ROUGAIL_INT2=3
diff --git a/tests/results/test_namespace/40_8calculation_multi_variable.env b/tests/results/test_namespace/40_8calculation_multi_variable.env
new file mode 100644
index 0000000..2077adf
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_multi_variable.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(no yes)
+ROUGAIL_VAR2=no
+ROUGAIL_VAR3=yes
diff --git a/tests/results/test_namespace/40_8calculation_multi_variable_parent.env b/tests/results/test_namespace/40_8calculation_multi_variable_parent.env
new file mode 100644
index 0000000..3d9d2bc
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_multi_variable_parent.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=no
+ROUGAIL_FAM1_VAR=no
diff --git a/tests/results/test_namespace/40_8calculation_multi_variable_parent2.env b/tests/results/test_namespace/40_8calculation_multi_variable_parent2.env
new file mode 100644
index 0000000..b893959
--- /dev/null
+++ b/tests/results/test_namespace/40_8calculation_multi_variable_parent2.env
@@ -0,0 +1,2 @@
+ROUGAIL_FAM1_VAR=no
+ROUGAIL_FAM2_VAR=no
diff --git a/tests/results/test_namespace/40_9calculation_variable_leader_follower_multi_inside.env b/tests/results/test_namespace/40_9calculation_variable_leader_follower_multi_inside.env
new file mode 100644
index 0000000..3715d85
--- /dev/null
+++ b/tests/results/test_namespace/40_9calculation_variable_leader_follower_multi_inside.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADERSHIP_LEADER=(value1 value2)
+ROUGAIL_LEADERSHIP_FOLLOWER=(value1 value2)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-follower-first.env b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-first.env
new file mode 100644
index 0000000..cdd48ac
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-first.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=(val11)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-follower-last.env b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-last.env
new file mode 100644
index 0000000..cdd48ac
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-last.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=(val11)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-follower-no-mandatory.env b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-no-mandatory.env
new file mode 100644
index 0000000..7a76c97
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-follower-no-mandatory.env
@@ -0,0 +1,3 @@
+ROUGAIL_LEADER_LEADER=(a b)
+ROUGAIL_LEADER_FOLLOWER=('' '')
+ROUGAIL_VARIABLE=('' '')
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-follower.env b/tests/results/test_namespace/40_9leadership-calculation-outside-follower.env
new file mode 100644
index 0000000..bec6ce3
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-follower.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=(val11 val11)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-leader-first.env b/tests/results/test_namespace/40_9leadership-calculation-outside-leader-first.env
new file mode 100644
index 0000000..cb987d3
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-leader-first.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=value1
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-leader-last.env b/tests/results/test_namespace/40_9leadership-calculation-outside-leader-last.env
new file mode 100644
index 0000000..5587144
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-leader-last.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=value2
diff --git a/tests/results/test_namespace/40_9leadership-calculation-outside-leader.env b/tests/results/test_namespace/40_9leadership-calculation-outside-leader.env
new file mode 100644
index 0000000..aab45be
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-outside-leader.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
+ROUGAIL_CALCULATE=(value1 value2)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-variable.env b/tests/results/test_namespace/40_9leadership-calculation-variable.env
new file mode 100644
index 0000000..83e2cd6
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-variable.env
@@ -0,0 +1,4 @@
+ROUGAIL_CALCULATE=(value1 value2)
+ROUGAIL_LEADER_LEADER=(value1 value2)
+ROUGAIL_LEADER_FOLLOWER1=(val11 val11)
+ROUGAIL_LEADER_FOLLOWER2=(val21 val21)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower.env b/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower.env
new file mode 100644
index 0000000..a32a571
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADERSHIP_1_LEADER=(value1 value2)
+ROUGAIL_LEADERSHIP_1_FOLLOWER=(string1 string2)
+ROUGAIL_LEADERSHIP_2_LEADER=(string1 string2)
+ROUGAIL_LEADERSHIP_2_FOLLOWER=(val val)
diff --git a/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower_not_same.env b/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower_not_same.env
new file mode 100644
index 0000000..d6bef8f
--- /dev/null
+++ b/tests/results/test_namespace/40_9leadership-calculation-variable_leader_follower_not_same.env
@@ -0,0 +1,4 @@
+ROUGAIL_LEADERSHIP_1_LEADER=(value1 value2)
+ROUGAIL_LEADERSHIP_1_FOLLOWER=(string1 string2)
+ROUGAIL_LEADERSHIP_2_LEADER=(value1 value2)
+ROUGAIL_LEADERSHIP_2_FOLLOWER=('value1;value2' 'value1;value2')
diff --git a/tests/results/test_namespace/41_0choice_leader.env b/tests/results/test_namespace/41_0choice_leader.env
new file mode 100644
index 0000000..184597a
--- /dev/null
+++ b/tests/results/test_namespace/41_0choice_leader.env
@@ -0,0 +1 @@
+ROUGAIL_LEADER_LEADER=()
diff --git a/tests/results/test_namespace/44_0leadership_hidden.env b/tests/results/test_namespace/44_0leadership_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/44_0leadership_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/44_0leadership_leader_hidden.env b/tests/results/test_namespace/44_0leadership_leader_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/44_0leadership_leader_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/44_1leadership_append_hidden_follower.env b/tests/results/test_namespace/44_1leadership_append_hidden_follower.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/44_1leadership_append_hidden_follower.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/44_4disabled_calcultion_follower.env b/tests/results/test_namespace/44_4disabled_calcultion_follower.env
new file mode 100644
index 0000000..1abd0a3
--- /dev/null
+++ b/tests/results/test_namespace/44_4disabled_calcultion_follower.env
@@ -0,0 +1,3 @@
+ROUGAIL_CONDITION=true
+ROUGAIL_LEADER_LEADER=(a)
+ROUGAIL_LEADER_FOLLOWER=(string1)
diff --git a/tests/results/test_namespace/44_4disabled_calcultion_follower_index.env b/tests/results/test_namespace/44_4disabled_calcultion_follower_index.env
new file mode 100644
index 0000000..f5233d2
--- /dev/null
+++ b/tests/results/test_namespace/44_4disabled_calcultion_follower_index.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADERSHIP_LEADER=(a b)
+ROUGAIL_LEADERSHIP_FOLLOWER=('' value)
diff --git a/tests/results/test_namespace/44_4leadership_mandatory.env b/tests/results/test_namespace/44_4leadership_mandatory.env
new file mode 100644
index 0000000..a1fe01b
--- /dev/null
+++ b/tests/results/test_namespace/44_4leadership_mandatory.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADER_LEADER=(string1 string2 string3)
+ROUGAIL_LEADER_FOLLOWER1=('' '' '')
diff --git a/tests/results/test_namespace/44_4leadership_mandatory_follower.env b/tests/results/test_namespace/44_4leadership_mandatory_follower.env
new file mode 100644
index 0000000..184597a
--- /dev/null
+++ b/tests/results/test_namespace/44_4leadership_mandatory_follower.env
@@ -0,0 +1 @@
+ROUGAIL_LEADER_LEADER=()
diff --git a/tests/results/test_namespace/44_5leadership_leader_hidden_calculation.env b/tests/results/test_namespace/44_5leadership_leader_hidden_calculation.env
new file mode 100644
index 0000000..0f748ea
--- /dev/null
+++ b/tests/results/test_namespace/44_5leadership_leader_hidden_calculation.env
@@ -0,0 +1 @@
+ROUGAIL_CONDITION=no
diff --git a/tests/results/test_namespace/44_6leadership_follower_disabled_calculation.env b/tests/results/test_namespace/44_6leadership_follower_disabled_calculation.env
new file mode 100644
index 0000000..dfcaa44
--- /dev/null
+++ b/tests/results/test_namespace/44_6leadership_follower_disabled_calculation.env
@@ -0,0 +1,2 @@
+ROUGAIL_CONDITION=yes
+ROUGAIL_LEADER_LEADER=(string1 string2 string3)
diff --git a/tests/results/test_namespace/44_9calculated_default_leadership_leader.env b/tests/results/test_namespace/44_9calculated_default_leadership_leader.env
new file mode 100644
index 0000000..a34cbba
--- /dev/null
+++ b/tests/results/test_namespace/44_9calculated_default_leadership_leader.env
@@ -0,0 +1,2 @@
+ROUGAIL_LEADER_LEADER=(a b)
+ROUGAIL_LEADER_FOLLOWER=('' b)
diff --git a/tests/results/test_namespace/60_0family_dynamic.env b/tests/results/test_namespace/60_0family_dynamic.env
new file mode 100644
index 0000000..5177e8a
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_0.env b/tests/results/test_namespace/60_0family_dynamic_1_0.env
new file mode 100644
index 0000000..608a8c8
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_0.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VARDYN=''
+ROUGAIL_DYNVAL2_VARDYN=''
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_0_empty.env b/tests/results/test_namespace/60_0family_dynamic_1_0_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_0_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_0_type.env b/tests/results/test_namespace/60_0family_dynamic_1_0_type.env
new file mode 100644
index 0000000..3737fca
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_0_type.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VARDYN=string1
+ROUGAIL_DYNVAL2_VARDYN=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_0_type_empty.env b/tests/results/test_namespace/60_0family_dynamic_1_0_type_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_0_type_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_1.env b/tests/results/test_namespace/60_0family_dynamic_1_1.env
new file mode 100644
index 0000000..3737fca
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_1.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VARDYN=string1
+ROUGAIL_DYNVAL2_VARDYN=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_1_1_empty.env b/tests/results/test_namespace/60_0family_dynamic_1_1_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_1_1_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_0family_dynamic_empty.env b/tests/results/test_namespace/60_0family_dynamic_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_0family_dynamic_forbidden_char.env b/tests/results/test_namespace/60_0family_dynamic_forbidden_char.env
new file mode 100644
index 0000000..3b703ff
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_forbidden_char.env
@@ -0,0 +1,5 @@
+ROUGAIL_VAR=(val.1 val.2)
+ROUGAIL_DYNVAL_1_VAR1=val.1
+ROUGAIL_DYNVAL_1_VAR2=val.1
+ROUGAIL_DYNVAL_2_VAR1=val.2
+ROUGAIL_DYNVAL_2_VAR2=val.2
diff --git a/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty.env b/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty.env
new file mode 100644
index 0000000..419fe27
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty2.env b/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty2.env
new file mode 100644
index 0000000..419fe27
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_jinja_integer_empty2.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_jinja_number.env b/tests/results/test_namespace/60_0family_dynamic_jinja_number.env
new file mode 100644
index 0000000..10d0d35
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_jinja_number.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(1 2)
+ROUGAIL_DYN1_VAR=val
+ROUGAIL_DYN2_VAR=val
+ROUGAIL_VAR2=val
diff --git a/tests/results/test_namespace/60_0family_dynamic_no_description.env b/tests/results/test_namespace/60_0family_dynamic_no_description.env
new file mode 100644
index 0000000..5177e8a
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_no_description.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_no_description_empty.env b/tests/results/test_namespace/60_0family_dynamic_no_description_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_no_description_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_0family_dynamic_source_hidden.env b/tests/results/test_namespace/60_0family_dynamic_source_hidden.env
new file mode 100644
index 0000000..d069cd8
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_source_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_static.env b/tests/results/test_namespace/60_0family_dynamic_static.env
new file mode 100644
index 0000000..d069cd8
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_static.env
@@ -0,0 +1,2 @@
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_test.env b/tests/results/test_namespace/60_0family_dynamic_test.env
new file mode 100644
index 0000000..5177e8a
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_test.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_upper_char.env b/tests/results/test_namespace/60_0family_dynamic_upper_char.env
new file mode 100644
index 0000000..f6c575f
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_upper_char.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(Val1 VAL2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_variable.env b/tests/results/test_namespace/60_0family_dynamic_variable.env
new file mode 100644
index 0000000..6f0aa67
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_variable.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VARIABLE=string1
+ROUGAIL_DYNVAL2_VARIABLE=string1
diff --git a/tests/results/test_namespace/60_0family_dynamic_variable_empty.env b/tests/results/test_namespace/60_0family_dynamic_variable_empty.env
new file mode 100644
index 0000000..d17084b
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_variable_empty.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(string1 string2 string3)
+ROUGAIL_DYNSTRING1_VAR=val
+ROUGAIL_DYNSTRING2_VAR=val
+ROUGAIL_DYNSTRING3_VAR=val
diff --git a/tests/results/test_namespace/60_0family_dynamic_variable_optional.env b/tests/results/test_namespace/60_0family_dynamic_variable_optional.env
new file mode 100644
index 0000000..333fa25
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_variable_optional.env
@@ -0,0 +1,2 @@
+ROUGAIL_DYNA_VAR=val
+ROUGAIL_DYNB_VAR=val
diff --git a/tests/results/test_namespace/60_0family_dynamic_variable_suffix.env b/tests/results/test_namespace/60_0family_dynamic_variable_suffix.env
new file mode 100644
index 0000000..3f03136
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_variable_suffix.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR='a value'
+ROUGAIL_DYNVAL2_VAR='a value'
diff --git a/tests/results/test_namespace/60_0family_dynamic_variable_suffix_empty.env b/tests/results/test_namespace/60_0family_dynamic_variable_suffix_empty.env
new file mode 100644
index 0000000..3f03136
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_dynamic_variable_suffix_empty.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR='a value'
+ROUGAIL_DYNVAL2_VAR='a value'
diff --git a/tests/results/test_namespace/60_0family_empty.env b/tests/results/test_namespace/60_0family_empty.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_empty.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/60_0family_hidden.env b/tests/results/test_namespace/60_0family_hidden.env
new file mode 100644
index 0000000..4c0d52d
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_hidden.env
@@ -0,0 +1 @@
+
diff --git a/tests/results/test_namespace/60_0family_mode.env b/tests/results/test_namespace/60_0family_mode.env
new file mode 100644
index 0000000..647dea9
--- /dev/null
+++ b/tests/results/test_namespace/60_0family_mode.env
@@ -0,0 +1 @@
+ROUGAIL_FAMILY_VAR=non
diff --git a/tests/results/test_namespace/60_1family_dynamic_jinja.env b/tests/results/test_namespace/60_1family_dynamic_jinja.env
new file mode 100644
index 0000000..b56f765
--- /dev/null
+++ b/tests/results/test_namespace/60_1family_dynamic_jinja.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYN1_VAR=val
+ROUGAIL_DYN2_VAR=val
diff --git a/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group.env b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group.env
new file mode 100644
index 0000000..4b96ba6
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_FAMILY_VAR=string1
+ROUGAIL_DYNVAL2_FAMILY_VAR=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2.env b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2.env
new file mode 100644
index 0000000..2429d56
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_FAMILY_VAR=val1
+ROUGAIL_DYNVAL2_FAMILY_VAR=val2
+ROUGAIL_VAR2=val1
diff --git a/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2_empty.env b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
new file mode 100644
index 0000000..2510068
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_2_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=''
diff --git a/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_empty.env b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_empty.env
new file mode 100644
index 0000000..036e0a5
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_jinja_fill_sub_group_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_VAR2=''
diff --git a/tests/results/test_namespace/60_2family_dynamic_outside_calc.env b/tests/results/test_namespace/60_2family_dynamic_outside_calc.env
new file mode 100644
index 0000000..20540ea
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_outside_calc.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=val
+ROUGAIL_DYNVAL2_VAR=val
+ROUGAIL_NEWVAR=val
diff --git a/tests/results/test_namespace/60_2family_dynamic_outside_calc_empty.env b/tests/results/test_namespace/60_2family_dynamic_outside_calc_empty.env
new file mode 100644
index 0000000..c1cafdb
--- /dev/null
+++ b/tests/results/test_namespace/60_2family_dynamic_outside_calc_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_NEWVAR=''
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc2.env b/tests/results/test_namespace/60_5family_dynamic_calc2.env
new file mode 100644
index 0000000..57d7385
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc2.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_VAR2=string1
+ROUGAIL_DYNVAL1_VARDYN=val
+ROUGAIL_DYNVAL2_VARDYN=val
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc2_empty.env b/tests/results/test_namespace/60_5family_dynamic_calc2_empty.env
new file mode 100644
index 0000000..419fe27
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc2_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_description.env b/tests/results/test_namespace/60_5family_dynamic_calc_description.env
new file mode 100644
index 0000000..9fa8629
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_description.env
@@ -0,0 +1,4 @@
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
+ROUGAIL_VAR1=string1
+ROUGAIL_VAR2=(string1 string1)
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_identifier.env b/tests/results/test_namespace/60_5family_dynamic_calc_identifier.env
new file mode 100644
index 0000000..e165093
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_identifier.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=val1
+ROUGAIL_DYNVAL2_VAR=val2
+ROUGAIL_VAR3=val1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_identifier_multi.env b/tests/results/test_namespace/60_5family_dynamic_calc_identifier_multi.env
new file mode 100644
index 0000000..518e907
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_identifier_multi.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=(val1)
+ROUGAIL_DYNVAL2_VAR=(val2)
+ROUGAIL_VAR3=(val1)
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix.env
new file mode 100644
index 0000000..d08458a
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix2.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix2.env
new file mode 100644
index 0000000..97886db
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix2.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=val1
+ROUGAIL_DYNVAL2_VAR=val2
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix2_empty.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix2_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix2_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled.env
new file mode 100644
index 0000000..32bda55
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled.env
@@ -0,0 +1 @@
+ROUGAIL_DYNVAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled2.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled2.env
new file mode 100644
index 0000000..c042a17
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled2.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(val1)
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled3.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled3.env
new file mode 100644
index 0000000..036e0a5
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_disabled3.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_VAR2=''
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty.env
new file mode 100644
index 0000000..993a5f7
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_2.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_2.env
new file mode 100644
index 0000000..993a5f7
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_2.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_3.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_3.env
new file mode 100644
index 0000000..b63d89b
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_empty_3.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR2=string1
+ROUGAIL_VAR1=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden.env
new file mode 100644
index 0000000..7a61498
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_VAR2='a value'
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_boolean.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_boolean.env
new file mode 100644
index 0000000..073667b
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_boolean.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_VAR2=true
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_multi.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_multi.env
new file mode 100644
index 0000000..6945f61
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_hidden_multi.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_VAR2=('a value' 'a second value')
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param.env
new file mode 100644
index 0000000..97886db
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=val1
+ROUGAIL_DYNVAL2_VAR=val2
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param_empty.env b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_suffix_param_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_variable.env b/tests/results/test_namespace/60_5family_dynamic_calc_variable.env
new file mode 100644
index 0000000..d08458a
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_variable.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_VAR=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled.env b/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled.env
new file mode 100644
index 0000000..7aceb39
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled.env
@@ -0,0 +1,4 @@
+ROUGAIL_DYNVAL1_VAR1=string1
+ROUGAIL_DYNVAL1_VAR2=string1
+ROUGAIL_DYNVAL2_VAR1=string1
+ROUGAIL_DYNVAL2_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled_outside.env b/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled_outside.env
new file mode 100644
index 0000000..84cf808
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_variable_disabled_outside.env
@@ -0,0 +1,3 @@
+ROUGAIL_DYNVAL1_VAR1=string1
+ROUGAIL_DYNVAL2_VAR1=string1
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_calc_variable_empty.env b/tests/results/test_namespace/60_5family_dynamic_calc_variable_empty.env
new file mode 100644
index 0000000..993a5f7
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_calc_variable_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR1=()
+ROUGAIL_VAR2=string1
diff --git a/tests/results/test_namespace/60_5family_dynamic_hidden_suffix.env b/tests/results/test_namespace/60_5family_dynamic_hidden_suffix.env
new file mode 100644
index 0000000..a4123db
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_hidden_suffix.env
@@ -0,0 +1,2 @@
+ROUGAIL_DYNVAL1_VAR=''
+ROUGAIL_DYNVAL1_FAMILY_VAR=''
diff --git a/tests/results/test_namespace/60_5family_dynamic_unknown_suffix.env b/tests/results/test_namespace/60_5family_dynamic_unknown_suffix.env
new file mode 100644
index 0000000..63c9efd
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_unknown_suffix.env
@@ -0,0 +1,7 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_VAL1_DYN_VAR1=val1
+ROUGAIL_VAL1_DYN_VAR2=val1
+ROUGAIL_VAL1_DYN_VAR3=val1
+ROUGAIL_VAL2_DYN_VAR1=val2
+ROUGAIL_VAL2_DYN_VAR2=val2
+ROUGAIL_VAL2_DYN_VAR3=val2
diff --git a/tests/results/test_namespace/60_5family_dynamic_unknown_suffix_empty.env b/tests/results/test_namespace/60_5family_dynamic_unknown_suffix_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_unknown_suffix_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside.env
new file mode 100644
index 0000000..f0af48a
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_MY_DYN_FAMILY_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL2_VAR=val2
+ROUGAIL_VAR2=(val1 val2)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside2.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside2.env
new file mode 100644
index 0000000..e6d4e12
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside2.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR2=(val1 val2)
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_MY_DYN_FAMILY_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL2_VAR=val2
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside2_empty.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside2_empty.env
new file mode 100644
index 0000000..312447c
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside2_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR2=(string1 string2 string3)
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_1_0.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_1_0.env
new file mode 100644
index 0000000..f0af48a
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_1_0.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_MY_DYN_FAMILY_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL2_VAR=val2
+ROUGAIL_VAR2=(val1 val2)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_empty.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_empty.env
new file mode 100644
index 0000000..eac0deb
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja.env
new file mode 100644
index 0000000..f0af48a
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_MY_DYN_FAMILY_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL2_VAR=val2
+ROUGAIL_VAR2=(val1 val2)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja_empty.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja_empty.env
new file mode 100644
index 0000000..eac0deb
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_jinja_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=(string1 string2 string3)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix.env
new file mode 100644
index 0000000..120a218
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_MY_DYN_FAMILY_VAL1_SUBDYN_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL1_SUBDYN_VAL2_VAR=val2
+ROUGAIL_MY_DYN_FAMILY_VAL2_SUBDYN_VAL1_VAR=val1
+ROUGAIL_MY_DYN_FAMILY_VAL2_SUBDYN_VAL2_VAR=val2
+ROUGAIL_VAR2=(val1 val2)
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix_empty.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix_empty.env
new file mode 100644
index 0000000..adc8d8d
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_sub_suffix_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=()
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix.env
new file mode 100644
index 0000000..eb872eb
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix.env
@@ -0,0 +1,4 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYN_VAL1_VAR=val1
+ROUGAIL_DYN_VAL2_VAR=val2
+ROUGAIL_VAR2=val1
diff --git a/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix_empty.env b/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix_empty.env
new file mode 100644
index 0000000..2510068
--- /dev/null
+++ b/tests/results/test_namespace/60_5family_dynamic_variable_outside_suffix_empty.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=()
+ROUGAIL_VAR2=''
diff --git a/tests/results/test_namespace/60_6family_dynamic_inside.env b/tests/results/test_namespace/60_6family_dynamic_inside.env
new file mode 100644
index 0000000..642ad44
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_inside.env
@@ -0,0 +1,9 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_VAL1_DYN_VAR1=val1
+ROUGAIL_VAL1_DYN_VAR2=val1
+ROUGAIL_VAL1_DYN_VAR3=val1
+ROUGAIL_VAL1_DYN_VAR4=val1
+ROUGAIL_VAL2_DYN_VAR1=val2
+ROUGAIL_VAL2_DYN_VAR2=val2
+ROUGAIL_VAL2_DYN_VAR3=val2
+ROUGAIL_VAL2_DYN_VAR4=val1
diff --git a/tests/results/test_namespace/60_6family_dynamic_inside_empty.env b/tests/results/test_namespace/60_6family_dynamic_inside_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_inside_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_6family_dynamic_inside_identifier.env b/tests/results/test_namespace/60_6family_dynamic_inside_identifier.env
new file mode 100644
index 0000000..642ad44
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_inside_identifier.env
@@ -0,0 +1,9 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_VAL1_DYN_VAR1=val1
+ROUGAIL_VAL1_DYN_VAR2=val1
+ROUGAIL_VAL1_DYN_VAR3=val1
+ROUGAIL_VAL1_DYN_VAR4=val1
+ROUGAIL_VAL2_DYN_VAR1=val2
+ROUGAIL_VAL2_DYN_VAR2=val2
+ROUGAIL_VAL2_DYN_VAR3=val2
+ROUGAIL_VAL2_DYN_VAR4=val1
diff --git a/tests/results/test_namespace/60_6family_dynamic_leadership.env b/tests/results/test_namespace/60_6family_dynamic_leadership.env
new file mode 100644
index 0000000..be69b4c
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_leadership.env
@@ -0,0 +1,7 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_LEADERSHIP_LEADER=(string1 string2 string3)
+ROUGAIL_DYNVAL1_LEADERSHIP_FOLLOWER1=('' '' '')
+ROUGAIL_DYNVAL1_LEADERSHIP_FOLLOWER2=('' '' '')
+ROUGAIL_DYNVAL2_LEADERSHIP_LEADER=(string1 string2 string3)
+ROUGAIL_DYNVAL2_LEADERSHIP_FOLLOWER1=('' '' '')
+ROUGAIL_DYNVAL2_LEADERSHIP_FOLLOWER2=('' '' '')
diff --git a/tests/results/test_namespace/60_6family_dynamic_leadership_empty.env b/tests/results/test_namespace/60_6family_dynamic_leadership_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_leadership_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_6family_dynamic_sub_dynamic.env b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic.env
new file mode 100644
index 0000000..4814403
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic.env
@@ -0,0 +1,15 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=(tval1 tval2)
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR=tval1
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR_IDENTIFIER=val1
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR_IDENTIFIERS=val1-tval1
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR=tval2
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR_IDENTIFIER=val1
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR_IDENTIFIERS=val1-tval2
+ROUGAIL_DYNVAL2_VAR=(tval1 tval2)
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR=tval1
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR_IDENTIFIER=val2
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR_IDENTIFIERS=val2-tval1
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR=tval2
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR_IDENTIFIER=val2
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR_IDENTIFIERS=val2-tval2
diff --git a/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0.env b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0.env
new file mode 100644
index 0000000..4814403
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0.env
@@ -0,0 +1,15 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=(tval1 tval2)
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR=tval1
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR_IDENTIFIER=val1
+ROUGAIL_DYNVAL1_DYN_TVAL1_VAR_IDENTIFIERS=val1-tval1
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR=tval2
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR_IDENTIFIER=val1
+ROUGAIL_DYNVAL1_DYN_TVAL2_VAR_IDENTIFIERS=val1-tval2
+ROUGAIL_DYNVAL2_VAR=(tval1 tval2)
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR=tval1
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR_IDENTIFIER=val2
+ROUGAIL_DYNVAL2_DYN_TVAL1_VAR_IDENTIFIERS=val2-tval1
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR=tval2
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR_IDENTIFIER=val2
+ROUGAIL_DYNVAL2_DYN_TVAL2_VAR_IDENTIFIERS=val2-tval2
diff --git a/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0_2.env b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0_2.env
new file mode 100644
index 0000000..7e3eac6
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_1_0_2.env
@@ -0,0 +1,5 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_VAL1_VAL1_VAR=string1
+ROUGAIL_VAL1_VAL2_VAR=string1
+ROUGAIL_VAL2_VAL1_VAR=string1
+ROUGAIL_VAL2_VAL2_VAR=string1
diff --git a/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty.env b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty.env
new file mode 100644
index 0000000..01cdc0f
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty.env
@@ -0,0 +1 @@
+ROUGAIL_VAR=()
diff --git a/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty2.env b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty2.env
new file mode 100644
index 0000000..ca44caa
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_sub_dynamic_empty2.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_VAR=()
+ROUGAIL_DYNVAL2_VAR=()
diff --git a/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi.env b/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi.env
new file mode 100644
index 0000000..9ec9a2b
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL1_DYNVAL2_VAR=string1
+ROUGAIL_DYNVAL2_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_DYNVAL2_VAR=string1
+ROUGAIL_VAR2=(string1 string1)
diff --git a/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi2.env b/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi2.env
new file mode 100644
index 0000000..9ec9a2b
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_dynamic_suffix_auto_multi2.env
@@ -0,0 +1,6 @@
+ROUGAIL_VAR1=(val1 val2)
+ROUGAIL_DYNVAL1_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL1_DYNVAL2_VAR=string1
+ROUGAIL_DYNVAL2_DYNVAL1_VAR=string1
+ROUGAIL_DYNVAL2_DYNVAL2_VAR=string1
+ROUGAIL_VAR2=(string1 string1)
diff --git a/tests/results/test_namespace/60_6family_subdynamic_inside.env b/tests/results/test_namespace/60_6family_subdynamic_inside.env
new file mode 100644
index 0000000..da54cac
--- /dev/null
+++ b/tests/results/test_namespace/60_6family_subdynamic_inside.env
@@ -0,0 +1,9 @@
+ROUGAIL_VAR=(val1 val2)
+ROUGAIL_DYNVAL1_DYNVAL1_VAR1=string1
+ROUGAIL_DYNVAL1_DYNVAL1_VAR2=(string1 string2 string3)
+ROUGAIL_DYNVAL1_DYNVAL2_VAR1=string1
+ROUGAIL_DYNVAL1_DYNVAL2_VAR2=(string1 string2 string3)
+ROUGAIL_DYNVAL2_DYNVAL1_VAR1=string1
+ROUGAIL_DYNVAL2_DYNVAL1_VAR2=(string1 string2 string3)
+ROUGAIL_DYNVAL2_DYNVAL2_VAR1=string1
+ROUGAIL_DYNVAL2_DYNVAL2_VAR2=(string1 string1)
diff --git a/tests/results/test_namespace/60_9extra_dynamic.env b/tests/results/test_namespace/60_9extra_dynamic.env
new file mode 100644
index 0000000..d76f955
--- /dev/null
+++ b/tests/results/test_namespace/60_9extra_dynamic.env
@@ -0,0 +1,2 @@
+ROUGAIL_VAR=(a)
+EXTRA_DYN_A_VAR=string1
diff --git a/tests/results/test_namespace/60_9extra_dynamic_extra.env b/tests/results/test_namespace/60_9extra_dynamic_extra.env
new file mode 100644
index 0000000..99bbcac
--- /dev/null
+++ b/tests/results/test_namespace/60_9extra_dynamic_extra.env
@@ -0,0 +1,3 @@
+ROUGAIL_GENERAL_VARNAME=(a)
+EXTRA_VAR=(a)
+EXTRA_DYN_A_VAR=string1
diff --git a/tests/results/test_namespace/60_9family_dynamic_calc_both.env b/tests/results/test_namespace/60_9family_dynamic_calc_both.env
new file mode 100644
index 0000000..a2c1f19
--- /dev/null
+++ b/tests/results/test_namespace/60_9family_dynamic_calc_both.env
@@ -0,0 +1,3 @@
+ROUGAIL_VAR=val2
+ROUGAIL_DYNVAL1_VARDYN=string1
+ROUGAIL_DYNVAL2_VARDYN=string1
diff --git a/tests/results/test_namespace/68_0family_leadership_mode.env b/tests/results/test_namespace/68_0family_leadership_mode.env
new file mode 100644
index 0000000..184597a
--- /dev/null
+++ b/tests/results/test_namespace/68_0family_leadership_mode.env
@@ -0,0 +1 @@
+ROUGAIL_LEADER_LEADER=()
diff --git a/tests/test_load.py b/tests/test_load.py
new file mode 100644
index 0000000..bf7c8b4
--- /dev/null
+++ b/tests/test_load.py
@@ -0,0 +1,83 @@
+import os
+from pytest import fixture, raises
+from pathlib import Path
+from rougail import Rougail, RougailConfig
+#########################
+from rougail.output_environment import RougailOutputEnvironment as RougailOutput
+from json import load, dump
+#########################
+
+from rougail_tests.utils import get_structures_list, get_rougail_config, get_values_for_config, config_to_dict
+
+EXT = "env"
+
+
+excludes = [
+]
+
+test_ok = get_structures_list(excludes)
+# test_ok = [Path('../rougail-tests/structures/60_5family_dynamic_calc_suffix_disabled2')]
+
+
+def idfn(fixture_value):
+ return fixture_value.name
+
+
+@fixture(scope="module", params=test_ok, ids=idfn)
+def test_dir(request):
+ return request.param
+
+
+def _test_structural_files(test_dir, namespace, ext, change=False):
+ rougailconfig = get_rougail_config(test_dir, namespace)
+ if not rougailconfig:
+ return
+# rougailconfig['tiramisu_cache'] = "cache.py"
+ ##################################
+ rougailconfig['step.output'] = 'environment'
+ dir_name = 'test'
+ if change:
+ rougailconfig["environment.output.prefix"] = "ROUGAIL_"
+ rougailconfig["environment.output.boolean_type"] = "number"
+ rougailconfig["environment.output.upper"] = False
+ rougailconfig["environment.output.path_is_variable_name"] = False
+ rougailconfig["environment.output.multi_in_array"] = False
+ dir_name += "_change"
+ ##################################
+ if namespace:
+ dir_name += '_namespace'
+ elif (test_dir / 'force_namespace').is_file():
+ return
+ rougail = Rougail(rougailconfig)
+ config = rougail.run()
+ ##################################
+ get_values_for_config(config, level="mandatory")
+ ##################################
+ # loads variables in the tiramisu config
+ if change and (Path(__file__).parent / 'results' / dir_name / (test_dir.name + ".duplicate")).is_file():
+ return
+ generated_output = RougailOutput(config, rougailconfig=rougailconfig).run()[1]
+ output_file = Path(__file__).parent / 'results' / dir_name / (test_dir.name + "." + ext)
+ if not output_file.is_file():
+ if not output_file.parent.is_dir():
+ output_file.parent.mkdir()
+ with output_file.open('w') as outfh:
+ outfh.write(generated_output)
+ with output_file.open() as outfh:
+ attented_output = outfh.read()
+ assert generated_output == attented_output, f'filename {output_file}'
+
+
+def test_structural_files(test_dir):
+ "tests the output"
+ _test_structural_files(test_dir, False, EXT)
+
+
+def test_structural_files_namespace(test_dir):
+ "tests the output"
+ _test_structural_files(test_dir, True, EXT)
+
+
+def test_structural_files_change(test_dir):
+ "tests the output"
+ _test_structural_files(test_dir, False, EXT, True)