diff --git a/doc/service/file.md b/doc/service/file.md
index 02a99794c..5362357fe 100644
--- a/doc/service/file.md
+++ b/doc/service/file.md
@@ -26,7 +26,11 @@ services:
- text: /etc/squid/squid.conf
```
-Dans ce cas, le nom du template est déduit du nom du fichier, ici cela sera "squid.conf".
+## Le nom de template
+
+Par défaut, le nom du template est déduit du nom du fichier.
+
+Par xemple, si le fichier de destination est "/etc/squid/squid.conf", le template aura le nom "squid.conf".
Si le template a un nom différent (par exemple si plusieurs template se retrouve avec le même nom), il est possible de changer le nom du template avec l'attribut source :
@@ -42,6 +46,40 @@ file:
text: /etc/squid/squid.conf
```
+## Le nom de template dynamique
+
+La source peut ếgalement être une variable :
+
+```xml
+
+
+ /etc/squid/squid.conf
+
+
+
+
+ template-squid.conf
+
+
+```
+
+En YAML :
+
+```yml
+services:
+- service:
+ - name: squid
+ file:
+ - source: source_var
+ source_type: variable
+ text: /etc/squid/squid.conf
+variables:
+- variable:
+ - name: source_var
+ value:
+ - text: template-squid.conf
+```
+
## Les noms de fichiers dynamique
Il est possible également de définir le nom du fichier dans une variable :
diff --git a/src/rougail/data/rougail.dtd b/src/rougail/data/rougail.dtd
index 1e008915c..0858b510f 100644
--- a/src/rougail/data/rougail.dtd
+++ b/src/rougail/data/rougail.dtd
@@ -70,6 +70,7 @@
+
diff --git a/src/rougail/data/rougail.yml b/src/rougail/data/rougail.yml
index 4bc5e5fec..8a9e517eb 100644
--- a/src/rougail/data/rougail.yml
+++ b/src/rougail/data/rougail.yml
@@ -82,6 +82,11 @@ mapping:
type: str
mode:
type: str
+ source_type:
+ type: str
+ enum:
+ - "string"
+ - "variable"
source:
type: str
variable_type:
diff --git a/src/rougail/template/base.py b/src/rougail/template/base.py
index fc794a4ad..39e71817f 100644
--- a/src/rougail/template/base.py
+++ b/src/rougail/template/base.py
@@ -60,7 +60,7 @@ log = logging.getLogger(__name__)
log.addHandler(logging.NullHandler())
-INFORMATIONS = {'files': ['source', 'mode', 'engine', 'included'],
+INFORMATIONS = {'files': ['mode', 'engine', 'included'],
'overrides': ['name', 'source', 'engine'],
'service_names': ['doc', 'engine', 'type', 'target', 'undisable'],
}
diff --git a/tests/dictionaries/01base_file/makedict/after.json b/tests/dictionaries/01base_file/makedict/after.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file/makedict/after.json
+++ b/tests/dictionaries/01base_file/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file/makedict/base.json b/tests/dictionaries/01base_file/makedict/base.json
index 8f8bc2b3e..3524da356 100644
--- a/tests/dictionaries/01base_file/makedict/base.json
+++ b/tests/dictionaries/01base_file/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file/makedict/before.json b/tests/dictionaries/01base_file/makedict/before.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file/makedict/before.json
+++ b/tests/dictionaries/01base_file/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file/tiramisu/base.py b/tests/dictionaries/01base_file/tiramisu/base.py
index fa50e1e2d..a3a4809df 100644
--- a/tests/dictionaries/01base_file/tiramisu/base.py
+++ b/tests/dictionaries/01base_file/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/01base_file/tiramisu/multi.py b/tests/dictionaries/01base_file/tiramisu/multi.py
index 7b94afa39..38efb411c 100644
--- a/tests/dictionaries/01base_file/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="file", doc="file", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "file")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file2", doc="file2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "file2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_25 = StrOption(name="source", doc="source", default="file2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/01base_file_disabled/makedict/after.json b/tests/dictionaries/01base_file_disabled/makedict/after.json
index 9e1e587cc..1f190d434 100644
--- a/tests/dictionaries/01base_file_disabled/makedict/after.json
+++ b/tests/dictionaries/01base_file_disabled/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/file3"
},
+ "services.test_service.files.file3.source": {
+ "owner": "default",
+ "value": "file3"
+ },
"services.test_service.files.file3.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/01base_file_disabled/makedict/base.json b/tests/dictionaries/01base_file_disabled/makedict/base.json
index 725c98441..c99286796 100644
--- a/tests/dictionaries/01base_file_disabled/makedict/base.json
+++ b/tests/dictionaries/01base_file_disabled/makedict/base.json
@@ -1,10 +1,13 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.files.file3.name": "/etc/file3",
+ "services.test_service.files.file3.source": "file3",
"services.test_service.files.file3.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_disabled/makedict/before.json b/tests/dictionaries/01base_file_disabled/makedict/before.json
index 9e1e587cc..1f190d434 100644
--- a/tests/dictionaries/01base_file_disabled/makedict/before.json
+++ b/tests/dictionaries/01base_file_disabled/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/file3"
},
+ "services.test_service.files.file3.source": {
+ "owner": "default",
+ "value": "file3"
+ },
"services.test_service.files.file3.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/01base_file_disabled/tiramisu/base.py b/tests/dictionaries/01base_file_disabled/tiramisu/base.py
index aa7416fec..aa9b022f8 100644
--- a/tests/dictionaries/01base_file_disabled/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_disabled/tiramisu/base.py
@@ -20,24 +20,24 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-option_13 = FilenameOption(name="name", doc="name", default="/etc/file3")
-option_12 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_11 = OptionDescription(name="file3", doc="file3", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file3")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8, optiondescription_11])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+option_15 = FilenameOption(name="name", doc="name", default="/etc/file3")
+option_16 = StrOption(name="source", doc="source", default="file3")
+option_14 = BoolOption(name="activate", doc="activate", default=False)
+optiondescription_13 = OptionDescription(name="file3", doc="file3", children=[option_15, option_16, option_14])
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9, optiondescription_13])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_14])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_17])
+optiondescription_20.impl_set_information('type', "service")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
diff --git a/tests/dictionaries/01base_file_disabled/tiramisu/multi.py b/tests/dictionaries/01base_file_disabled/tiramisu/multi.py
index 741f630f7..4b646b869 100644
--- a/tests/dictionaries/01base_file_disabled/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_disabled/tiramisu/multi.py
@@ -20,48 +20,48 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file3")
-option_14 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_13 = OptionDescription(name="file3", doc="file3", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file3")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10, optiondescription_13])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+option_17 = FilenameOption(name="name", doc="name", default="/etc/file3")
+option_18 = StrOption(name="source", doc="source", default="file3")
+option_16 = BoolOption(name="activate", doc="activate", default=False)
+optiondescription_15 = OptionDescription(name="file3", doc="file3", children=[option_17, option_18, option_16])
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11, optiondescription_15])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_16])
-optiondescription_32.impl_set_information('type', "service")
-optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
-optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file", doc="file", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "file")
-option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_25 = StrOption(name="source", doc="source", default="file")
option_23 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_23])
-optiondescription_22.impl_set_information('engine', "jinja")
-optiondescription_22.impl_set_information('source', "file2")
-option_27 = FilenameOption(name="name", doc="name", default="/etc/file3")
-option_26 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_25 = OptionDescription(name="file3", doc="file3", children=[option_27, option_26])
-optiondescription_25.impl_set_information('source', "file3")
-optiondescription_18 = OptionDescription(name="files", doc="files", children=[optiondescription_19, optiondescription_22, optiondescription_25])
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-option_28 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_18, option_17, option_28])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
+optiondescription_22 = OptionDescription(name="file", doc="file", children=[option_24, option_25, option_23])
+option_28 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_29 = StrOption(name="source", doc="source", default="file2")
+option_27 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_26 = OptionDescription(name="file2", doc="file2", children=[option_28, option_29, option_27])
+optiondescription_26.impl_set_information('engine', "jinja")
+option_32 = FilenameOption(name="name", doc="name", default="/etc/file3")
+option_33 = StrOption(name="source", doc="source", default="file3")
+option_31 = BoolOption(name="activate", doc="activate", default=False)
+optiondescription_30 = OptionDescription(name="file3", doc="file3", children=[option_32, option_33, option_31])
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_26, optiondescription_30])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_34 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_34])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
diff --git a/tests/dictionaries/01base_file_include/makedict/after.json b/tests/dictionaries/01base_file_include/makedict/after.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_include/makedict/after.json
+++ b/tests/dictionaries/01base_file_include/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include/makedict/base.json b/tests/dictionaries/01base_file_include/makedict/base.json
index 8f8bc2b3e..3524da356 100644
--- a/tests/dictionaries/01base_file_include/makedict/base.json
+++ b/tests/dictionaries/01base_file_include/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_include/makedict/before.json b/tests/dictionaries/01base_file_include/makedict/before.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_include/makedict/before.json
+++ b/tests/dictionaries/01base_file_include/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include/tiramisu/base.py b/tests/dictionaries/01base_file_include/tiramisu/base.py
index fa50e1e2d..a3a4809df 100644
--- a/tests/dictionaries/01base_file_include/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_include/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/01base_file_include/tiramisu/multi.py b/tests/dictionaries/01base_file_include/tiramisu/multi.py
index 7b94afa39..38efb411c 100644
--- a/tests/dictionaries/01base_file_include/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_include/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="file", doc="file", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "file")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file2", doc="file2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "file2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_25 = StrOption(name="source", doc="source", default="file2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/01base_file_include_content/makedict/after.json b/tests/dictionaries/01base_file_include_content/makedict/after.json
index 75db70c38..e3d3f7cd8 100644
--- a/tests/dictionaries/01base_file_include_content/makedict/after.json
+++ b/tests/dictionaries/01base_file_include_content/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/dir/incfile"
},
+ "services.test_service.files.incfile.source": {
+ "owner": "default",
+ "value": "incfile"
+ },
"services.test_service.files.incfile.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include_content/makedict/base.json b/tests/dictionaries/01base_file_include_content/makedict/base.json
index cc167d1ac..c4573ab6b 100644
--- a/tests/dictionaries/01base_file_include_content/makedict/base.json
+++ b/tests/dictionaries/01base_file_include_content/makedict/base.json
@@ -1,10 +1,13 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.files.incfile.name": "/etc/dir/incfile",
+ "services.test_service.files.incfile.source": "incfile",
"services.test_service.files.incfile.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_include_content/makedict/before.json b/tests/dictionaries/01base_file_include_content/makedict/before.json
index 75db70c38..e3d3f7cd8 100644
--- a/tests/dictionaries/01base_file_include_content/makedict/before.json
+++ b/tests/dictionaries/01base_file_include_content/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/dir/incfile"
},
+ "services.test_service.files.incfile.source": {
+ "owner": "default",
+ "value": "incfile"
+ },
"services.test_service.files.incfile.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include_content/tiramisu/base.py b/tests/dictionaries/01base_file_include_content/tiramisu/base.py
index 1d5539ceb..1bfbd103e 100644
--- a/tests/dictionaries/01base_file_include_content/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_include_content/tiramisu/base.py
@@ -20,25 +20,25 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-option_13 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_12 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_11 = OptionDescription(name="incfile", doc="incfile", children=[option_13, option_12])
-optiondescription_11.impl_set_information('included', "content")
-optiondescription_11.impl_set_information('source', "incfile")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8, optiondescription_11])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+option_15 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_16 = StrOption(name="source", doc="source", default="incfile")
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_13 = OptionDescription(name="incfile", doc="incfile", children=[option_15, option_16, option_14])
+optiondescription_13.impl_set_information('included', "content")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9, optiondescription_13])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_14])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_17])
+optiondescription_20.impl_set_information('type', "service")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
diff --git a/tests/dictionaries/01base_file_include_content/tiramisu/multi.py b/tests/dictionaries/01base_file_include_content/tiramisu/multi.py
index 410e3b78c..c776f6c8e 100644
--- a/tests/dictionaries/01base_file_include_content/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_include_content/tiramisu/multi.py
@@ -20,50 +20,50 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="incfile", doc="incfile", children=[option_15, option_14])
-optiondescription_13.impl_set_information('included', "content")
-optiondescription_13.impl_set_information('source', "incfile")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10, optiondescription_13])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+option_17 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_18 = StrOption(name="source", doc="source", default="incfile")
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_15 = OptionDescription(name="incfile", doc="incfile", children=[option_17, option_18, option_16])
+optiondescription_15.impl_set_information('included', "content")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11, optiondescription_15])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_16])
-optiondescription_32.impl_set_information('type', "service")
-optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
-optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file", doc="file", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "file")
-option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_25 = StrOption(name="source", doc="source", default="file")
option_23 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_23])
-optiondescription_22.impl_set_information('engine', "jinja")
-optiondescription_22.impl_set_information('source', "file2")
-option_27 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_26 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_25 = OptionDescription(name="incfile", doc="incfile", children=[option_27, option_26])
-optiondescription_25.impl_set_information('included', "content")
-optiondescription_25.impl_set_information('source', "incfile")
-optiondescription_18 = OptionDescription(name="files", doc="files", children=[optiondescription_19, optiondescription_22, optiondescription_25])
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-option_28 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_18, option_17, option_28])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
+optiondescription_22 = OptionDescription(name="file", doc="file", children=[option_24, option_25, option_23])
+option_28 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_29 = StrOption(name="source", doc="source", default="file2")
+option_27 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_26 = OptionDescription(name="file2", doc="file2", children=[option_28, option_29, option_27])
+optiondescription_26.impl_set_information('engine', "jinja")
+option_32 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_33 = StrOption(name="source", doc="source", default="incfile")
+option_31 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_30 = OptionDescription(name="incfile", doc="incfile", children=[option_32, option_33, option_31])
+optiondescription_30.impl_set_information('included', "content")
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_26, optiondescription_30])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_34 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_34])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
diff --git a/tests/dictionaries/01base_file_include_name/makedict/after.json b/tests/dictionaries/01base_file_include_name/makedict/after.json
index 75db70c38..e3d3f7cd8 100644
--- a/tests/dictionaries/01base_file_include_name/makedict/after.json
+++ b/tests/dictionaries/01base_file_include_name/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/dir/incfile"
},
+ "services.test_service.files.incfile.source": {
+ "owner": "default",
+ "value": "incfile"
+ },
"services.test_service.files.incfile.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include_name/makedict/base.json b/tests/dictionaries/01base_file_include_name/makedict/base.json
index cc167d1ac..c4573ab6b 100644
--- a/tests/dictionaries/01base_file_include_name/makedict/base.json
+++ b/tests/dictionaries/01base_file_include_name/makedict/base.json
@@ -1,10 +1,13 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.files.incfile.name": "/etc/dir/incfile",
+ "services.test_service.files.incfile.source": "incfile",
"services.test_service.files.incfile.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_include_name/makedict/before.json b/tests/dictionaries/01base_file_include_name/makedict/before.json
index 75db70c38..e3d3f7cd8 100644
--- a/tests/dictionaries/01base_file_include_name/makedict/before.json
+++ b/tests/dictionaries/01base_file_include_name/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/etc/dir/incfile"
},
+ "services.test_service.files.incfile.source": {
+ "owner": "default",
+ "value": "incfile"
+ },
"services.test_service.files.incfile.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_include_name/tiramisu/base.py b/tests/dictionaries/01base_file_include_name/tiramisu/base.py
index d07a999cc..11b825f48 100644
--- a/tests/dictionaries/01base_file_include_name/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_include_name/tiramisu/base.py
@@ -20,25 +20,25 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-option_13 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_12 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_11 = OptionDescription(name="incfile", doc="incfile", children=[option_13, option_12])
-optiondescription_11.impl_set_information('included', "name")
-optiondescription_11.impl_set_information('source', "incfile")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8, optiondescription_11])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+option_15 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_16 = StrOption(name="source", doc="source", default="incfile")
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_13 = OptionDescription(name="incfile", doc="incfile", children=[option_15, option_16, option_14])
+optiondescription_13.impl_set_information('included', "name")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9, optiondescription_13])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_14])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_17])
+optiondescription_20.impl_set_information('type', "service")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
diff --git a/tests/dictionaries/01base_file_include_name/tiramisu/multi.py b/tests/dictionaries/01base_file_include_name/tiramisu/multi.py
index 3a09c16dc..afdd54ef0 100644
--- a/tests/dictionaries/01base_file_include_name/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_include_name/tiramisu/multi.py
@@ -20,50 +20,50 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="incfile", doc="incfile", children=[option_15, option_14])
-optiondescription_13.impl_set_information('included', "name")
-optiondescription_13.impl_set_information('source', "incfile")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10, optiondescription_13])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+option_17 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_18 = StrOption(name="source", doc="source", default="incfile")
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_15 = OptionDescription(name="incfile", doc="incfile", children=[option_17, option_18, option_16])
+optiondescription_15.impl_set_information('included', "name")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11, optiondescription_15])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_16])
-optiondescription_32.impl_set_information('type', "service")
-optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
-optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file", doc="file", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "file")
-option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_25 = StrOption(name="source", doc="source", default="file")
option_23 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_23])
-optiondescription_22.impl_set_information('engine', "jinja")
-optiondescription_22.impl_set_information('source', "file2")
-option_27 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
-option_26 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_25 = OptionDescription(name="incfile", doc="incfile", children=[option_27, option_26])
-optiondescription_25.impl_set_information('included', "name")
-optiondescription_25.impl_set_information('source', "incfile")
-optiondescription_18 = OptionDescription(name="files", doc="files", children=[optiondescription_19, optiondescription_22, optiondescription_25])
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-option_28 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_18, option_17, option_28])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
+optiondescription_22 = OptionDescription(name="file", doc="file", children=[option_24, option_25, option_23])
+option_28 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_29 = StrOption(name="source", doc="source", default="file2")
+option_27 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_26 = OptionDescription(name="file2", doc="file2", children=[option_28, option_29, option_27])
+optiondescription_26.impl_set_information('engine', "jinja")
+option_32 = FilenameOption(name="name", doc="name", default="/etc/dir/incfile")
+option_33 = StrOption(name="source", doc="source", default="incfile")
+option_31 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_30 = OptionDescription(name="incfile", doc="incfile", children=[option_32, option_33, option_31])
+optiondescription_30.impl_set_information('included', "name")
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_26, optiondescription_30])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_34 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_34])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
diff --git a/tests/dictionaries/01base_file_owner/makedict/after.json b/tests/dictionaries/01base_file_owner/makedict/after.json
index fbf6109c4..5d409e96c 100644
--- a/tests/dictionaries/01base_file_owner/makedict/after.json
+++ b/tests/dictionaries/01base_file_owner/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -31,6 +35,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_owner/makedict/base.json b/tests/dictionaries/01base_file_owner/makedict/base.json
index 63657a515..afb115b16 100644
--- a/tests/dictionaries/01base_file_owner/makedict/base.json
+++ b/tests/dictionaries/01base_file_owner/makedict/base.json
@@ -3,10 +3,12 @@
"services.test_service.files.file.group": "nobody",
"services.test_service.files.file.name": "/etc/file",
"services.test_service.files.file.owner": "nobody",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.group": "nobody",
"services.test_service.files.file2.name": "/etc/file2",
"services.test_service.files.file2.owner": "nobody",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_owner/makedict/before.json b/tests/dictionaries/01base_file_owner/makedict/before.json
index fbf6109c4..5d409e96c 100644
--- a/tests/dictionaries/01base_file_owner/makedict/before.json
+++ b/tests/dictionaries/01base_file_owner/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -31,6 +35,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_owner/tiramisu/base.py b/tests/dictionaries/01base_file_owner/tiramisu/base.py
index 6d664ab88..8b50fbe5e 100644
--- a/tests/dictionaries/01base_file_owner/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_owner/tiramisu/base.py
@@ -20,24 +20,24 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_16 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = UsernameOption(name="group", doc="group", default="nobody")
option_8 = FilenameOption(name="name", doc="name", default="/etc/file")
option_9 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_10 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_9, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_12 = UsernameOption(name="group", doc="group", default="nobody")
-option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_14 = UsernameOption(name="owner", doc="owner", default="nobody")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_13, option_14, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_10])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_9, option_10, option_6])
+option_13 = UsernameOption(name="group", doc="group", default="nobody")
+option_14 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_15 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_16 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_15, option_16, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_11])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_15 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_18 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_15])
-optiondescription_18.impl_set_information('type', "service")
-optiondescription_17 = OptionDescription(name="services", doc="services", children=[optiondescription_18], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_16, optiondescription_17])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_17])
+optiondescription_20.impl_set_information('type', "service")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
diff --git a/tests/dictionaries/01base_file_owner/tiramisu/multi.py b/tests/dictionaries/01base_file_owner/tiramisu/multi.py
index 6b849324d..9e1991a28 100644
--- a/tests/dictionaries/01base_file_owner/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_owner/tiramisu/multi.py
@@ -20,48 +20,48 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = UsernameOption(name="group", doc="group", default="nobody")
option_10 = FilenameOption(name="name", doc="name", default="/etc/file")
option_11 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_12 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_11, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_14 = UsernameOption(name="group", doc="group", default="nobody")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_16 = UsernameOption(name="owner", doc="owner", default="nobody")
-option_13 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_12 = OptionDescription(name="file2", doc="file2", children=[option_14, option_15, option_16, option_13])
-optiondescription_12.impl_set_information('engine', "jinja")
-optiondescription_12.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_12])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_11, option_12, option_8])
+option_15 = UsernameOption(name="group", doc="group", default="nobody")
+option_16 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_17 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_18 = StrOption(name="source", doc="source", default="file2")
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_13 = OptionDescription(name="file2", doc="file2", children=[option_15, option_16, option_17, option_18, option_14])
+optiondescription_13.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_13])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_17 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_17])
-optiondescription_34.impl_set_information('type', "service")
-optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
-optiondescription_31 = OptionDescription(name="1", doc="1", children=[optiondescription_32, optiondescription_33])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_22 = UsernameOption(name="group", doc="group", default="nobody")
-option_23 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_24 = UsernameOption(name="owner", doc="owner", default="nobody")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="file", doc="file", children=[option_22, option_23, option_24, option_21])
-optiondescription_20.impl_set_information('source', "file")
-option_27 = UsernameOption(name="group", doc="group", default="nobody")
-option_28 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_29 = UsernameOption(name="owner", doc="owner", default="nobody")
-option_26 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_25 = OptionDescription(name="file2", doc="file2", children=[option_27, option_28, option_29, option_26])
-optiondescription_25.impl_set_information('engine', "jinja")
-optiondescription_25.impl_set_information('source', "file2")
-optiondescription_19 = OptionDescription(name="files", doc="files", children=[optiondescription_20, optiondescription_25])
-option_18 = BoolOption(name="activate", doc="activate", default=True)
-option_30 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_19, option_18, option_30])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
optiondescription_38.impl_set_information('type', "service")
optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
-optiondescription_35 = OptionDescription(name="2", doc="2", children=[optiondescription_36, optiondescription_37])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_31, optiondescription_35])
+optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_24 = UsernameOption(name="group", doc="group", default="nobody")
+option_25 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_26 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_27 = StrOption(name="source", doc="source", default="file")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="file", doc="file", children=[option_24, option_25, option_26, option_27, option_23])
+option_30 = UsernameOption(name="group", doc="group", default="nobody")
+option_31 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_32 = UsernameOption(name="owner", doc="owner", default="nobody")
+option_33 = StrOption(name="source", doc="source", default="file2")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="file2", doc="file2", children=[option_30, option_31, option_32, option_33, option_29])
+optiondescription_28.impl_set_information('engine', "jinja")
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_28])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_34 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_34])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
diff --git a/tests/dictionaries/01base_file_owner_variable/makedict/after.json b/tests/dictionaries/01base_file_owner_variable/makedict/after.json
index cbf7345b6..5ad75a3af 100644
--- a/tests/dictionaries/01base_file_owner_variable/makedict/after.json
+++ b/tests/dictionaries/01base_file_owner_variable/makedict/after.json
@@ -23,6 +23,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -39,6 +43,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_owner_variable/makedict/base.json b/tests/dictionaries/01base_file_owner_variable/makedict/base.json
index e9797c04b..becac5e65 100644
--- a/tests/dictionaries/01base_file_owner_variable/makedict/base.json
+++ b/tests/dictionaries/01base_file_owner_variable/makedict/base.json
@@ -5,10 +5,12 @@
"services.test_service.files.file.group": "nobody",
"services.test_service.files.file.name": "/etc/file",
"services.test_service.files.file.owner": "nobody",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.group": "nobody",
"services.test_service.files.file2.name": "/etc/file2",
"services.test_service.files.file2.owner": "nobody",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_owner_variable/makedict/before.json b/tests/dictionaries/01base_file_owner_variable/makedict/before.json
index cbf7345b6..5ad75a3af 100644
--- a/tests/dictionaries/01base_file_owner_variable/makedict/before.json
+++ b/tests/dictionaries/01base_file_owner_variable/makedict/before.json
@@ -23,6 +23,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -39,6 +43,10 @@
"owner": "default",
"value": "nobody"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_owner_variable/tiramisu/base.py b/tests/dictionaries/01base_file_owner_variable/tiramisu/base.py
index b1f050f6f..31a190155 100644
--- a/tests/dictionaries/01base_file_owner_variable/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_owner_variable/tiramisu/base.py
@@ -22,24 +22,24 @@ option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="no
option_3 = UsernameOption(name="owner", doc="owner", default="nobody", properties=frozenset({"mandatory", "normal"}))
option_4 = UsernameOption(name="group", doc="group", default="nobody", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = SymLinkOption(name="group", opt=option_4)
option_10 = FilenameOption(name="name", doc="name", default="/etc/file")
option_11 = SymLinkOption(name="owner", opt=option_3)
+option_12 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_11, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_14 = SymLinkOption(name="group", opt=option_4)
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_16 = SymLinkOption(name="owner", opt=option_3)
-option_13 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_12 = OptionDescription(name="file2", doc="file2", children=[option_14, option_15, option_16, option_13])
-optiondescription_12.impl_set_information('engine', "jinja")
-optiondescription_12.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_12])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_11, option_12, option_8])
+option_15 = SymLinkOption(name="group", opt=option_4)
+option_16 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_17 = SymLinkOption(name="owner", opt=option_3)
+option_18 = StrOption(name="source", doc="source", default="file2")
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_13 = OptionDescription(name="file2", doc="file2", children=[option_15, option_16, option_17, option_18, option_14])
+optiondescription_13.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_13])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_17 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_17])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_20, optiondescription_21])
diff --git a/tests/dictionaries/01base_file_owner_variable/tiramisu/multi.py b/tests/dictionaries/01base_file_owner_variable/tiramisu/multi.py
index 5d5669919..5035ebacb 100644
--- a/tests/dictionaries/01base_file_owner_variable/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_owner_variable/tiramisu/multi.py
@@ -22,50 +22,50 @@ option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="no
option_3 = UsernameOption(name="owner", doc="owner", default="nobody", properties=frozenset({"mandatory", "normal"}))
option_4 = UsernameOption(name="group", doc="group", default="nobody", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = SymLinkOption(name="group", opt=option_4)
option_14 = FilenameOption(name="name", doc="name", default="/etc/file")
option_15 = SymLinkOption(name="owner", opt=option_3)
+option_16 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_15, option_12])
-optiondescription_11.impl_set_information('source', "file")
-option_18 = SymLinkOption(name="group", opt=option_4)
-option_19 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_20 = SymLinkOption(name="owner", opt=option_3)
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="file2", doc="file2", children=[option_18, option_19, option_20, option_17])
-optiondescription_16.impl_set_information('engine', "jinja")
-optiondescription_16.impl_set_information('source', "file2")
-optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11, optiondescription_16])
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_15, option_16, option_12])
+option_19 = SymLinkOption(name="group", opt=option_4)
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_21 = SymLinkOption(name="owner", opt=option_3)
+option_22 = StrOption(name="source", doc="source", default="file2")
+option_18 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_17 = OptionDescription(name="file2", doc="file2", children=[option_19, option_20, option_21, option_22, option_18])
+optiondescription_17.impl_set_information('engine', "jinja")
+optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11, optiondescription_17])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_21 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_21])
-optiondescription_38.impl_set_information('type', "service")
-optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
-optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
+option_23 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_23])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="1", doc="1", children=[optiondescription_40, optiondescription_41])
option_6 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = UsernameOption(name="owner", doc="owner", default="nobody", properties=frozenset({"mandatory", "normal"}))
option_8 = UsernameOption(name="group", doc="group", default="nobody", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_26 = SymLinkOption(name="group", opt=option_8)
-option_27 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_28 = SymLinkOption(name="owner", opt=option_7)
-option_25 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_24 = OptionDescription(name="file", doc="file", children=[option_26, option_27, option_28, option_25])
-optiondescription_24.impl_set_information('source', "file")
-option_31 = SymLinkOption(name="group", opt=option_8)
-option_32 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_33 = SymLinkOption(name="owner", opt=option_7)
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="file2", doc="file2", children=[option_31, option_32, option_33, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "file2")
-optiondescription_23 = OptionDescription(name="files", doc="files", children=[optiondescription_24, optiondescription_29])
-option_22 = BoolOption(name="activate", doc="activate", default=True)
-option_34 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_23, option_22, option_34])
-optiondescription_42.impl_set_information('type', "service")
-optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
-optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
+optiondescription_44 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_28 = SymLinkOption(name="group", opt=option_8)
+option_29 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_30 = SymLinkOption(name="owner", opt=option_7)
+option_31 = StrOption(name="source", doc="source", default="file")
+option_27 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_26 = OptionDescription(name="file", doc="file", children=[option_28, option_29, option_30, option_31, option_27])
+option_34 = SymLinkOption(name="group", opt=option_8)
+option_35 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_36 = SymLinkOption(name="owner", opt=option_7)
+option_37 = StrOption(name="source", doc="source", default="file2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="file2", doc="file2", children=[option_34, option_35, option_36, option_37, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_32])
+option_24 = BoolOption(name="activate", doc="activate", default=True)
+option_38 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_46 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_38])
+optiondescription_46.impl_set_information('type', "service")
+optiondescription_45 = OptionDescription(name="services", doc="services", children=[optiondescription_46], properties=frozenset({"hidden"}))
+optiondescription_43 = OptionDescription(name="2", doc="2", children=[optiondescription_44, optiondescription_45])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_39, optiondescription_43])
diff --git a/tests/dictionaries/01base_file_patch/makedict/after.json b/tests/dictionaries/01base_file_patch/makedict/after.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_patch/makedict/after.json
+++ b/tests/dictionaries/01base_file_patch/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_patch/makedict/base.json b/tests/dictionaries/01base_file_patch/makedict/base.json
index 8f8bc2b3e..3524da356 100644
--- a/tests/dictionaries/01base_file_patch/makedict/base.json
+++ b/tests/dictionaries/01base_file_patch/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_patch/makedict/before.json b/tests/dictionaries/01base_file_patch/makedict/before.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_patch/makedict/before.json
+++ b/tests/dictionaries/01base_file_patch/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_patch/tiramisu/base.py b/tests/dictionaries/01base_file_patch/tiramisu/base.py
index fa50e1e2d..a3a4809df 100644
--- a/tests/dictionaries/01base_file_patch/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_patch/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/01base_file_patch/tiramisu/multi.py b/tests/dictionaries/01base_file_patch/tiramisu/multi.py
index 7b94afa39..38efb411c 100644
--- a/tests/dictionaries/01base_file_patch/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_patch/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="file", doc="file", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "file")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file2", doc="file2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "file2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_25 = StrOption(name="source", doc="source", default="file2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/after.json b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/after.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/after.json
+++ b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/base.json b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/base.json
index 8f8bc2b3e..3524da356 100644
--- a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/base.json
+++ b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.files.file2.name": "/etc/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/before.json b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/before.json
index 70ca0c161..c63a8561a 100644
--- a/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/before.json
+++ b/tests/dictionaries/01base_file_tmpfile_dest_dir/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/base.py b/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/base.py
index fa50e1e2d..a3a4809df 100644
--- a/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file2", doc="file2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "file2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_12 = StrOption(name="source", doc="source", default="file2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="file2", doc="file2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/multi.py b/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/multi.py
index 7b94afa39..38efb411c 100644
--- a/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_tmpfile_dest_dir/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="file", doc="file", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "file")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file2", doc="file2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "file2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/file2")
+option_25 = StrOption(name="source", doc="source", default="file2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="file2", doc="file2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/01base_file_utfchar/makedict/after.json b/tests/dictionaries/01base_file_utfchar/makedict/after.json
index 39356ec4e..752041c16 100644
--- a/tests/dictionaries/01base_file_utfchar/makedict/after.json
+++ b/tests/dictionaries/01base_file_utfchar/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel"
},
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.source": {
+ "owner": "default",
+ "value": "systemd-makefs@dev-disk-by\\x2dpartlabel"
+ },
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2"
},
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.source": {
+ "owner": "default",
+ "value": "systemd-makefs@dev-disk-by\\x2dpartlabel2"
+ },
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_utfchar/makedict/base.json b/tests/dictionaries/01base_file_utfchar/makedict/base.json
index 3e40fcac2..f07f3ac16 100644
--- a/tests/dictionaries/01base_file_utfchar/makedict/base.json
+++ b/tests/dictionaries/01base_file_utfchar/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.name": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel",
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.source": "systemd-makefs@dev-disk-by\\x2dpartlabel",
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.activate": true,
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.name": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2",
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.source": "systemd-makefs@dev-disk-by\\x2dpartlabel2",
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/01base_file_utfchar/makedict/before.json b/tests/dictionaries/01base_file_utfchar/makedict/before.json
index 39356ec4e..752041c16 100644
--- a/tests/dictionaries/01base_file_utfchar/makedict/before.json
+++ b/tests/dictionaries/01base_file_utfchar/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel"
},
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.source": {
+ "owner": "default",
+ "value": "systemd-makefs@dev-disk-by\\x2dpartlabel"
+ },
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2"
},
+ "services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.source": {
+ "owner": "default",
+ "value": "systemd-makefs@dev-disk-by\\x2dpartlabel2"
+ },
"services.test_service.files.systemd_makefs@dev_disk_by\\x2dpartlabel2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/01base_file_utfchar/tiramisu/base.py b/tests/dictionaries/01base_file_utfchar/tiramisu/base.py
index 6030b60c2..c66def477 100644
--- a/tests/dictionaries/01base_file_utfchar/tiramisu/base.py
+++ b/tests/dictionaries/01base_file_utfchar/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel")
+option_8 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_12 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/01base_file_utfchar/tiramisu/multi.py b/tests/dictionaries/01base_file_utfchar/tiramisu/multi.py
index 30609914c..4f8f2ace5 100644
--- a/tests/dictionaries/01base_file_utfchar/tiramisu/multi.py
+++ b/tests/dictionaries/01base_file_utfchar/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel")
+option_10 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_14 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "systemd-makefs@dev-disk-by\\x2dpartlabel2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel")
+option_21 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel", doc="systemd-makefs@dev-disk-by\\x2dpartlabel", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_25 = StrOption(name="source", doc="source", default="systemd-makefs@dev-disk-by\\x2dpartlabel2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="systemd_makefs@dev_disk_by\\x2dpartlabel2", doc="systemd-makefs@dev-disk-by\\x2dpartlabel2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/01base_file_var_source/__init__.py b/tests/dictionaries/01base_file_var_source/__init__.py
new file mode 100644
index 000000000..e69de29bb
diff --git a/tests/dictionaries/01base_file_var_source/makedict/after.json b/tests/dictionaries/01base_file_var_source/makedict/after.json
new file mode 100644
index 000000000..f26252902
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/makedict/after.json
@@ -0,0 +1,30 @@
+{
+ "rougail.general.source_var": {
+ "owner": "default",
+ "value": "file"
+ },
+ "rougail.general.mode_conteneur_actif": {
+ "owner": "default",
+ "value": "non"
+ },
+ "services.test_service.files.source_var.name": {
+ "owner": "default",
+ "value": "/etc/file"
+ },
+ "services.test_service.files.source_var.source": {
+ "owner": "default",
+ "value": "file"
+ },
+ "services.test_service.files.source_var.activate": {
+ "owner": "default",
+ "value": true
+ },
+ "services.test_service.activate": {
+ "owner": "default",
+ "value": true
+ },
+ "services.test_service.manage": {
+ "owner": "default",
+ "value": true
+ }
+}
diff --git a/tests/dictionaries/01base_file_var_source/makedict/base.json b/tests/dictionaries/01base_file_var_source/makedict/base.json
new file mode 100644
index 000000000..6cd46daeb
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/makedict/base.json
@@ -0,0 +1,9 @@
+{
+ "rougail.general.source_var": "file",
+ "rougail.general.mode_conteneur_actif": "non",
+ "services.test_service.files.source_var.name": "/etc/file",
+ "services.test_service.files.source_var.source": "file",
+ "services.test_service.files.source_var.activate": true,
+ "services.test_service.activate": true,
+ "services.test_service.manage": true
+}
diff --git a/tests/dictionaries/01base_file_var_source/makedict/before.json b/tests/dictionaries/01base_file_var_source/makedict/before.json
new file mode 100644
index 000000000..f26252902
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/makedict/before.json
@@ -0,0 +1,30 @@
+{
+ "rougail.general.source_var": {
+ "owner": "default",
+ "value": "file"
+ },
+ "rougail.general.mode_conteneur_actif": {
+ "owner": "default",
+ "value": "non"
+ },
+ "services.test_service.files.source_var.name": {
+ "owner": "default",
+ "value": "/etc/file"
+ },
+ "services.test_service.files.source_var.source": {
+ "owner": "default",
+ "value": "file"
+ },
+ "services.test_service.files.source_var.activate": {
+ "owner": "default",
+ "value": true
+ },
+ "services.test_service.activate": {
+ "owner": "default",
+ "value": true
+ },
+ "services.test_service.manage": {
+ "owner": "default",
+ "value": true
+ }
+}
diff --git a/tests/dictionaries/01base_file_var_source/result/etc/file b/tests/dictionaries/01base_file_var_source/result/etc/file
new file mode 100644
index 000000000..4089fbcce
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/result/etc/file
@@ -0,0 +1,2 @@
+non
+non
diff --git a/tests/dictionaries/01base_file_var_source/result/tmpfiles.d/0rougail.conf b/tests/dictionaries/01base_file_var_source/result/tmpfiles.d/0rougail.conf
new file mode 100644
index 000000000..1bc5dfc34
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/result/tmpfiles.d/0rougail.conf
@@ -0,0 +1 @@
+C /etc/file 0644 root root - /usr/local/lib/etc/file
diff --git a/tests/dictionaries/01base_file_var_source/tiramisu/base.py b/tests/dictionaries/01base_file_var_source/tiramisu/base.py
new file mode 100644
index 000000000..4fdc7bea9
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/tiramisu/base.py
@@ -0,0 +1,35 @@
+from importlib.machinery import SourceFileLoader as _SourceFileLoader
+from importlib.util import spec_from_loader as _spec_from_loader, module_from_spec as _module_from_spec
+class func:
+ pass
+
+def _load_functions(path):
+ global _SourceFileLoader, _spec_from_loader, _module_from_spec, func
+ loader = _SourceFileLoader('func', path)
+ spec = _spec_from_loader(loader.name, loader)
+ func_ = _module_from_spec(spec)
+ loader.exec_module(func_)
+ for function in dir(func_):
+ if function.startswith('_'):
+ continue
+ setattr(func, function, getattr(func_, function))
+_load_functions('tests/dictionaries/../eosfunc/test.py')
+try:
+ from tiramisu3 import *
+except:
+ from tiramisu import *
+option_2 = StrOption(name="source_var", doc="Description", default="file", properties=frozenset({"mandatory", "normal"}))
+option_3 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
+optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+option_8 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_9 = SymLinkOption(name="source", opt=option_2)
+option_7 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_6 = OptionDescription(name="source_var", doc="source_var", children=[option_8, option_9, option_7])
+optiondescription_5 = OptionDescription(name="files", doc="files", children=[optiondescription_6])
+option_4 = BoolOption(name="activate", doc="activate", default=True)
+option_10 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_10])
+optiondescription_13.impl_set_information('type', "service")
+optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
diff --git a/tests/dictionaries/01base_file_var_source/tiramisu/multi.py b/tests/dictionaries/01base_file_var_source/tiramisu/multi.py
new file mode 100644
index 000000000..8b91c7445
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/tiramisu/multi.py
@@ -0,0 +1,51 @@
+from importlib.machinery import SourceFileLoader as _SourceFileLoader
+from importlib.util import spec_from_loader as _spec_from_loader, module_from_spec as _module_from_spec
+class func:
+ pass
+
+def _load_functions(path):
+ global _SourceFileLoader, _spec_from_loader, _module_from_spec, func
+ loader = _SourceFileLoader('func', path)
+ spec = _spec_from_loader(loader.name, loader)
+ func_ = _module_from_spec(spec)
+ loader.exec_module(func_)
+ for function in dir(func_):
+ if function.startswith('_'):
+ continue
+ setattr(func, function, getattr(func_, function))
+_load_functions('tests/dictionaries/../eosfunc/test.py')
+try:
+ from tiramisu3 import *
+except:
+ from tiramisu import *
+option_2 = StrOption(name="source_var", doc="Description", default="file", properties=frozenset({"mandatory", "normal"}))
+option_3 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
+optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_12 = SymLinkOption(name="source", opt=option_2)
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="source_var", doc="source_var", children=[option_11, option_12, option_10])
+optiondescription_8 = OptionDescription(name="files", doc="files", children=[optiondescription_9])
+option_7 = BoolOption(name="activate", doc="activate", default=True)
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_13])
+optiondescription_24.impl_set_information('type', "service")
+optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
+optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_5 = StrOption(name="source_var", doc="Description", default="file", properties=frozenset({"mandatory", "normal"}))
+option_6 = StrOption(name="mode_conteneur_actif", doc="Description", default="non", properties=frozenset({"mandatory", "normal"}))
+optiondescription_4 = OptionDescription(name="general", doc="general", children=[option_5, option_6], properties=frozenset({"normal"}))
+optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_4])
+option_18 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_19 = SymLinkOption(name="source", opt=option_5)
+option_17 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_16 = OptionDescription(name="source_var", doc="source_var", children=[option_18, option_19, option_17])
+optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16])
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+option_20 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_20])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
diff --git a/tests/dictionaries/01base_file_var_source/tmpl/file b/tests/dictionaries/01base_file_var_source/tmpl/file
new file mode 100644
index 000000000..27ff6834c
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/tmpl/file
@@ -0,0 +1,2 @@
+%%mode_conteneur_actif
+%%rougail.general.mode_conteneur_actif
diff --git a/tests/dictionaries/01base_file_var_source/xml/00-base.xml b/tests/dictionaries/01base_file_var_source/xml/00-base.xml
new file mode 100644
index 000000000..74e276a1d
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/xml/00-base.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ /etc/file
+
+
+
+
+
+ file
+
+
+ non
+
+
+
+
diff --git a/tests/dictionaries/01base_file_var_source/yml/00-base.yml b/tests/dictionaries/01base_file_var_source/yml/00-base.yml
new file mode 100644
index 000000000..05bd8c1f9
--- /dev/null
+++ b/tests/dictionaries/01base_file_var_source/yml/00-base.yml
@@ -0,0 +1,23 @@
+version: '0.10'
+services:
+- service:
+ - name: test
+ file:
+ - source: source_var
+ source_type: variable
+ text: /etc/file
+variables:
+- family:
+ - name: general
+ variables:
+ - variable:
+ - name: source_var
+ type: string
+ description: Description
+ value:
+ - text: file
+ - name: mode_conteneur_actif
+ type: string
+ description: Description
+ value:
+ - text: non
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/after.json
index 30cd5f24e..a3d4412e4 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/base.json
index c181f1b9e..8ad0ec0ae 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/before.json
index 30cd5f24e..a3d4412e4 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/base.py
index a59d03e2e..a9d2c6705 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/multi.py
index ced5399c1..e26ed3ead 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/after.json
index b7993113e..aaaf7a7ef 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/base.json
index d99b2c901..3c6640c01 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.condition2": "no",
"rougail.general.test_variable": "no",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/before.json
index b7993113e..aaaf7a7ef 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param2/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/base.py
index 886d085b0..03ed87b78 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/multi.py
index 4c27884ba..a2440eadc 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param2/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/after.json
index 32acecbcc..a2921bc75 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/base.json
index cfcd8f624..64c16aabf 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.condition": "no",
"rougail.general.condition2": "no",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/before.json
index 32acecbcc..a2921bc75 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param3/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/base.py
index b6d035406..a881687b8 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/multi.py
index 4badad189..16501f4eb 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param3/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/after.json
index 24bc818c1..211d4d153 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/base.json
index db5a79246..5a9fd2a82 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.condition": "yes",
"rougail.general.condition2": "no",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/before.json
index 24bc818c1..211d4d153 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param4/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/base.py
index b20ca2641..51c0da04c 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="yes", propertie
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/multi.py
index 235617402..15078d656 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param4/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="yes", propertie
option_3 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/after.json
index 2bf4f8bee..69823bd01 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/base.json
index 84715fd22..d35d8f6eb 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.condition": "yes",
"rougail.general.condition2": "yes",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/before.json
index 2bf4f8bee..69823bd01 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param5/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/base.py
index f7e27b9d1..d833341fe 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="yes", propertie
option_3 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/multi.py
index 265996a6a..e498289a1 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param5/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="yes", propertie
option_3 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/after.json
index cbc8c9cbd..2a9c2ffec 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/base.json
index 83036dafc..e6b129e97 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.condition": "no",
"rougail.general.condition2": "yes",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/before.json
index cbc8c9cbd..2a9c2ffec 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param6/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/base.py
index 95a13e5d9..c1ff43ffe 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/multi.py
index ab9aba1b7..bb5809db9 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param6/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="no", properties
option_3 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="test_variable", doc="No change", default="no", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe"), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("yes")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_7, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_7, notraisepropertyerror=True), 'expected_1': ParamValue(["yes", "maybe"])})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/after.json b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/after.json
index 419401941..44d5addf3 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/base.json b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/base.json
index 0ff4587cf..c66c2d1a2 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.condition": "oui",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/before.json b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/before.json
index 419401941..44d5addf3 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/base.py
index d8ac157fd..5df980266 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="oui", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/multi.py
index 22c7d4fb0..927561656 100644
--- a/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_in_multi_param_disabled/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="oui", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="oui", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("maybe")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
-optiondescription_17 = OptionDescription(name="file1", doc="file1", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file1")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_21 = StrOption(name="source", doc="source", default="file1")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
+optiondescription_18 = OptionDescription(name="file1", doc="file1", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/after.json b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/after.json
index 560f23c6b..d89acf031 100644
--- a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/after.json
+++ b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/base.json b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/base.json
index 4b01dd525..6ee77b6f6 100644
--- a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/base.json
+++ b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.condition": "no",
"rougail.general.disable_variable": "no",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/before.json b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/before.json
index 560f23c6b..d89acf031 100644
--- a/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/before.json
+++ b/tests/dictionaries/10load_disabled_if_not_in_fallback/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/base.py b/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/base.py
index 9e5f6506d..69b23b11b 100644
--- a/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/base.py
+++ b/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/base.py
@@ -21,15 +21,15 @@ except:
option_2 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_3 = StrOption(name="disable_variable", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_8 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_9 = StrOption(name="source", doc="source", default="file1")
option_7 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_6 = OptionDescription(name="file1", doc="file1", children=[option_8, option_7])
-optiondescription_6.impl_set_information('source', "file1")
+optiondescription_6 = OptionDescription(name="file1", doc="file1", children=[option_8, option_9, option_7])
optiondescription_5 = OptionDescription(name="files", doc="files", children=[optiondescription_6])
option_4 = BoolOption(name="activate", doc="activate", default=True)
-option_9 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_9])
-optiondescription_12.impl_set_information('type', "service")
-optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
+option_10 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_10])
+optiondescription_13.impl_set_information('type', "service")
+optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
diff --git a/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/multi.py b/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/multi.py
index fa9e06af3..57d7104c9 100644
--- a/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/multi.py
+++ b/tests/dictionaries/10load_disabled_if_not_in_fallback/tiramisu/multi.py
@@ -21,31 +21,31 @@ except:
option_2 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_3 = StrOption(name="disable_variable", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_11 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_12 = StrOption(name="source", doc="source", default="file1")
option_10 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_9 = OptionDescription(name="file1", doc="file1", children=[option_11, option_10])
-optiondescription_9.impl_set_information('source', "file1")
+optiondescription_9 = OptionDescription(name="file1", doc="file1", children=[option_11, option_12, option_10])
optiondescription_8 = OptionDescription(name="files", doc="files", children=[optiondescription_9])
option_7 = BoolOption(name="activate", doc="activate", default=True)
-option_12 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_12])
-optiondescription_22.impl_set_information('type', "service")
-optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
-optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_13])
+optiondescription_24.impl_set_information('type', "service")
+optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
+optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
option_5 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
option_6 = StrOption(name="disable_variable", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
optiondescription_4 = OptionDescription(name="general", doc="general", children=[option_5, option_6], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_4])
-option_17 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_16 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_15 = OptionDescription(name="file1", doc="file1", children=[option_17, option_16])
-optiondescription_15.impl_set_information('source', "file1")
-optiondescription_14 = OptionDescription(name="files", doc="files", children=[optiondescription_15])
-option_13 = BoolOption(name="activate", doc="activate", default=True)
-option_18 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_14, option_13, option_18])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
+optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_4])
+option_18 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_19 = StrOption(name="source", doc="source", default="file1")
+option_17 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_16 = OptionDescription(name="file1", doc="file1", children=[option_18, option_19, option_17])
+optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16])
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+option_20 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_20])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
diff --git a/tests/dictionaries/11disabled_if_in_filelist/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist/makedict/after.json
index 6ffeb2403..f96452594 100644
--- a/tests/dictionaries/11disabled_if_in_filelist/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist/makedict/base.json
index 16dcb1036..8924b3316 100644
--- a/tests/dictionaries/11disabled_if_in_filelist/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": true,
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist/makedict/before.json
index 6ffeb2403..f96452594 100644
--- a/tests/dictionaries/11disabled_if_in_filelist/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist/tiramisu/base.py
index bb09c28ca..82e131f21 100644
--- a/tests/dictionaries/11disabled_if_in_filelist/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabled_if_in_filelist/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist/tiramisu/multi.py
index 83c39f367..8d5a536c3 100644
--- a/tests/dictionaries/11disabled_if_in_filelist/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_8 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/after.json
index fb118d0f7..69befa8d2 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/base.json
index ba70a644a..328ee3e37 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.condition": true,
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/before.json
index fb118d0f7..69befa8d2 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/base.py
index a522edcec..199eaa8af 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/base.py
@@ -20,15 +20,15 @@ except:
from tiramisu import *
option_2 = BoolOption(name="condition", doc="condition", default=True, properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_8 = StrOption(name="source", doc="source", default="file1")
option_6 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_5 = OptionDescription(name="file1", doc="file1", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file1")
+optiondescription_5 = OptionDescription(name="file1", doc="file1", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_11.impl_set_information('type', "service")
-optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_12.impl_set_information('type', "service")
+optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/multi.py
index 5331eba20..a702204d3 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean/tiramisu/multi.py
@@ -20,30 +20,30 @@ except:
from tiramisu import *
option_2 = BoolOption(name="condition", doc="condition", default=True, properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
option_4 = BoolOption(name="condition", doc="condition", default=True, properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_15 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_14 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_4, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_13 = OptionDescription(name="file1", doc="file1", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file1")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_16 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_17 = StrOption(name="source", doc="source", default="file1")
+option_15 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_4, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
+optiondescription_14 = OptionDescription(name="file1", doc="file1", children=[option_16, option_17, option_15])
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/after.json
index b8fb4d222..8df0f30a1 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/base.json
index 1a9571e44..9635e68a5 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.condition": false,
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/before.json
index b8fb4d222..8df0f30a1 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean2/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/base.py
index a79880d51..f01f13e89 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/base.py
@@ -20,15 +20,15 @@ except:
from tiramisu import *
option_2 = BoolOption(name="condition", doc="condition", default=False, properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_8 = StrOption(name="source", doc="source", default="file1")
option_6 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_5 = OptionDescription(name="file1", doc="file1", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file1")
+optiondescription_5 = OptionDescription(name="file1", doc="file1", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_11.impl_set_information('type', "service")
-optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_12.impl_set_information('type', "service")
+optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/multi.py
index 029d17b4a..8eeb9dcfc 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_boolean2/tiramisu/multi.py
@@ -20,30 +20,30 @@ except:
from tiramisu import *
option_2 = BoolOption(name="condition", doc="condition", default=False, properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
option_4 = BoolOption(name="condition", doc="condition", default=False, properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_15 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_14 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_4, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
-optiondescription_13 = OptionDescription(name="file1", doc="file1", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file1")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_16 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_17 = StrOption(name="source", doc="source", default="file1")
+option_15 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_4, notraisepropertyerror=True), 'expected_0': ParamValue(True)})))
+optiondescription_14 = OptionDescription(name="file1", doc="file1", children=[option_16, option_17, option_15])
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/after.json
index 060b431be..221ca49f3 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/base.json
index 102901519..e2b8adeae 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.condition": "oui",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/before.json
index 060b431be..221ca49f3 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_disabled/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/base.py
index 021480560..c9a0c7b82 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="oui", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/multi.py
index 366b00604..f086660ed 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_disabled/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="oui", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="oui", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/after.json
index b8e2fa4f9..bc8625abf 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
@@ -23,6 +27,10 @@
"owner": "default",
"value": "/tmp/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/base.json
index dbf99bf10..97f44b587 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/base.json
@@ -3,8 +3,10 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": true,
"services.test_service.files.file2.name": "/tmp/file2",
+ "services.test_service.files.file2.source": "file2",
"services.test_service.files.file2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/before.json
index b8e2fa4f9..bc8625abf 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_multi/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": true
@@ -23,6 +27,10 @@
"owner": "default",
"value": "/tmp/file2"
},
+ "services.test_service.files.file2.source": {
+ "owner": "default",
+ "value": "file2"
+ },
"services.test_service.files.file2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/base.py
index ad273011a..03a3c8f4c 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/base.py
@@ -22,19 +22,19 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_16 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_10 = StrOption(name="source", doc="source", default="file1")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file1")
-option_12 = FilenameOption(name="name", doc="name", default="/tmp/file2")
-option_11 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_10 = OptionDescription(name="file2", doc="file2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "file2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="file1", doc="file1", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/tmp/file2")
+option_14 = StrOption(name="source", doc="source", default="file2")
+option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_11 = OptionDescription(name="file2", doc="file2", children=[option_13, option_14, option_12])
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_16.impl_set_information('type', "service")
-optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_18 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
+optiondescription_18.impl_set_information('type', "service")
+optiondescription_17 = OptionDescription(name="services", doc="services", children=[optiondescription_18], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_16, optiondescription_17])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/multi.py
index d150e334a..9b878d433 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_multi/tiramisu/multi.py
@@ -22,40 +22,40 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_14 = StrOption(name="source", doc="source", default="file1")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file1")
-option_16 = FilenameOption(name="name", doc="name", default="/tmp/file2")
-option_15 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_14 = OptionDescription(name="file2", doc="file2", children=[option_16, option_15])
-optiondescription_14.impl_set_information('source', "file2")
-optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11, optiondescription_14])
+optiondescription_11 = OptionDescription(name="file1", doc="file1", children=[option_13, option_14, option_12])
+option_17 = FilenameOption(name="name", doc="name", default="/tmp/file2")
+option_18 = StrOption(name="source", doc="source", default="file2")
+option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_15 = OptionDescription(name="file2", doc="file2", children=[option_17, option_18, option_16])
+optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11, optiondescription_15])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_17 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_17])
-optiondescription_30.impl_set_information('type', "service")
-optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_19])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="1", doc="1", children=[optiondescription_32, optiondescription_33])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_22 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_21 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_20 = OptionDescription(name="file1", doc="file1", children=[option_22, option_21])
-optiondescription_20.impl_set_information('source', "file1")
-option_25 = FilenameOption(name="name", doc="name", default="/tmp/file2")
-option_24 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_23 = OptionDescription(name="file2", doc="file2", children=[option_25, option_24])
-optiondescription_23.impl_set_information('source', "file2")
-optiondescription_19 = OptionDescription(name="files", doc="files", children=[optiondescription_20, optiondescription_23])
-option_18 = BoolOption(name="activate", doc="activate", default=True)
-option_26 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_19, option_18, option_26])
-optiondescription_34.impl_set_information('type', "service")
-optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
-optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_24 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_25 = StrOption(name="source", doc="source", default="file1")
+option_23 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_22 = OptionDescription(name="file1", doc="file1", children=[option_24, option_25, option_23])
+option_28 = FilenameOption(name="name", doc="name", default="/tmp/file2")
+option_29 = StrOption(name="source", doc="source", default="file2")
+option_27 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_26 = OptionDescription(name="file2", doc="file2", children=[option_28, option_29, option_27])
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_26])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_30 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_30])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_35 = OptionDescription(name="2", doc="2", children=[optiondescription_36, optiondescription_37])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_31, optiondescription_35])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/after.json b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/after.json
index 6ffeb2403..f96452594 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/after.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/base.json b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/base.json
index 16dcb1036..8924b3316 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/base.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": true,
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/before.json b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/before.json
index 6ffeb2403..f96452594 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/before.json
+++ b/tests/dictionaries/11disabled_if_in_filelist_same_name/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/base.py b/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/base.py
index bb09c28ca..82e131f21 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/base.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/multi.py b/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/multi.py
index 83c39f367..8d5a536c3 100644
--- a/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/multi.py
+++ b/tests/dictionaries/11disabled_if_in_filelist_same_name/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_4 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
option_8 = BoolOption(name="mode_conteneur_actif2", doc="No change", default=True, properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_6, todict=True, notraisepropertyerror=True), 'expected': ParamValue("oui")}))}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("oui")})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/after.json b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/after.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/after.json
+++ b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/base.json b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/base.json
index 71d203173..1a6e1a8bd 100644
--- a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/base.json
+++ b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file.name": "/tmp/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/before.json b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/before.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifin_filelist_notexist/makedict/before.json
+++ b/tests/dictionaries/11disabledifin_filelist_notexist/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/base.py b/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/base.py
index a13058bb3..660da6588 100644
--- a/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/base.py
+++ b/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/multi.py b/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/multi.py
index 0c9032280..83a7d025f 100644
--- a/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/multi.py
+++ b/tests/dictionaries/11disabledifin_filelist_notexist/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/after.json b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/after.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/after.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/base.json b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/base.json
index 71d203173..1a6e1a8bd 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/base.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file.name": "/tmp/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/before.json b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/before.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/before.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/base.py b/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/base.py
index a13058bb3..660da6588 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/base.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/multi.py b/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/multi.py
index 0c9032280..83a7d025f 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/multi.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/after.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/after.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/after.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/base.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/base.json
index 71d203173..1a6e1a8bd 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/base.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file.name": "/tmp/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/before.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/before.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/before.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/base.py b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/base.py
index b7fed90fa..8ab5971f1 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/base.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True), 'condition_1': ParamOption(option_4, notraisepropertyerror=True), 'expected_1': ParamValue("oui"), 'reverse_condition_1': ParamValue(True), 'condition_operator': ParamValue("OR")})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/multi.py b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/multi.py
index ef96ca91f..5083cc9fb 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/multi.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_multi/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = StrOption(name="condition", doc="No change", default="non", propertie
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True), 'condition_1': ParamOption(option_4, notraisepropertyerror=True), 'expected_1': ParamValue("oui"), 'reverse_condition_1': ParamValue(True), 'condition_operator': ParamValue("OR")})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True), 'condition_1': ParamOption(option_8, notraisepropertyerror=True), 'expected_1': ParamValue("oui"), 'reverse_condition_1': ParamValue(True), 'condition_operator': ParamValue("OR")})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True), 'condition_1': ParamOption(option_8, notraisepropertyerror=True), 'expected_1': ParamValue("oui"), 'reverse_condition_1': ParamValue(True), 'condition_operator': ParamValue("OR")})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/after.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/after.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/after.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/after.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/base.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/base.json
index 71d203173..1a6e1a8bd 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/base.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/base.json
@@ -3,6 +3,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file.name": "/tmp/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/before.json b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/before.json
index 93b9a6e8a..ae1ef20d9 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/before.json
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/makedict/before.json
@@ -15,6 +15,10 @@
"owner": "default",
"value": "/tmp/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/base.py b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/base.py
index 77b3ae50b..ef076fb45 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/base.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/base.py
@@ -22,15 +22,15 @@ option_2 = ChoiceOption(name="condition", doc="No change", values=('non', 'stati
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("statique"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_13.impl_set_information('type', "service")
-optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_14.impl_set_information('type', "service")
+optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
diff --git a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/multi.py b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/multi.py
index 1e4c6c5d0..8a4858d65 100644
--- a/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/multi.py
+++ b/tests/dictionaries/11disabledifnotin_filelist_notexist_validenum/tiramisu/multi.py
@@ -22,32 +22,32 @@ option_2 = ChoiceOption(name="condition", doc="No change", values=('non', 'stati
option_3 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_4 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_13 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_14 = StrOption(name="source", doc="source", default="file")
option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_2, notraisepropertyerror=True), 'expected_0': ParamValue("statique"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "file")
+optiondescription_11 = OptionDescription(name="file", doc="file", children=[option_13, option_14, option_12])
optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_15])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
option_6 = ChoiceOption(name="condition", doc="No change", values=('non', 'statique'), default="non", properties=frozenset({"mandatory", "normal"}))
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_8 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_5 = OptionDescription(name="general", doc="general", children=[option_6, option_7, option_8], properties=frozenset({"normal"}))
-optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
-option_19 = FilenameOption(name="name", doc="name", default="/tmp/file")
-option_18 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("statique"), 'reverse_condition_0': ParamValue(True)})))
-optiondescription_17 = OptionDescription(name="file", doc="file", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "file")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_28.impl_set_information('type', "service")
-optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
-optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_5])
+option_20 = FilenameOption(name="name", doc="name", default="/tmp/file")
+option_21 = StrOption(name="source", doc="source", default="file")
+option_19 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_6, notraisepropertyerror=True), 'expected_0': ParamValue("statique"), 'reverse_condition_0': ParamValue(True)})))
+optiondescription_18 = OptionDescription(name="file", doc="file", children=[option_20, option_21, option_19])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_22 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_22])
+optiondescription_30.impl_set_information('type', "service")
+optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
+optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
diff --git a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/after.json b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/after.json
index 3c6b850bb..bcd6b56d5 100644
--- a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/after.json
+++ b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/base.json b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/base.json
index d2d2b6619..7dd7f60d0 100644
--- a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/base.json
+++ b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.general.mode_conteneur_actif": "non",
"rougail.general.condition": "non",
"services.test_service.files.file1.name": "/tmp/file1",
+ "services.test_service.files.file1.source": "file1",
"services.test_service.files.file1.activate": false,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/before.json b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/before.json
index 3c6b850bb..bcd6b56d5 100644
--- a/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/before.json
+++ b/tests/dictionaries/11multi_disabled_if_in_filelist/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/tmp/file1"
},
+ "services.test_service.files.file1.source": {
+ "owner": "default",
+ "value": "file1"
+ },
"services.test_service.files.file1.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/base.py b/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/base.py
index bc9243cc1..b58dd094f 100644
--- a/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/base.py
+++ b/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/base.py
@@ -21,15 +21,15 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_8 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_9 = StrOption(name="source", doc="source", default="file1")
option_7 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_6 = OptionDescription(name="file1", doc="file1", children=[option_8, option_7])
-optiondescription_6.impl_set_information('source', "file1")
+optiondescription_6 = OptionDescription(name="file1", doc="file1", children=[option_8, option_9, option_7])
optiondescription_5 = OptionDescription(name="files", doc="files", children=[optiondescription_6])
option_4 = BoolOption(name="activate", doc="activate", default=True)
-option_9 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_9])
-optiondescription_12.impl_set_information('type', "service")
-optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
+option_10 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_10])
+optiondescription_13.impl_set_information('type', "service")
+optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
diff --git a/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/multi.py b/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/multi.py
index 4e20bb0f8..a3eec7483 100644
--- a/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/multi.py
+++ b/tests/dictionaries/11multi_disabled_if_in_filelist/tiramisu/multi.py
@@ -21,31 +21,31 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_11 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_12 = StrOption(name="source", doc="source", default="file1")
option_10 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_9 = OptionDescription(name="file1", doc="file1", children=[option_11, option_10])
-optiondescription_9.impl_set_information('source', "file1")
+optiondescription_9 = OptionDescription(name="file1", doc="file1", children=[option_11, option_12, option_10])
optiondescription_8 = OptionDescription(name="files", doc="files", children=[optiondescription_9])
option_7 = BoolOption(name="activate", doc="activate", default=True)
-option_12 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_12])
-optiondescription_22.impl_set_information('type', "service")
-optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
-optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_13])
+optiondescription_24.impl_set_information('type', "service")
+optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
+optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
option_5 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_6 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_4 = OptionDescription(name="general", doc="general", children=[option_5, option_6], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_4])
-option_17 = FilenameOption(name="name", doc="name", default="/tmp/file1")
-option_16 = BoolOption(name="activate", doc="activate", default=False)
-optiondescription_15 = OptionDescription(name="file1", doc="file1", children=[option_17, option_16])
-optiondescription_15.impl_set_information('source', "file1")
-optiondescription_14 = OptionDescription(name="files", doc="files", children=[optiondescription_15])
-option_13 = BoolOption(name="activate", doc="activate", default=True)
-option_18 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_14, option_13, option_18])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
+optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_4])
+option_18 = FilenameOption(name="name", doc="name", default="/tmp/file1")
+option_19 = StrOption(name="source", doc="source", default="file1")
+option_17 = BoolOption(name="activate", doc="activate", default=False)
+optiondescription_16 = OptionDescription(name="file1", doc="file1", children=[option_18, option_19, option_17])
+optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16])
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+option_20 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_20])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
diff --git a/tests/dictionaries/20notemplating/makedict/after.json b/tests/dictionaries/20notemplating/makedict/after.json
index c40ee8cfd..23e76deff 100644
--- a/tests/dictionaries/20notemplating/makedict/after.json
+++ b/tests/dictionaries/20notemplating/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/20notemplating/makedict/base.json b/tests/dictionaries/20notemplating/makedict/base.json
index 07d7d7232..556722f4e 100644
--- a/tests/dictionaries/20notemplating/makedict/base.json
+++ b/tests/dictionaries/20notemplating/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.mode_conteneur_actif": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/20notemplating/makedict/before.json b/tests/dictionaries/20notemplating/makedict/before.json
index c40ee8cfd..23e76deff 100644
--- a/tests/dictionaries/20notemplating/makedict/before.json
+++ b/tests/dictionaries/20notemplating/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/20notemplating/tiramisu/base.py b/tests/dictionaries/20notemplating/tiramisu/base.py
index 4ca072e9a..b73692702 100644
--- a/tests/dictionaries/20notemplating/tiramisu/base.py
+++ b/tests/dictionaries/20notemplating/tiramisu/base.py
@@ -20,16 +20,16 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
optiondescription_5.impl_set_information('engine', "none")
-optiondescription_5.impl_set_information('source', "file")
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_11.impl_set_information('type', "service")
-optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_12.impl_set_information('type', "service")
+optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
diff --git a/tests/dictionaries/20notemplating/tiramisu/multi.py b/tests/dictionaries/20notemplating/tiramisu/multi.py
index 260e0282b..f0408dde0 100644
--- a/tests/dictionaries/20notemplating/tiramisu/multi.py
+++ b/tests/dictionaries/20notemplating/tiramisu/multi.py
@@ -20,32 +20,32 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_7.impl_set_information('engine', "none")
-optiondescription_7.impl_set_information('source', "file")
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="general", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="file", doc="file", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "none")
-optiondescription_13.impl_set_information('source', "file")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_17 = StrOption(name="source", doc="source", default="file")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="file", doc="file", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "none")
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
diff --git a/tests/dictionaries/40ifin_leadershipauto/makedict/after.json b/tests/dictionaries/40ifin_leadershipauto/makedict/after.json
index 3464501b1..2824bccf5 100644
--- a/tests/dictionaries/40ifin_leadershipauto/makedict/after.json
+++ b/tests/dictionaries/40ifin_leadershipauto/makedict/after.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/40ifin_leadershipauto/makedict/base.json b/tests/dictionaries/40ifin_leadershipauto/makedict/base.json
index 2eac34244..5152a1875 100644
--- a/tests/dictionaries/40ifin_leadershipauto/makedict/base.json
+++ b/tests/dictionaries/40ifin_leadershipauto/makedict/base.json
@@ -8,6 +8,7 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/40ifin_leadershipauto/makedict/before.json b/tests/dictionaries/40ifin_leadershipauto/makedict/before.json
index 3464501b1..2824bccf5 100644
--- a/tests/dictionaries/40ifin_leadershipauto/makedict/before.json
+++ b/tests/dictionaries/40ifin_leadershipauto/makedict/before.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/40ifin_leadershipauto/tiramisu/base.py b/tests/dictionaries/40ifin_leadershipauto/tiramisu/base.py
index e93506916..df276d58d 100644
--- a/tests/dictionaries/40ifin_leadershipauto/tiramisu/base.py
+++ b/tests/dictionaries/40ifin_leadershipauto/tiramisu/base.py
@@ -25,15 +25,15 @@ option_6 = StrOption(name="follower1", doc="follower1", multi=True, default=Calc
option_7 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_4 = Leadership(name="leader", doc="leader", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, optiondescription_4], properties=frozenset({"normal"}))
-optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_13])
-optiondescription_16.impl_set_information('type', "service")
-optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
+option_14 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_14])
+optiondescription_17.impl_set_information('type', "service")
+optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
diff --git a/tests/dictionaries/40ifin_leadershipauto/tiramisu/multi.py b/tests/dictionaries/40ifin_leadershipauto/tiramisu/multi.py
index 21b020c44..69a67f5de 100644
--- a/tests/dictionaries/40ifin_leadershipauto/tiramisu/multi.py
+++ b/tests/dictionaries/40ifin_leadershipauto/tiramisu/multi.py
@@ -25,18 +25,18 @@ option_6 = StrOption(name="follower1", doc="follower1", multi=True, default=Calc
option_7 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_4 = Leadership(name="leader", doc="leader", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, optiondescription_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_30.impl_set_information('type', "service")
-optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_21 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_21])
+optiondescription_32.impl_set_information('type', "service")
+optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
+optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_10 = StrOption(name="condition", doc="condition", default="oui", properties=frozenset({"mandatory", "normal"}))
option_12 = StrOption(name="leader", doc="leader", multi=True, default=['a'], properties=frozenset({"mandatory"}))
@@ -44,16 +44,16 @@ option_13 = StrOption(name="follower1", doc="follower1", multi=True, default=Cal
option_14 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_11 = Leadership(name="leader", doc="leader", children=[option_12, option_13, option_14], properties=frozenset({"normal"}))
optiondescription_8 = OptionDescription(name="general", doc="general", children=[option_9, option_10, optiondescription_11], properties=frozenset({"normal"}))
-optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
-option_25 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_23 = OptionDescription(name="mailname", doc="mailname", children=[option_25, option_24])
-optiondescription_23.impl_set_information('source', "mailname")
-optiondescription_22 = OptionDescription(name="files", doc="files", children=[optiondescription_23])
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-option_26 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_22, option_21, option_26])
-optiondescription_34.impl_set_information('type', "service")
-optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
-optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
+optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+option_26 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_27 = StrOption(name="source", doc="source", default="mailname")
+option_25 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_24 = OptionDescription(name="mailname", doc="mailname", children=[option_26, option_27, option_25])
+optiondescription_23 = OptionDescription(name="files", doc="files", children=[optiondescription_24])
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+option_28 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_23, option_22, option_28])
+optiondescription_36.impl_set_information('type', "service")
+optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
+optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
diff --git a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/after.json b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/after.json
index 134760c66..86fb9fb7b 100644
--- a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/after.json
+++ b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/after.json
@@ -38,6 +38,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -46,6 +50,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/base.json b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/base.json
index c49f47766..37749908e 100644
--- a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/base.json
+++ b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/base.json
@@ -13,8 +13,10 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/before.json b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/before.json
index 134760c66..86fb9fb7b 100644
--- a/tests/dictionaries/40ifin_leadershipauto_follower/makedict/before.json
+++ b/tests/dictionaries/40ifin_leadershipauto_follower/makedict/before.json
@@ -38,6 +38,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -46,6 +50,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/base.py b/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/base.py
index b6bc0ea2e..9d72c4e8f 100644
--- a/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/base.py
+++ b/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/base.py
@@ -25,20 +25,20 @@ option_6 = StrOption(name="follower1", doc="follower1", multi=True, default=Calc
option_7 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_4 = Leadership(name="leader", doc="leader", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, optiondescription_4], properties=frozenset({"normal"}))
-optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_19 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_13])
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_14])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_19 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_16])
-optiondescription_19.impl_set_information('type', "service")
-optiondescription_18 = OptionDescription(name="services", doc="services", children=[optiondescription_19], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18])
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_21 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_18])
+optiondescription_21.impl_set_information('type', "service")
+optiondescription_20 = OptionDescription(name="services", doc="services", children=[optiondescription_21], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_20])
diff --git a/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/multi.py b/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/multi.py
index 5098aaf58..54befc9a8 100644
--- a/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/multi.py
+++ b/tests/dictionaries/40ifin_leadershipauto_follower/tiramisu/multi.py
@@ -25,23 +25,23 @@ option_6 = StrOption(name="follower1", doc="follower1", multi=True, default=Calc
option_7 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_4 = Leadership(name="leader", doc="leader", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, optiondescription_4], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
-option_22 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname2", doc="mailname2", children=[option_22, option_21])
-optiondescription_20.impl_set_information('engine', "jinja")
-optiondescription_20.impl_set_information('source', "mailname2")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_20])
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
+option_23 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_24 = StrOption(name="source", doc="source", default="mailname2")
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_21 = OptionDescription(name="mailname2", doc="mailname2", children=[option_23, option_24, option_22])
+optiondescription_21.impl_set_information('engine', "jinja")
+optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_21])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_23 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_23])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35])
+option_25 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_40 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_25])
+optiondescription_40.impl_set_information('type', "service")
+optiondescription_39 = OptionDescription(name="services", doc="services", children=[optiondescription_40], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="1", doc="1", children=[optiondescription_38, optiondescription_39])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_10 = StrOption(name="condition", doc="condition", default="oui", properties=frozenset({"mandatory", "normal"}))
option_12 = StrOption(name="leader", doc="leader", multi=True, default=['a', 'b'], properties=frozenset({"mandatory"}))
@@ -49,21 +49,21 @@ option_13 = StrOption(name="follower1", doc="follower1", multi=True, default=Cal
option_14 = StrOption(name="follower2", doc="follower2", multi=True, properties=frozenset({"normal"}))
optiondescription_11 = Leadership(name="leader", doc="leader", children=[option_12, option_13, option_14], properties=frozenset({"normal"}))
optiondescription_8 = OptionDescription(name="general", doc="general", children=[option_9, option_10, optiondescription_11], properties=frozenset({"normal"}))
-optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
-option_28 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_27 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_26 = OptionDescription(name="mailname", doc="mailname", children=[option_28, option_27])
-optiondescription_26.impl_set_information('source', "mailname")
-option_31 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="mailname2", doc="mailname2", children=[option_31, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "mailname2")
-optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_29])
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-option_32 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_40 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_32])
-optiondescription_40.impl_set_information('type', "service")
-optiondescription_39 = OptionDescription(name="services", doc="services", children=[optiondescription_40], properties=frozenset({"hidden"}))
-optiondescription_37 = OptionDescription(name="2", doc="2", children=[optiondescription_38, optiondescription_39])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_37])
+optiondescription_42 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+option_30 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_31 = StrOption(name="source", doc="source", default="mailname")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="mailname", doc="mailname", children=[option_30, option_31, option_29])
+option_34 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_35 = StrOption(name="source", doc="source", default="mailname2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="mailname2", doc="mailname2", children=[option_34, option_35, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_27 = OptionDescription(name="files", doc="files", children=[optiondescription_28, optiondescription_32])
+option_26 = BoolOption(name="activate", doc="activate", default=True)
+option_36 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_44 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_27, option_26, option_36])
+optiondescription_44.impl_set_information('type', "service")
+optiondescription_43 = OptionDescription(name="services", doc="services", children=[optiondescription_44], properties=frozenset({"hidden"}))
+optiondescription_41 = OptionDescription(name="2", doc="2", children=[optiondescription_42, optiondescription_43])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_37, optiondescription_41])
diff --git a/tests/dictionaries/45extra_without_family/makedict/after.json b/tests/dictionaries/45extra_without_family/makedict/after.json
index 783727354..36f02f9c9 100644
--- a/tests/dictionaries/45extra_without_family/makedict/after.json
+++ b/tests/dictionaries/45extra_without_family/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/45extra_without_family/makedict/base.json b/tests/dictionaries/45extra_without_family/makedict/base.json
index 6db8d1a07..b97ad3bc0 100644
--- a/tests/dictionaries/45extra_without_family/makedict/base.json
+++ b/tests/dictionaries/45extra_without_family/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.my_var": "rougail",
"extra.my_var": null,
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/45extra_without_family/makedict/before.json b/tests/dictionaries/45extra_without_family/makedict/before.json
index 783727354..36f02f9c9 100644
--- a/tests/dictionaries/45extra_without_family/makedict/before.json
+++ b/tests/dictionaries/45extra_without_family/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/45extra_without_family/tiramisu/base.py b/tests/dictionaries/45extra_without_family/tiramisu/base.py
index 32cc9bd95..10a24d7d8 100644
--- a/tests/dictionaries/45extra_without_family/tiramisu/base.py
+++ b/tests/dictionaries/45extra_without_family/tiramisu/base.py
@@ -19,17 +19,17 @@ try:
except:
from tiramisu import *
option_1 = StrOption(name="my_var", doc="my_var", default="rougail", properties=frozenset({"mandatory", "normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
option_2 = StrOption(name="my_var", doc="my_var", default=Calculation(func.calc_multi_condition, Params((ParamValue("non")))), properties=frozenset({"normal"}))
-optiondescription_10 = OptionDescription(name="extra", doc="extra", children=[option_2])
+optiondescription_11 = OptionDescription(name="extra", doc="extra", children=[option_2])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_12.impl_set_information('type', "service")
-optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10, optiondescription_11])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_13.impl_set_information('type', "service")
+optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11, optiondescription_12])
diff --git a/tests/dictionaries/45extra_without_family/tiramisu/multi.py b/tests/dictionaries/45extra_without_family/tiramisu/multi.py
index 1e9f254e1..738c4ca5b 100644
--- a/tests/dictionaries/45extra_without_family/tiramisu/multi.py
+++ b/tests/dictionaries/45extra_without_family/tiramisu/multi.py
@@ -19,33 +19,33 @@ try:
except:
from tiramisu import *
option_1 = StrOption(name="my_var", doc="my_var", default="rougail", properties=frozenset({"mandatory", "normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
option_2 = StrOption(name="my_var", doc="my_var", default=Calculation(func.calc_multi_condition, Params((ParamValue("non")))), properties=frozenset({"normal"}))
-optiondescription_19 = OptionDescription(name="extra", doc="extra", children=[option_2])
+optiondescription_21 = OptionDescription(name="extra", doc="extra", children=[option_2])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_21 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_21.impl_set_information('type', "service")
-optiondescription_20 = OptionDescription(name="services", doc="services", children=[optiondescription_21], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19, optiondescription_20])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_23 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_23.impl_set_information('type', "service")
+optiondescription_22 = OptionDescription(name="services", doc="services", children=[optiondescription_23], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21, optiondescription_22])
option_3 = StrOption(name="my_var", doc="my_var", default="rougail", properties=frozenset({"mandatory", "normal"}))
-optiondescription_23 = OptionDescription(name="rougail", doc="Rougail", children=[option_3])
+optiondescription_25 = OptionDescription(name="rougail", doc="Rougail", children=[option_3])
option_4 = StrOption(name="my_var", doc="my_var", default=Calculation(func.calc_multi_condition, Params((ParamValue("non")))), properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="extra", doc="extra", children=[option_4])
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="file", doc="file", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_22 = OptionDescription(name="2", doc="2", children=[optiondescription_23, optiondescription_24, optiondescription_25])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_22])
+optiondescription_26 = OptionDescription(name="extra", doc="extra", children=[option_4])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_17 = StrOption(name="source", doc="source", default="file")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="file", doc="file", children=[option_16, option_17, option_15])
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_24 = OptionDescription(name="2", doc="2", children=[optiondescription_25, optiondescription_26, optiondescription_27])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_24])
diff --git a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/after.json b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/after.json
index 87248916c..143480f4f 100644
--- a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/after.json
+++ b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/after.json
@@ -19,6 +19,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/base.json b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/base.json
index 7bf71af28..2ba36c0e9 100644
--- a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/base.json
+++ b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/base.json
@@ -4,6 +4,7 @@
"rougail.general.mode_conteneur_actif1": "non",
"rougail.general.mode_conteneur_actif2": "non",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/before.json b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/before.json
index 87248916c..143480f4f 100644
--- a/tests/dictionaries/51redefine_remove_condition_filelist/makedict/before.json
+++ b/tests/dictionaries/51redefine_remove_condition_filelist/makedict/before.json
@@ -19,6 +19,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/base.py b/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/base.py
index dc0dc88b9..a24a05e39 100644
--- a/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/base.py
+++ b/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/base.py
@@ -23,15 +23,15 @@ option_3 = StrOption(name="condition", doc="No change", default="non", propertie
option_4 = StrOption(name="mode_conteneur_actif1", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_5 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4, option_5], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_13 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_10 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_11 = StrOption(name="source", doc="source", default="file")
option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="file", doc="file", children=[option_10, option_9])
-optiondescription_8.impl_set_information('source', "file")
+optiondescription_8 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_9])
optiondescription_7 = OptionDescription(name="files", doc="files", children=[optiondescription_8])
option_6 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_7, option_6, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_12 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_15 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_7, option_6, option_12])
+optiondescription_15.impl_set_information('type', "service")
+optiondescription_14 = OptionDescription(name="services", doc="services", children=[optiondescription_15], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_13, optiondescription_14])
diff --git a/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/multi.py b/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/multi.py
index e4c70e9bf..c72ebe746 100644
--- a/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/multi.py
+++ b/tests/dictionaries/51redefine_remove_condition_filelist/tiramisu/multi.py
@@ -23,33 +23,33 @@ option_3 = StrOption(name="condition", doc="No change", default="non", propertie
option_4 = StrOption(name="mode_conteneur_actif1", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_5 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="general", children=[option_2, option_3, option_4, option_5], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_15 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_16 = StrOption(name="source", doc="source", default="file")
option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="file", doc="file", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file")
+optiondescription_13 = OptionDescription(name="file", doc="file", children=[option_15, option_16, option_14])
optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_17])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_25 = OptionDescription(name="1", doc="1", children=[optiondescription_26, optiondescription_27])
option_7 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_8 = StrOption(name="condition", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
option_9 = StrOption(name="mode_conteneur_actif1", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="mode_conteneur_actif2", doc="No change", default="non", properties=frozenset({"mandatory", "normal"}))
optiondescription_6 = OptionDescription(name="general", doc="general", children=[option_7, option_8, option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_6])
-option_21 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="file", doc="file", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "file")
-optiondescription_18 = OptionDescription(name="files", doc="files", children=[optiondescription_19])
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_18, option_17, option_22])
-optiondescription_30.impl_set_information('type', "service")
-optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_6])
+option_22 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_23 = StrOption(name="source", doc="source", default="file")
+option_21 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_20 = OptionDescription(name="file", doc="file", children=[option_22, option_23, option_21])
+optiondescription_19 = OptionDescription(name="files", doc="files", children=[optiondescription_20])
+option_18 = BoolOption(name="activate", doc="activate", default=True)
+option_24 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_19, option_18, option_24])
+optiondescription_32.impl_set_information('type', "service")
+optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
+optiondescription_29 = OptionDescription(name="2", doc="2", children=[optiondescription_30, optiondescription_31])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_25, optiondescription_29])
diff --git a/tests/dictionaries/60extra_help/makedict/after.json b/tests/dictionaries/60extra_help/makedict/after.json
index f6974796d..4d90e3cdf 100644
--- a/tests/dictionaries/60extra_help/makedict/after.json
+++ b/tests/dictionaries/60extra_help/makedict/after.json
@@ -23,6 +23,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_help/makedict/base.json b/tests/dictionaries/60extra_help/makedict/base.json
index 3c55fcf7d..64b003ac6 100644
--- a/tests/dictionaries/60extra_help/makedict/base.json
+++ b/tests/dictionaries/60extra_help/makedict/base.json
@@ -5,6 +5,7 @@
"extra.ejabberd.day": null,
"extra.ejabberd.mode": "pre",
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/60extra_help/makedict/before.json b/tests/dictionaries/60extra_help/makedict/before.json
index f6974796d..4d90e3cdf 100644
--- a/tests/dictionaries/60extra_help/makedict/before.json
+++ b/tests/dictionaries/60extra_help/makedict/before.json
@@ -23,6 +23,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_help/tiramisu/base.py b/tests/dictionaries/60extra_help/tiramisu/base.py
index 82b1527e3..a9780d49a 100644
--- a/tests/dictionaries/60extra_help/tiramisu/base.py
+++ b/tests/dictionaries/60extra_help/tiramisu/base.py
@@ -21,21 +21,21 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_5 = StrOption(name="description", doc="description", default="Exportation de la base de ejabberd", properties=frozenset({"mandatory", "normal"}))
option_6 = ChoiceOption(name="day", doc="day", values=('none', 'daily', 'weekly', 'monthly'), default=Calculation(func.calc_multi_condition, Params((ParamValue("non")), kwargs={'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'match': ParamValue("none"), 'mismatch': ParamValue("daily")})), properties=frozenset({"mandatory", "normal"}))
option_6.impl_set_information('help', "Test help")
option_7 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), default="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
-optiondescription_15 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_16 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_13])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15, optiondescription_16])
+option_14 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_18 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_14])
+optiondescription_18.impl_set_information('type', "service")
+optiondescription_17 = OptionDescription(name="services", doc="services", children=[optiondescription_18], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16, optiondescription_17])
diff --git a/tests/dictionaries/60extra_help/tiramisu/multi.py b/tests/dictionaries/60extra_help/tiramisu/multi.py
index 53d2b863b..154afa865 100644
--- a/tests/dictionaries/60extra_help/tiramisu/multi.py
+++ b/tests/dictionaries/60extra_help/tiramisu/multi.py
@@ -21,43 +21,43 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_5 = StrOption(name="description", doc="description", default="Exportation de la base de ejabberd", properties=frozenset({"mandatory", "normal"}))
option_6 = ChoiceOption(name="day", doc="day", values=('none', 'daily', 'weekly', 'monthly'), default=Calculation(func.calc_multi_condition, Params((ParamValue("non")), kwargs={'condition_1': ParamOption(option_3, notraisepropertyerror=True), 'match': ParamValue("none"), 'mismatch': ParamValue("daily")})), properties=frozenset({"mandatory", "normal"}))
option_6.impl_set_information('help', "Test help")
option_7 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), default="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[option_5, option_6, option_7], properties=frozenset({"normal"}))
-optiondescription_29 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_31 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_20 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_31 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_20])
-optiondescription_31.impl_set_information('type', "service")
-optiondescription_30 = OptionDescription(name="services", doc="services", children=[optiondescription_31], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29, optiondescription_30])
+option_21 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_33 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_21])
+optiondescription_33.impl_set_information('type', "service")
+optiondescription_32 = OptionDescription(name="services", doc="services", children=[optiondescription_33], properties=frozenset({"hidden"}))
+optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31, optiondescription_32])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_8 = OptionDescription(name="general", doc="général", children=[option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_33 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+optiondescription_35 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
option_12 = StrOption(name="description", doc="description", default="Exportation de la base de ejabberd", properties=frozenset({"mandatory", "normal"}))
option_13 = ChoiceOption(name="day", doc="day", values=('none', 'daily', 'weekly', 'monthly'), default=Calculation(func.calc_multi_condition, Params((ParamValue("non")), kwargs={'condition_1': ParamOption(option_10, notraisepropertyerror=True), 'match': ParamValue("none"), 'mismatch': ParamValue("daily")})), properties=frozenset({"mandatory", "normal"}))
option_13.impl_set_information('help', "Test help")
option_14 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), default="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_11 = OptionDescription(name="ejabberd", doc="ejabberd", children=[option_12, option_13, option_14], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
-option_25 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_23 = OptionDescription(name="mailname", doc="mailname", children=[option_25, option_24])
-optiondescription_23.impl_set_information('source', "mailname")
-optiondescription_22 = OptionDescription(name="files", doc="files", children=[optiondescription_23])
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-option_26 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_22, option_21, option_26])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_32 = OptionDescription(name="2", doc="2", children=[optiondescription_33, optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_32])
+optiondescription_36 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
+option_26 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_27 = StrOption(name="source", doc="source", default="mailname")
+option_25 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_24 = OptionDescription(name="mailname", doc="mailname", children=[option_26, option_27, option_25])
+optiondescription_23 = OptionDescription(name="files", doc="files", children=[optiondescription_24])
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+option_28 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_23, option_22, option_28])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_34 = OptionDescription(name="2", doc="2", children=[optiondescription_35, optiondescription_36, optiondescription_37])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_34])
diff --git a/tests/dictionaries/60extra_leadership/makedict/after.json b/tests/dictionaries/60extra_leadership/makedict/after.json
index c6143a3c1..fc88064cd 100644
--- a/tests/dictionaries/60extra_leadership/makedict/after.json
+++ b/tests/dictionaries/60extra_leadership/makedict/after.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership/makedict/base.json b/tests/dictionaries/60extra_leadership/makedict/base.json
index 03deab1ba..2f4e5aa56 100644
--- a/tests/dictionaries/60extra_leadership/makedict/base.json
+++ b/tests/dictionaries/60extra_leadership/makedict/base.json
@@ -8,8 +8,10 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/60extra_leadership/makedict/before.json b/tests/dictionaries/60extra_leadership/makedict/before.json
index c6143a3c1..fc88064cd 100644
--- a/tests/dictionaries/60extra_leadership/makedict/before.json
+++ b/tests/dictionaries/60extra_leadership/makedict/before.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership/tiramisu/base.py b/tests/dictionaries/60extra_leadership/tiramisu/base.py
index 6ccc5c967..69d42efd6 100644
--- a/tests/dictionaries/60extra_leadership/tiramisu/base.py
+++ b/tests/dictionaries/60extra_leadership/tiramisu/base.py
@@ -21,25 +21,25 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_19 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="leadership", doc="description", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_20 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_13])
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_14])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_16])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18, optiondescription_19])
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_18])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_20, optiondescription_21])
diff --git a/tests/dictionaries/60extra_leadership/tiramisu/multi.py b/tests/dictionaries/60extra_leadership/tiramisu/multi.py
index 464ced586..827472701 100644
--- a/tests/dictionaries/60extra_leadership/tiramisu/multi.py
+++ b/tests/dictionaries/60extra_leadership/tiramisu/multi.py
@@ -21,51 +21,51 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="leadership", doc="description", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_35 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_39 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
-option_22 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname2", doc="mailname2", children=[option_22, option_21])
-optiondescription_20.impl_set_information('engine', "jinja")
-optiondescription_20.impl_set_information('source', "mailname2")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_20])
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
+option_23 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_24 = StrOption(name="source", doc="source", default="mailname2")
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_21 = OptionDescription(name="mailname2", doc="mailname2", children=[option_23, option_24, option_22])
+optiondescription_21.impl_set_information('engine', "jinja")
+optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_21])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_23 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_37 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_23])
-optiondescription_37.impl_set_information('type', "service")
-optiondescription_36 = OptionDescription(name="services", doc="services", children=[optiondescription_37], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35, optiondescription_36])
+option_25 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_41 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_25])
+optiondescription_41.impl_set_information('type', "service")
+optiondescription_40 = OptionDescription(name="services", doc="services", children=[optiondescription_41], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="1", doc="1", children=[optiondescription_38, optiondescription_39, optiondescription_40])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_8 = OptionDescription(name="general", doc="général", children=[option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_39 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+optiondescription_43 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
option_13 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_14 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_12 = Leadership(name="leadership", doc="description", children=[option_13, option_14], properties=frozenset({"normal"}))
optiondescription_11 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_12], properties=frozenset({"normal"}))
-optiondescription_40 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
-option_28 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_27 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_26 = OptionDescription(name="mailname", doc="mailname", children=[option_28, option_27])
-optiondescription_26.impl_set_information('source', "mailname")
-option_31 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="mailname2", doc="mailname2", children=[option_31, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "mailname2")
-optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_29])
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-option_32 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_32])
-optiondescription_42.impl_set_information('type', "service")
-optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
-optiondescription_38 = OptionDescription(name="2", doc="2", children=[optiondescription_39, optiondescription_40, optiondescription_41])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_38])
+optiondescription_44 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
+option_30 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_31 = StrOption(name="source", doc="source", default="mailname")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="mailname", doc="mailname", children=[option_30, option_31, option_29])
+option_34 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_35 = StrOption(name="source", doc="source", default="mailname2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="mailname2", doc="mailname2", children=[option_34, option_35, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_27 = OptionDescription(name="files", doc="files", children=[optiondescription_28, optiondescription_32])
+option_26 = BoolOption(name="activate", doc="activate", default=True)
+option_36 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_46 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_27, option_26, option_36])
+optiondescription_46.impl_set_information('type', "service")
+optiondescription_45 = OptionDescription(name="services", doc="services", children=[optiondescription_46], properties=frozenset({"hidden"}))
+optiondescription_42 = OptionDescription(name="2", doc="2", children=[optiondescription_43, optiondescription_44, optiondescription_45])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_37, optiondescription_42])
diff --git a/tests/dictionaries/60extra_leadership_name/makedict/after.json b/tests/dictionaries/60extra_leadership_name/makedict/after.json
index 64cba9b44..bd4006b97 100644
--- a/tests/dictionaries/60extra_leadership_name/makedict/after.json
+++ b/tests/dictionaries/60extra_leadership_name/makedict/after.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_name/makedict/base.json b/tests/dictionaries/60extra_leadership_name/makedict/base.json
index ade308171..13e7ece30 100644
--- a/tests/dictionaries/60extra_leadership_name/makedict/base.json
+++ b/tests/dictionaries/60extra_leadership_name/makedict/base.json
@@ -8,8 +8,10 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/60extra_leadership_name/makedict/before.json b/tests/dictionaries/60extra_leadership_name/makedict/before.json
index 64cba9b44..bd4006b97 100644
--- a/tests/dictionaries/60extra_leadership_name/makedict/before.json
+++ b/tests/dictionaries/60extra_leadership_name/makedict/before.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_name/tiramisu/base.py b/tests/dictionaries/60extra_leadership_name/tiramisu/base.py
index 60e565950..75c2f1e25 100644
--- a/tests/dictionaries/60extra_leadership_name/tiramisu/base.py
+++ b/tests/dictionaries/60extra_leadership_name/tiramisu/base.py
@@ -21,25 +21,25 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_19 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="new_name", doc="new_name", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_20 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_13])
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_14])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_16])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18, optiondescription_19])
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_18])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_20, optiondescription_21])
diff --git a/tests/dictionaries/60extra_leadership_name/tiramisu/multi.py b/tests/dictionaries/60extra_leadership_name/tiramisu/multi.py
index 9861f9366..c17730135 100644
--- a/tests/dictionaries/60extra_leadership_name/tiramisu/multi.py
+++ b/tests/dictionaries/60extra_leadership_name/tiramisu/multi.py
@@ -21,51 +21,51 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="new_name", doc="new_name", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_35 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_39 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
-option_22 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname2", doc="mailname2", children=[option_22, option_21])
-optiondescription_20.impl_set_information('engine', "jinja")
-optiondescription_20.impl_set_information('source', "mailname2")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_20])
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
+option_23 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_24 = StrOption(name="source", doc="source", default="mailname2")
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_21 = OptionDescription(name="mailname2", doc="mailname2", children=[option_23, option_24, option_22])
+optiondescription_21.impl_set_information('engine', "jinja")
+optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_21])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_23 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_37 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_23])
-optiondescription_37.impl_set_information('type', "service")
-optiondescription_36 = OptionDescription(name="services", doc="services", children=[optiondescription_37], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35, optiondescription_36])
+option_25 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_41 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_25])
+optiondescription_41.impl_set_information('type', "service")
+optiondescription_40 = OptionDescription(name="services", doc="services", children=[optiondescription_41], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="1", doc="1", children=[optiondescription_38, optiondescription_39, optiondescription_40])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_8 = OptionDescription(name="general", doc="général", children=[option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_39 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+optiondescription_43 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
option_13 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_14 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_12 = Leadership(name="new_name", doc="new_name", children=[option_13, option_14], properties=frozenset({"normal"}))
optiondescription_11 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_12], properties=frozenset({"normal"}))
-optiondescription_40 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
-option_28 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_27 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_26 = OptionDescription(name="mailname", doc="mailname", children=[option_28, option_27])
-optiondescription_26.impl_set_information('source', "mailname")
-option_31 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="mailname2", doc="mailname2", children=[option_31, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "mailname2")
-optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_29])
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-option_32 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_32])
-optiondescription_42.impl_set_information('type', "service")
-optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
-optiondescription_38 = OptionDescription(name="2", doc="2", children=[optiondescription_39, optiondescription_40, optiondescription_41])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_38])
+optiondescription_44 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
+option_30 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_31 = StrOption(name="source", doc="source", default="mailname")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="mailname", doc="mailname", children=[option_30, option_31, option_29])
+option_34 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_35 = StrOption(name="source", doc="source", default="mailname2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="mailname2", doc="mailname2", children=[option_34, option_35, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_27 = OptionDescription(name="files", doc="files", children=[optiondescription_28, optiondescription_32])
+option_26 = BoolOption(name="activate", doc="activate", default=True)
+option_36 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_46 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_27, option_26, option_36])
+optiondescription_46.impl_set_information('type', "service")
+optiondescription_45 = OptionDescription(name="services", doc="services", children=[optiondescription_46], properties=frozenset({"hidden"}))
+optiondescription_42 = OptionDescription(name="2", doc="2", children=[optiondescription_43, optiondescription_44, optiondescription_45])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_37, optiondescription_42])
diff --git a/tests/dictionaries/60extra_leadership_name_item/makedict/after.json b/tests/dictionaries/60extra_leadership_name_item/makedict/after.json
index 64cba9b44..bd4006b97 100644
--- a/tests/dictionaries/60extra_leadership_name_item/makedict/after.json
+++ b/tests/dictionaries/60extra_leadership_name_item/makedict/after.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_name_item/makedict/base.json b/tests/dictionaries/60extra_leadership_name_item/makedict/base.json
index ade308171..13e7ece30 100644
--- a/tests/dictionaries/60extra_leadership_name_item/makedict/base.json
+++ b/tests/dictionaries/60extra_leadership_name_item/makedict/base.json
@@ -8,8 +8,10 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/60extra_leadership_name_item/makedict/before.json b/tests/dictionaries/60extra_leadership_name_item/makedict/before.json
index 64cba9b44..bd4006b97 100644
--- a/tests/dictionaries/60extra_leadership_name_item/makedict/before.json
+++ b/tests/dictionaries/60extra_leadership_name_item/makedict/before.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_name_item/tiramisu/base.py b/tests/dictionaries/60extra_leadership_name_item/tiramisu/base.py
index 60e565950..75c2f1e25 100644
--- a/tests/dictionaries/60extra_leadership_name_item/tiramisu/base.py
+++ b/tests/dictionaries/60extra_leadership_name_item/tiramisu/base.py
@@ -21,25 +21,25 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_19 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="new_name", doc="new_name", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_20 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_13])
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_14])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_16])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18, optiondescription_19])
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_18])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_20, optiondescription_21])
diff --git a/tests/dictionaries/60extra_leadership_name_item/tiramisu/multi.py b/tests/dictionaries/60extra_leadership_name_item/tiramisu/multi.py
index 9861f9366..c17730135 100644
--- a/tests/dictionaries/60extra_leadership_name_item/tiramisu/multi.py
+++ b/tests/dictionaries/60extra_leadership_name_item/tiramisu/multi.py
@@ -21,51 +21,51 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="new_name", doc="new_name", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_35 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_39 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
-option_22 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname2", doc="mailname2", children=[option_22, option_21])
-optiondescription_20.impl_set_information('engine', "jinja")
-optiondescription_20.impl_set_information('source', "mailname2")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_20])
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
+option_23 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_24 = StrOption(name="source", doc="source", default="mailname2")
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_21 = OptionDescription(name="mailname2", doc="mailname2", children=[option_23, option_24, option_22])
+optiondescription_21.impl_set_information('engine', "jinja")
+optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_21])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_23 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_37 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_23])
-optiondescription_37.impl_set_information('type', "service")
-optiondescription_36 = OptionDescription(name="services", doc="services", children=[optiondescription_37], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35, optiondescription_36])
+option_25 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_41 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_25])
+optiondescription_41.impl_set_information('type', "service")
+optiondescription_40 = OptionDescription(name="services", doc="services", children=[optiondescription_41], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="1", doc="1", children=[optiondescription_38, optiondescription_39, optiondescription_40])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_8 = OptionDescription(name="general", doc="général", children=[option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_39 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+optiondescription_43 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
option_13 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_14 = StrOption(name="mode", doc="mode", multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_12 = Leadership(name="new_name", doc="new_name", children=[option_13, option_14], properties=frozenset({"normal"}))
optiondescription_11 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_12], properties=frozenset({"normal"}))
-optiondescription_40 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
-option_28 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_27 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_26 = OptionDescription(name="mailname", doc="mailname", children=[option_28, option_27])
-optiondescription_26.impl_set_information('source', "mailname")
-option_31 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="mailname2", doc="mailname2", children=[option_31, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "mailname2")
-optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_29])
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-option_32 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_32])
-optiondescription_42.impl_set_information('type', "service")
-optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
-optiondescription_38 = OptionDescription(name="2", doc="2", children=[optiondescription_39, optiondescription_40, optiondescription_41])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_38])
+optiondescription_44 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
+option_30 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_31 = StrOption(name="source", doc="source", default="mailname")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="mailname", doc="mailname", children=[option_30, option_31, option_29])
+option_34 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_35 = StrOption(name="source", doc="source", default="mailname2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="mailname2", doc="mailname2", children=[option_34, option_35, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_27 = OptionDescription(name="files", doc="files", children=[optiondescription_28, optiondescription_32])
+option_26 = BoolOption(name="activate", doc="activate", default=True)
+option_36 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_46 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_27, option_26, option_36])
+optiondescription_46.impl_set_information('type', "service")
+optiondescription_45 = OptionDescription(name="services", doc="services", children=[optiondescription_46], properties=frozenset({"hidden"}))
+optiondescription_42 = OptionDescription(name="2", doc="2", children=[optiondescription_43, optiondescription_44, optiondescription_45])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_37, optiondescription_42])
diff --git a/tests/dictionaries/60extra_leadership_valid_enum/makedict/after.json b/tests/dictionaries/60extra_leadership_valid_enum/makedict/after.json
index 62f8033f2..dbe324b76 100644
--- a/tests/dictionaries/60extra_leadership_valid_enum/makedict/after.json
+++ b/tests/dictionaries/60extra_leadership_valid_enum/makedict/after.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_valid_enum/makedict/base.json b/tests/dictionaries/60extra_leadership_valid_enum/makedict/base.json
index e488c6397..925519eb7 100644
--- a/tests/dictionaries/60extra_leadership_valid_enum/makedict/base.json
+++ b/tests/dictionaries/60extra_leadership_valid_enum/makedict/base.json
@@ -8,8 +8,10 @@
}
],
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/60extra_leadership_valid_enum/makedict/before.json b/tests/dictionaries/60extra_leadership_valid_enum/makedict/before.json
index 62f8033f2..dbe324b76 100644
--- a/tests/dictionaries/60extra_leadership_valid_enum/makedict/before.json
+++ b/tests/dictionaries/60extra_leadership_valid_enum/makedict/before.json
@@ -25,6 +25,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -33,6 +37,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/base.py b/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/base.py
index 8c9718f6b..9b80922dd 100644
--- a/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/base.py
+++ b/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/base.py
@@ -21,25 +21,25 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_19 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="description", doc="description", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_20 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_13 = StrOption(name="source", doc="source", default="mailname")
option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_13])
+optiondescription_10 = OptionDescription(name="mailname", doc="mailname", children=[option_12, option_13, option_11])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_9 = OptionDescription(name="files", doc="files", children=[optiondescription_10, optiondescription_14])
option_8 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_16])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18, optiondescription_19])
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_9, option_8, option_18])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_20, optiondescription_21])
diff --git a/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/multi.py b/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/multi.py
index f5851a981..6fd9b7df7 100644
--- a/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/multi.py
+++ b/tests/dictionaries/60extra_leadership_valid_enum/tiramisu/multi.py
@@ -21,51 +21,51 @@ except:
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_3 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2, option_3], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_6 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_7 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_5 = Leadership(name="description", doc="description", children=[option_6, option_7], properties=frozenset({"normal"}))
optiondescription_4 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_5], properties=frozenset({"normal"}))
-optiondescription_35 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
+optiondescription_39 = OptionDescription(name="extra", doc="extra", children=[optiondescription_4])
option_19 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_20 = StrOption(name="source", doc="source", default="mailname")
option_18 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_18])
-optiondescription_17.impl_set_information('source', "mailname")
-option_22 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname2", doc="mailname2", children=[option_22, option_21])
-optiondescription_20.impl_set_information('engine', "jinja")
-optiondescription_20.impl_set_information('source', "mailname2")
-optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_20])
+optiondescription_17 = OptionDescription(name="mailname", doc="mailname", children=[option_19, option_20, option_18])
+option_23 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_24 = StrOption(name="source", doc="source", default="mailname2")
+option_22 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_21 = OptionDescription(name="mailname2", doc="mailname2", children=[option_23, option_24, option_22])
+optiondescription_21.impl_set_information('engine', "jinja")
+optiondescription_16 = OptionDescription(name="files", doc="files", children=[optiondescription_17, optiondescription_21])
option_15 = BoolOption(name="activate", doc="activate", default=True)
-option_23 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_37 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_23])
-optiondescription_37.impl_set_information('type', "service")
-optiondescription_36 = OptionDescription(name="services", doc="services", children=[optiondescription_37], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35, optiondescription_36])
+option_25 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_41 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_16, option_15, option_25])
+optiondescription_41.impl_set_information('type', "service")
+optiondescription_40 = OptionDescription(name="services", doc="services", children=[optiondescription_41], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="1", doc="1", children=[optiondescription_38, optiondescription_39, optiondescription_40])
option_9 = StrOption(name="mode_conteneur_actif", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
option_10 = StrOption(name="activer_ejabberd", doc="No change", default="non", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_8 = OptionDescription(name="general", doc="général", children=[option_9, option_10], properties=frozenset({"normal"}))
-optiondescription_39 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
+optiondescription_43 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_8])
option_13 = StrOption(name="description", doc="description", multi=True, default=['test'], properties=frozenset({"mandatory"}))
option_14 = ChoiceOption(name="mode", doc="mode", values=('pre', 'post'), multi=True, default_multi="pre", properties=frozenset({"mandatory", "normal"}))
optiondescription_12 = Leadership(name="description", doc="description", children=[option_13, option_14], properties=frozenset({"normal"}))
optiondescription_11 = OptionDescription(name="ejabberd", doc="ejabberd", children=[optiondescription_12], properties=frozenset({"normal"}))
-optiondescription_40 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
-option_28 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_27 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_26 = OptionDescription(name="mailname", doc="mailname", children=[option_28, option_27])
-optiondescription_26.impl_set_information('source', "mailname")
-option_31 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_30 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_29 = OptionDescription(name="mailname2", doc="mailname2", children=[option_31, option_30])
-optiondescription_29.impl_set_information('engine', "jinja")
-optiondescription_29.impl_set_information('source', "mailname2")
-optiondescription_25 = OptionDescription(name="files", doc="files", children=[optiondescription_26, optiondescription_29])
-option_24 = BoolOption(name="activate", doc="activate", default=True)
-option_32 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_25, option_24, option_32])
-optiondescription_42.impl_set_information('type', "service")
-optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
-optiondescription_38 = OptionDescription(name="2", doc="2", children=[optiondescription_39, optiondescription_40, optiondescription_41])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_38])
+optiondescription_44 = OptionDescription(name="extra", doc="extra", children=[optiondescription_11])
+option_30 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_31 = StrOption(name="source", doc="source", default="mailname")
+option_29 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_28 = OptionDescription(name="mailname", doc="mailname", children=[option_30, option_31, option_29])
+option_34 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_35 = StrOption(name="source", doc="source", default="mailname2")
+option_33 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_32 = OptionDescription(name="mailname2", doc="mailname2", children=[option_34, option_35, option_33])
+optiondescription_32.impl_set_information('engine', "jinja")
+optiondescription_27 = OptionDescription(name="files", doc="files", children=[optiondescription_28, optiondescription_32])
+option_26 = BoolOption(name="activate", doc="activate", default=True)
+option_36 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_46 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_27, option_26, option_36])
+optiondescription_46.impl_set_information('type', "service")
+optiondescription_45 = OptionDescription(name="services", doc="services", children=[optiondescription_46], properties=frozenset({"hidden"}))
+optiondescription_42 = OptionDescription(name="2", doc="2", children=[optiondescription_43, optiondescription_44, optiondescription_45])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_37, optiondescription_42])
diff --git a/tests/dictionaries/70container_files/makedict/after.json b/tests/dictionaries/70container_files/makedict/after.json
index 9d4efda5b..7bda84dda 100644
--- a/tests/dictionaries/70container_files/makedict/after.json
+++ b/tests/dictionaries/70container_files/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/rougail.conf"
},
+ "services.test_service.files.rougail_conf.source": {
+ "owner": "default",
+ "value": "rougail.conf"
+ },
"services.test_service.files.rougail_conf.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files/makedict/base.json b/tests/dictionaries/70container_files/makedict/base.json
index 81a32996f..0ac00793a 100644
--- a/tests/dictionaries/70container_files/makedict/base.json
+++ b/tests/dictionaries/70container_files/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "oui",
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.rougail_conf.name": "/rougail.conf",
+ "services.test_service.files.rougail_conf.source": "rougail.conf",
"services.test_service.files.rougail_conf.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70container_files/makedict/before.json b/tests/dictionaries/70container_files/makedict/before.json
index 9d4efda5b..7bda84dda 100644
--- a/tests/dictionaries/70container_files/makedict/before.json
+++ b/tests/dictionaries/70container_files/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/rougail.conf"
},
+ "services.test_service.files.rougail_conf.source": {
+ "owner": "default",
+ "value": "rougail.conf"
+ },
"services.test_service.files.rougail_conf.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files/tiramisu/base.py b/tests/dictionaries/70container_files/tiramisu/base.py
index 15e94da03..83b0f4285 100644
--- a/tests/dictionaries/70container_files/tiramisu/base.py
+++ b/tests/dictionaries/70container_files/tiramisu/base.py
@@ -20,19 +20,19 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_8 = StrOption(name="source", doc="source", default="mailname")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "mailname")
-option_10 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_10, option_9])
-optiondescription_8.impl_set_information('source', "rougail.conf")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_12 = StrOption(name="source", doc="source", default="rougail.conf")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_11, option_12, option_10])
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/70container_files/tiramisu/multi.py b/tests/dictionaries/70container_files/tiramisu/multi.py
index 96a5e9cfe..fb141d4ba 100644
--- a/tests/dictionaries/70container_files/tiramisu/multi.py
+++ b/tests/dictionaries/70container_files/tiramisu/multi.py
@@ -20,38 +20,38 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_10 = StrOption(name="source", doc="source", default="mailname")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "mailname")
-option_12 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "rougail.conf")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_14 = StrOption(name="source", doc="source", default="rougail.conf")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_13, option_14, option_12])
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="mailname", doc="mailname", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "mailname")
-option_21 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "rougail.conf")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_21 = StrOption(name="source", doc="source", default="mailname")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="mailname", doc="mailname", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_25 = StrOption(name="source", doc="source", default="rougail.conf")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_24, option_25, option_23])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/70container_files_symlink_multi/makedict/after.json b/tests/dictionaries/70container_files_symlink_multi/makedict/after.json
index 0a605e39a..83931d921 100644
--- a/tests/dictionaries/70container_files_symlink_multi/makedict/after.json
+++ b/tests/dictionaries/70container_files_symlink_multi/makedict/after.json
@@ -20,6 +20,10 @@
"/etc/mailname2"
]
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -31,6 +35,10 @@
"/etc/mailname4"
]
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files_symlink_multi/makedict/base.json b/tests/dictionaries/70container_files_symlink_multi/makedict/base.json
index 164d55886..5bea627c6 100644
--- a/tests/dictionaries/70container_files_symlink_multi/makedict/base.json
+++ b/tests/dictionaries/70container_files_symlink_multi/makedict/base.json
@@ -11,11 +11,13 @@
"/etc/mailname",
"/etc/mailname2"
],
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": [
"/etc/mailname3",
"/etc/mailname4"
],
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70container_files_symlink_multi/makedict/before.json b/tests/dictionaries/70container_files_symlink_multi/makedict/before.json
index 0a605e39a..83931d921 100644
--- a/tests/dictionaries/70container_files_symlink_multi/makedict/before.json
+++ b/tests/dictionaries/70container_files_symlink_multi/makedict/before.json
@@ -20,6 +20,10 @@
"/etc/mailname2"
]
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -31,6 +35,10 @@
"/etc/mailname4"
]
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files_symlink_multi/tiramisu/base.py b/tests/dictionaries/70container_files_symlink_multi/tiramisu/base.py
index b87feeab7..231d12494 100644
--- a/tests/dictionaries/70container_files_symlink_multi/tiramisu/base.py
+++ b/tests/dictionaries/70container_files_symlink_multi/tiramisu/base.py
@@ -20,20 +20,20 @@ except:
from tiramisu import *
option_1 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_7 = SymLinkOption(name="name", opt=option_1)
+option_8 = StrOption(name="source", doc="source", default="mailname")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "mailname")
-option_10 = SymLinkOption(name="name", opt=option_2)
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="mailname2", doc="mailname2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('engine', "jinja")
-optiondescription_8.impl_set_information('source', "mailname2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_6])
+option_11 = SymLinkOption(name="name", opt=option_2)
+option_12 = StrOption(name="source", doc="source", default="mailname2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="mailname2", doc="mailname2", children=[option_11, option_12, option_10])
+optiondescription_9.impl_set_information('engine', "jinja")
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/70container_files_symlink_multi/tiramisu/multi.py b/tests/dictionaries/70container_files_symlink_multi/tiramisu/multi.py
index 7a401ff4b..248d9ea02 100644
--- a/tests/dictionaries/70container_files_symlink_multi/tiramisu/multi.py
+++ b/tests/dictionaries/70container_files_symlink_multi/tiramisu/multi.py
@@ -20,40 +20,40 @@ except:
from tiramisu import *
option_1 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_9 = SymLinkOption(name="name", opt=option_1)
+option_10 = StrOption(name="source", doc="source", default="mailname")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "mailname")
-option_12 = SymLinkOption(name="name", opt=option_2)
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname2", doc="mailname2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "mailname2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_8])
+option_13 = SymLinkOption(name="name", opt=option_2)
+option_14 = StrOption(name="source", doc="source", default="mailname2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="mailname2", doc="mailname2", children=[option_13, option_14, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_3 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
-option_4 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
-option_18 = SymLinkOption(name="name", opt=option_3)
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="mailname", doc="mailname", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "mailname")
-option_21 = SymLinkOption(name="name", opt=option_4)
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="mailname2", doc="mailname2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('engine', "jinja")
-optiondescription_19.impl_set_information('source', "mailname2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_3 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
+option_4 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
+option_20 = SymLinkOption(name="name", opt=option_3)
+option_21 = StrOption(name="source", doc="source", default="mailname")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="mailname", doc="mailname", children=[option_20, option_21, option_19])
+option_24 = SymLinkOption(name="name", opt=option_4)
+option_25 = StrOption(name="source", doc="source", default="mailname2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="mailname2", doc="mailname2", children=[option_24, option_25, option_23])
+optiondescription_22.impl_set_information('engine', "jinja")
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/after.json b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/after.json
index ad2997ca5..8cc22a152 100644
--- a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/after.json
+++ b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/after.json
@@ -27,6 +27,10 @@
"/etc/mailname2"
]
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.variable": {
"owner": "default",
"value": [
@@ -45,6 +49,10 @@
"/etc/mailname4"
]
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.variable": {
"owner": "default",
"value": [
diff --git a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/base.json b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/base.json
index a3fcba140..2f4d119d9 100644
--- a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/base.json
+++ b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/base.json
@@ -15,6 +15,7 @@
"/etc/mailname",
"/etc/mailname2"
],
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.variable": [
"mailname",
"mailname2"
@@ -24,6 +25,7 @@
"/etc/mailname3",
"/etc/mailname4"
],
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.variable": [
"mailname",
"mailname2"
diff --git a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/before.json b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/before.json
index ad2997ca5..8cc22a152 100644
--- a/tests/dictionaries/70container_files_symlink_multi_variable/makedict/before.json
+++ b/tests/dictionaries/70container_files_symlink_multi_variable/makedict/before.json
@@ -27,6 +27,10 @@
"/etc/mailname2"
]
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.variable": {
"owner": "default",
"value": [
@@ -45,6 +49,10 @@
"/etc/mailname4"
]
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.variable": {
"owner": "default",
"value": [
diff --git a/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/base.py b/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/base.py
index 7bdbf9e98..f40aa1c6c 100644
--- a/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/base.py
+++ b/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/base.py
@@ -21,22 +21,22 @@ except:
option_1 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
option_3 = StrOption(name="var", doc="var", multi=True, default=['mailname', 'mailname2'], default_multi="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2, option_3])
+optiondescription_17 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2, option_3])
option_8 = SymLinkOption(name="name", opt=option_1)
-option_9 = SymLinkOption(name="variable", opt=option_3)
+option_9 = StrOption(name="source", doc="source", default="mailname")
+option_10 = SymLinkOption(name="variable", opt=option_3)
option_7 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_6 = OptionDescription(name="mailname", doc="mailname", children=[option_8, option_9, option_7])
-optiondescription_6.impl_set_information('source', "mailname")
-option_12 = SymLinkOption(name="name", opt=option_2)
-option_13 = SymLinkOption(name="variable", opt=option_3)
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname2", doc="mailname2", children=[option_12, option_13, option_11])
-optiondescription_10.impl_set_information('engine', "jinja")
-optiondescription_10.impl_set_information('source', "mailname2")
-optiondescription_5 = OptionDescription(name="files", doc="files", children=[optiondescription_6, optiondescription_10])
+optiondescription_6 = OptionDescription(name="mailname", doc="mailname", children=[option_8, option_9, option_10, option_7])
+option_13 = SymLinkOption(name="name", opt=option_2)
+option_14 = StrOption(name="source", doc="source", default="mailname2")
+option_15 = SymLinkOption(name="variable", opt=option_3)
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="mailname2", doc="mailname2", children=[option_13, option_14, option_15, option_12])
+optiondescription_11.impl_set_information('engine', "jinja")
+optiondescription_5 = OptionDescription(name="files", doc="files", children=[optiondescription_6, optiondescription_11])
option_4 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_14])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
+option_16 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_19 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_5, option_4, option_16])
+optiondescription_19.impl_set_information('type', "service")
+optiondescription_18 = OptionDescription(name="services", doc="services", children=[optiondescription_19], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_18])
diff --git a/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/multi.py b/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/multi.py
index 6c1ce23c8..3a95f548b 100644
--- a/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/multi.py
+++ b/tests/dictionaries/70container_files_symlink_multi_variable/tiramisu/multi.py
@@ -21,45 +21,45 @@ except:
option_1 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
option_3 = StrOption(name="var", doc="var", multi=True, default=['mailname', 'mailname2'], default_multi="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2, option_3])
+optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2, option_3])
option_11 = SymLinkOption(name="name", opt=option_1)
-option_12 = SymLinkOption(name="variable", opt=option_3)
+option_12 = StrOption(name="source", doc="source", default="mailname")
+option_13 = SymLinkOption(name="variable", opt=option_3)
option_10 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_9 = OptionDescription(name="mailname", doc="mailname", children=[option_11, option_12, option_10])
-optiondescription_9.impl_set_information('source', "mailname")
-option_15 = SymLinkOption(name="name", opt=option_2)
-option_16 = SymLinkOption(name="variable", opt=option_3)
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname2", doc="mailname2", children=[option_15, option_16, option_14])
-optiondescription_13.impl_set_information('engine', "jinja")
-optiondescription_13.impl_set_information('source', "mailname2")
-optiondescription_8 = OptionDescription(name="files", doc="files", children=[optiondescription_9, optiondescription_13])
+optiondescription_9 = OptionDescription(name="mailname", doc="mailname", children=[option_11, option_12, option_13, option_10])
+option_16 = SymLinkOption(name="name", opt=option_2)
+option_17 = StrOption(name="source", doc="source", default="mailname2")
+option_18 = SymLinkOption(name="variable", opt=option_3)
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname2", doc="mailname2", children=[option_16, option_17, option_18, option_15])
+optiondescription_14.impl_set_information('engine', "jinja")
+optiondescription_8 = OptionDescription(name="files", doc="files", children=[optiondescription_9, optiondescription_14])
option_7 = BoolOption(name="activate", doc="activate", default=True)
-option_17 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_17])
-optiondescription_32.impl_set_information('type', "service")
-optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
-optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_8, option_7, option_19])
+optiondescription_36.impl_set_information('type', "service")
+optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
+optiondescription_33 = OptionDescription(name="1", doc="1", children=[optiondescription_34, optiondescription_35])
option_4 = FilenameOption(name="file_name", doc="file_name", multi=True, default=['/etc/mailname', '/etc/mailname2'], default_multi="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_5 = FilenameOption(name="file_name2", doc="file_name2", multi=True, default=['/etc/mailname3', '/etc/mailname4'], default_multi="/etc/mailname3", properties=frozenset({"mandatory", "normal"}))
option_6 = StrOption(name="var", doc="var", multi=True, default=['mailname', 'mailname2'], default_multi="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[option_4, option_5, option_6])
-option_22 = SymLinkOption(name="name", opt=option_4)
-option_23 = SymLinkOption(name="variable", opt=option_6)
-option_21 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_20 = OptionDescription(name="mailname", doc="mailname", children=[option_22, option_23, option_21])
-optiondescription_20.impl_set_information('source', "mailname")
-option_26 = SymLinkOption(name="name", opt=option_5)
-option_27 = SymLinkOption(name="variable", opt=option_6)
-option_25 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_24 = OptionDescription(name="mailname2", doc="mailname2", children=[option_26, option_27, option_25])
-optiondescription_24.impl_set_information('engine', "jinja")
-optiondescription_24.impl_set_information('source', "mailname2")
-optiondescription_19 = OptionDescription(name="files", doc="files", children=[optiondescription_20, optiondescription_24])
-option_18 = BoolOption(name="activate", doc="activate", default=True)
-option_28 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_19, option_18, option_28])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
+optiondescription_38 = OptionDescription(name="rougail", doc="Rougail", children=[option_4, option_5, option_6])
+option_24 = SymLinkOption(name="name", opt=option_4)
+option_25 = StrOption(name="source", doc="source", default="mailname")
+option_26 = SymLinkOption(name="variable", opt=option_6)
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="mailname", doc="mailname", children=[option_24, option_25, option_26, option_23])
+option_29 = SymLinkOption(name="name", opt=option_5)
+option_30 = StrOption(name="source", doc="source", default="mailname2")
+option_31 = SymLinkOption(name="variable", opt=option_6)
+option_28 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_27 = OptionDescription(name="mailname2", doc="mailname2", children=[option_29, option_30, option_31, option_28])
+optiondescription_27.impl_set_information('engine', "jinja")
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_27])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_32 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_40 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_32])
+optiondescription_40.impl_set_information('type', "service")
+optiondescription_39 = OptionDescription(name="services", doc="services", children=[optiondescription_40], properties=frozenset({"hidden"}))
+optiondescription_37 = OptionDescription(name="2", doc="2", children=[optiondescription_38, optiondescription_39])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_33, optiondescription_37])
diff --git a/tests/dictionaries/70container_files_symlink_variable/makedict/after.json b/tests/dictionaries/70container_files_symlink_variable/makedict/after.json
index f8d4af357..b747831d7 100644
--- a/tests/dictionaries/70container_files_symlink_variable/makedict/after.json
+++ b/tests/dictionaries/70container_files_symlink_variable/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.variable": {
"owner": "default",
"value": "mailname"
diff --git a/tests/dictionaries/70container_files_symlink_variable/makedict/base.json b/tests/dictionaries/70container_files_symlink_variable/makedict/base.json
index 60d31a0e2..0a2aa4556 100644
--- a/tests/dictionaries/70container_files_symlink_variable/makedict/base.json
+++ b/tests/dictionaries/70container_files_symlink_variable/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.file_name": "/etc/mailname",
"rougail.var": "mailname",
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.variable": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.activate": true,
diff --git a/tests/dictionaries/70container_files_symlink_variable/makedict/before.json b/tests/dictionaries/70container_files_symlink_variable/makedict/before.json
index f8d4af357..b747831d7 100644
--- a/tests/dictionaries/70container_files_symlink_variable/makedict/before.json
+++ b/tests/dictionaries/70container_files_symlink_variable/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.variable": {
"owner": "default",
"value": "mailname"
diff --git a/tests/dictionaries/70container_files_symlink_variable/tiramisu/base.py b/tests/dictionaries/70container_files_symlink_variable/tiramisu/base.py
index 4f4e45fe6..d926c0140 100644
--- a/tests/dictionaries/70container_files_symlink_variable/tiramisu/base.py
+++ b/tests/dictionaries/70container_files_symlink_variable/tiramisu/base.py
@@ -20,16 +20,16 @@ except:
from tiramisu import *
option_1 = FilenameOption(name="file_name", doc="file_name", default="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_11 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_7 = SymLinkOption(name="name", opt=option_1)
-option_8 = SymLinkOption(name="variable", opt=option_2)
+option_8 = StrOption(name="source", doc="source", default="mailname")
+option_9 = SymLinkOption(name="variable", opt=option_2)
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_6])
-optiondescription_5.impl_set_information('source', "mailname")
+optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_9, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_9 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
-optiondescription_12.impl_set_information('type', "service")
-optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
+option_10 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_13 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_10])
+optiondescription_13.impl_set_information('type', "service")
+optiondescription_12 = OptionDescription(name="services", doc="services", children=[optiondescription_13], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_11, optiondescription_12])
diff --git a/tests/dictionaries/70container_files_symlink_variable/tiramisu/multi.py b/tests/dictionaries/70container_files_symlink_variable/tiramisu/multi.py
index 49a504aca..2049b3060 100644
--- a/tests/dictionaries/70container_files_symlink_variable/tiramisu/multi.py
+++ b/tests/dictionaries/70container_files_symlink_variable/tiramisu/multi.py
@@ -20,32 +20,32 @@ except:
from tiramisu import *
option_1 = FilenameOption(name="file_name", doc="file_name", default="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_2 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_9 = SymLinkOption(name="name", opt=option_1)
-option_10 = SymLinkOption(name="variable", opt=option_2)
+option_10 = StrOption(name="source", doc="source", default="mailname")
+option_11 = SymLinkOption(name="variable", opt=option_2)
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_8])
-optiondescription_7.impl_set_information('source', "mailname")
+optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_11, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
-optiondescription_22.impl_set_information('type', "service")
-optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
-optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
+option_12 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_12])
+optiondescription_24.impl_set_information('type', "service")
+optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
+optiondescription_21 = OptionDescription(name="1", doc="1", children=[optiondescription_22, optiondescription_23])
option_3 = FilenameOption(name="file_name", doc="file_name", default="/etc/mailname", properties=frozenset({"mandatory", "normal"}))
option_4 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
-option_16 = SymLinkOption(name="name", opt=option_3)
-option_17 = SymLinkOption(name="variable", opt=option_4)
-option_15 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_14 = OptionDescription(name="mailname", doc="mailname", children=[option_16, option_17, option_15])
-optiondescription_14.impl_set_information('source', "mailname")
-optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
-option_12 = BoolOption(name="activate", doc="activate", default=True)
-option_18 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
+optiondescription_26 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
+option_17 = SymLinkOption(name="name", opt=option_3)
+option_18 = StrOption(name="source", doc="source", default="mailname")
+option_19 = SymLinkOption(name="variable", opt=option_4)
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_15 = OptionDescription(name="mailname", doc="mailname", children=[option_17, option_18, option_19, option_16])
+optiondescription_14 = OptionDescription(name="files", doc="files", children=[optiondescription_15])
+option_13 = BoolOption(name="activate", doc="activate", default=True)
+option_20 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_28 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_14, option_13, option_20])
+optiondescription_28.impl_set_information('type', "service")
+optiondescription_27 = OptionDescription(name="services", doc="services", children=[optiondescription_28], properties=frozenset({"hidden"}))
+optiondescription_25 = OptionDescription(name="2", doc="2", children=[optiondescription_26, optiondescription_27])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_21, optiondescription_25])
diff --git a/tests/dictionaries/70container_files_twice/makedict/after.json b/tests/dictionaries/70container_files_twice/makedict/after.json
index d399ac9c2..70edb7ece 100644
--- a/tests/dictionaries/70container_files_twice/makedict/after.json
+++ b/tests/dictionaries/70container_files_twice/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/eole/mailname"
},
+ "services.test_service.files.mailname_1.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname_1.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/rougail.conf"
},
+ "services.test_service.files.rougail_conf.source": {
+ "owner": "default",
+ "value": "rougail.conf"
+ },
"services.test_service.files.rougail_conf.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files_twice/makedict/base.json b/tests/dictionaries/70container_files_twice/makedict/base.json
index e5f5dc70b..b73e7c5d2 100644
--- a/tests/dictionaries/70container_files_twice/makedict/base.json
+++ b/tests/dictionaries/70container_files_twice/makedict/base.json
@@ -1,10 +1,13 @@
{
"rougail.general.mode_conteneur_actif": "oui",
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname_1.name": "/etc/eole/mailname",
+ "services.test_service.files.mailname_1.source": "mailname",
"services.test_service.files.mailname_1.activate": true,
"services.test_service.files.rougail_conf.name": "/rougail.conf",
+ "services.test_service.files.rougail_conf.source": "rougail.conf",
"services.test_service.files.rougail_conf.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70container_files_twice/makedict/before.json b/tests/dictionaries/70container_files_twice/makedict/before.json
index d399ac9c2..70edb7ece 100644
--- a/tests/dictionaries/70container_files_twice/makedict/before.json
+++ b/tests/dictionaries/70container_files_twice/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/eole/mailname"
},
+ "services.test_service.files.mailname_1.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname_1.activate": {
"owner": "default",
"value": true
@@ -23,6 +31,10 @@
"owner": "default",
"value": "/rougail.conf"
},
+ "services.test_service.files.rougail_conf.source": {
+ "owner": "default",
+ "value": "rougail.conf"
+ },
"services.test_service.files.rougail_conf.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_files_twice/tiramisu/base.py b/tests/dictionaries/70container_files_twice/tiramisu/base.py
index d8fb539ef..2e42ac8d4 100644
--- a/tests/dictionaries/70container_files_twice/tiramisu/base.py
+++ b/tests/dictionaries/70container_files_twice/tiramisu/base.py
@@ -20,23 +20,23 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_15 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_8 = StrOption(name="source", doc="source", default="mailname")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "mailname")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_10, option_9])
-optiondescription_8.impl_set_information('source', "mailname")
-option_13 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_12 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_11 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "rougail.conf")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8, optiondescription_11])
+optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
+option_12 = StrOption(name="source", doc="source", default="mailname")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_11, option_12, option_10])
+option_15 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_16 = StrOption(name="source", doc="source", default="rougail.conf")
+option_14 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_13 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_15, option_16, option_14])
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9, optiondescription_13])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_17 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_14])
-optiondescription_17.impl_set_information('type', "service")
-optiondescription_16 = OptionDescription(name="services", doc="services", children=[optiondescription_17], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_16])
+option_17 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_17])
+optiondescription_20.impl_set_information('type', "service")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_18, optiondescription_19])
diff --git a/tests/dictionaries/70container_files_twice/tiramisu/multi.py b/tests/dictionaries/70container_files_twice/tiramisu/multi.py
index cb21a1d30..05454fe52 100644
--- a/tests/dictionaries/70container_files_twice/tiramisu/multi.py
+++ b/tests/dictionaries/70container_files_twice/tiramisu/multi.py
@@ -20,46 +20,46 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_30 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_36 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_10 = StrOption(name="source", doc="source", default="mailname")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "mailname")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname")
-option_15 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "rougail.conf")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10, optiondescription_13])
+optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
+option_14 = StrOption(name="source", doc="source", default="mailname")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_13, option_14, option_12])
+option_17 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_18 = StrOption(name="source", doc="source", default="rougail.conf")
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_15 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_17, option_18, option_16])
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11, optiondescription_15])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_32 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_16])
-optiondescription_32.impl_set_information('type', "service")
-optiondescription_31 = OptionDescription(name="services", doc="services", children=[optiondescription_32], properties=frozenset({"hidden"}))
-optiondescription_29 = OptionDescription(name="1", doc="1", children=[optiondescription_30, optiondescription_31])
+option_19 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_38 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_19])
+optiondescription_38.impl_set_information('type', "service")
+optiondescription_37 = OptionDescription(name="services", doc="services", children=[optiondescription_38], properties=frozenset({"hidden"}))
+optiondescription_35 = OptionDescription(name="1", doc="1", children=[optiondescription_36, optiondescription_37])
option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_34 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_21 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="mailname", doc="mailname", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "mailname")
-option_24 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
+optiondescription_40 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_25 = StrOption(name="source", doc="source", default="mailname")
option_23 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_22 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_24, option_23])
-optiondescription_22.impl_set_information('source', "mailname")
-option_27 = FilenameOption(name="name", doc="name", default="/rougail.conf")
-option_26 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_25 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_27, option_26])
-optiondescription_25.impl_set_information('source', "rougail.conf")
-optiondescription_18 = OptionDescription(name="files", doc="files", children=[optiondescription_19, optiondescription_22, optiondescription_25])
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-option_28 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_36 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_18, option_17, option_28])
-optiondescription_36.impl_set_information('type', "service")
-optiondescription_35 = OptionDescription(name="services", doc="services", children=[optiondescription_36], properties=frozenset({"hidden"}))
-optiondescription_33 = OptionDescription(name="2", doc="2", children=[optiondescription_34, optiondescription_35])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_29, optiondescription_33])
+optiondescription_22 = OptionDescription(name="mailname", doc="mailname", children=[option_24, option_25, option_23])
+option_28 = FilenameOption(name="name", doc="name", default="/etc/eole/mailname")
+option_29 = StrOption(name="source", doc="source", default="mailname")
+option_27 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_26 = OptionDescription(name="mailname_1", doc="mailname_1", children=[option_28, option_29, option_27])
+option_32 = FilenameOption(name="name", doc="name", default="/rougail.conf")
+option_33 = StrOption(name="source", doc="source", default="rougail.conf")
+option_31 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_30 = OptionDescription(name="rougail_conf", doc="rougail.conf", children=[option_32, option_33, option_31])
+optiondescription_21 = OptionDescription(name="files", doc="files", children=[optiondescription_22, optiondescription_26, optiondescription_30])
+option_20 = BoolOption(name="activate", doc="activate", default=True)
+option_34 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_42 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_21, option_20, option_34])
+optiondescription_42.impl_set_information('type', "service")
+optiondescription_41 = OptionDescription(name="services", doc="services", children=[optiondescription_42], properties=frozenset({"hidden"}))
+optiondescription_39 = OptionDescription(name="2", doc="2", children=[optiondescription_40, optiondescription_41])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_35, optiondescription_39])
diff --git a/tests/dictionaries/70container_filesmulti/makedict/after.json b/tests/dictionaries/70container_filesmulti/makedict/after.json
index 3df6d9745..9dcd12d2d 100644
--- a/tests/dictionaries/70container_filesmulti/makedict/after.json
+++ b/tests/dictionaries/70container_filesmulti/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_filesmulti/makedict/base.json b/tests/dictionaries/70container_filesmulti/makedict/base.json
index fe6975744..a65849733 100644
--- a/tests/dictionaries/70container_filesmulti/makedict/base.json
+++ b/tests/dictionaries/70container_filesmulti/makedict/base.json
@@ -1,8 +1,10 @@
{
"rougail.general.mode_conteneur_actif": "oui",
"services.test_service.files.mailname.name": "/etc/mailname",
+ "services.test_service.files.mailname.source": "mailname",
"services.test_service.files.mailname.activate": true,
"services.test_service.files.mailname2.name": "/etc/mailname2",
+ "services.test_service.files.mailname2.source": "mailname2",
"services.test_service.files.mailname2.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70container_filesmulti/makedict/before.json b/tests/dictionaries/70container_filesmulti/makedict/before.json
index 3df6d9745..9dcd12d2d 100644
--- a/tests/dictionaries/70container_filesmulti/makedict/before.json
+++ b/tests/dictionaries/70container_filesmulti/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname.source": {
+ "owner": "default",
+ "value": "mailname"
+ },
"services.test_service.files.mailname.activate": {
"owner": "default",
"value": true
@@ -15,6 +19,10 @@
"owner": "default",
"value": "/etc/mailname2"
},
+ "services.test_service.files.mailname2.source": {
+ "owner": "default",
+ "value": "mailname2"
+ },
"services.test_service.files.mailname2.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_filesmulti/tiramisu/base.py b/tests/dictionaries/70container_filesmulti/tiramisu/base.py
index c25e75d50..03dcf7632 100644
--- a/tests/dictionaries/70container_filesmulti/tiramisu/base.py
+++ b/tests/dictionaries/70container_filesmulti/tiramisu/base.py
@@ -20,19 +20,19 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_12 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_14 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_8 = StrOption(name="source", doc="source", default="mailname")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "mailname")
-option_10 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_8 = OptionDescription(name="mailname2", doc="mailname2", children=[option_10, option_9])
-optiondescription_8.impl_set_information('source', "mailname2")
-optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_8])
+optiondescription_5 = OptionDescription(name="mailname", doc="mailname", children=[option_7, option_8, option_6])
+option_11 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_12 = StrOption(name="source", doc="source", default="mailname2")
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_9 = OptionDescription(name="mailname2", doc="mailname2", children=[option_11, option_12, option_10])
+optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5, optiondescription_9])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_11 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_14 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_11])
-optiondescription_14.impl_set_information('type', "service")
-optiondescription_13 = OptionDescription(name="services", doc="services", children=[optiondescription_14], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_12, optiondescription_13])
+option_13 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_16 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_13])
+optiondescription_16.impl_set_information('type', "service")
+optiondescription_15 = OptionDescription(name="services", doc="services", children=[optiondescription_16], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_14, optiondescription_15])
diff --git a/tests/dictionaries/70container_filesmulti/tiramisu/multi.py b/tests/dictionaries/70container_filesmulti/tiramisu/multi.py
index b248dd14a..93331e996 100644
--- a/tests/dictionaries/70container_filesmulti/tiramisu/multi.py
+++ b/tests/dictionaries/70container_filesmulti/tiramisu/multi.py
@@ -20,38 +20,38 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_10 = StrOption(name="source", doc="source", default="mailname")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "mailname")
-option_12 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_10 = OptionDescription(name="mailname2", doc="mailname2", children=[option_12, option_11])
-optiondescription_10.impl_set_information('source', "mailname2")
-optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_10])
+optiondescription_7 = OptionDescription(name="mailname", doc="mailname", children=[option_9, option_10, option_8])
+option_13 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_14 = StrOption(name="source", doc="source", default="mailname2")
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_11 = OptionDescription(name="mailname2", doc="mailname2", children=[option_13, option_14, option_12])
+optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7, optiondescription_11])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_13 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_13])
-optiondescription_26.impl_set_information('type', "service")
-optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
-optiondescription_23 = OptionDescription(name="1", doc="1", children=[optiondescription_24, optiondescription_25])
-option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
-optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_28 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_18 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_17 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_16 = OptionDescription(name="mailname", doc="mailname", children=[option_18, option_17])
-optiondescription_16.impl_set_information('source', "mailname")
-option_21 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
-option_20 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_19 = OptionDescription(name="mailname2", doc="mailname2", children=[option_21, option_20])
-optiondescription_19.impl_set_information('source', "mailname2")
-optiondescription_15 = OptionDescription(name="files", doc="files", children=[optiondescription_16, optiondescription_19])
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-option_22 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_15, option_14, option_22])
+option_15 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_30 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_15])
optiondescription_30.impl_set_information('type', "service")
optiondescription_29 = OptionDescription(name="services", doc="services", children=[optiondescription_30], properties=frozenset({"hidden"}))
-optiondescription_27 = OptionDescription(name="2", doc="2", children=[optiondescription_28, optiondescription_29])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_23, optiondescription_27])
+optiondescription_27 = OptionDescription(name="1", doc="1", children=[optiondescription_28, optiondescription_29])
+option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
+optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
+optiondescription_32 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_20 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_21 = StrOption(name="source", doc="source", default="mailname")
+option_19 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_18 = OptionDescription(name="mailname", doc="mailname", children=[option_20, option_21, option_19])
+option_24 = FilenameOption(name="name", doc="name", default="/etc/mailname2")
+option_25 = StrOption(name="source", doc="source", default="mailname2")
+option_23 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_22 = OptionDescription(name="mailname2", doc="mailname2", children=[option_24, option_25, option_23])
+optiondescription_17 = OptionDescription(name="files", doc="files", children=[optiondescription_18, optiondescription_22])
+option_16 = BoolOption(name="activate", doc="activate", default=True)
+option_26 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_34 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_17, option_16, option_26])
+optiondescription_34.impl_set_information('type', "service")
+optiondescription_33 = OptionDescription(name="services", doc="services", children=[optiondescription_34], properties=frozenset({"hidden"}))
+optiondescription_31 = OptionDescription(name="2", doc="2", children=[optiondescription_32, optiondescription_33])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_27, optiondescription_31])
diff --git a/tests/dictionaries/70container_filesredefine/makedict/after.json b/tests/dictionaries/70container_filesredefine/makedict/after.json
index 3666735a0..bf5c7668d 100644
--- a/tests/dictionaries/70container_filesredefine/makedict/after.json
+++ b/tests/dictionaries/70container_filesredefine/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname_new.source": {
+ "owner": "default",
+ "value": "mailname.new"
+ },
"services.test_service.files.mailname_new.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_filesredefine/makedict/base.json b/tests/dictionaries/70container_filesredefine/makedict/base.json
index cbda8cb4c..94d93f3ff 100644
--- a/tests/dictionaries/70container_filesredefine/makedict/base.json
+++ b/tests/dictionaries/70container_filesredefine/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.general.mode_conteneur_actif": "oui",
"services.test_service.files.mailname_new.name": "/etc/mailname",
+ "services.test_service.files.mailname_new.source": "mailname.new",
"services.test_service.files.mailname_new.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70container_filesredefine/makedict/before.json b/tests/dictionaries/70container_filesredefine/makedict/before.json
index 3666735a0..bf5c7668d 100644
--- a/tests/dictionaries/70container_filesredefine/makedict/before.json
+++ b/tests/dictionaries/70container_filesredefine/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/etc/mailname"
},
+ "services.test_service.files.mailname_new.source": {
+ "owner": "default",
+ "value": "mailname.new"
+ },
"services.test_service.files.mailname_new.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70container_filesredefine/tiramisu/base.py b/tests/dictionaries/70container_filesredefine/tiramisu/base.py
index caf7c8f2e..30af6f2a8 100644
--- a/tests/dictionaries/70container_filesredefine/tiramisu/base.py
+++ b/tests/dictionaries/70container_filesredefine/tiramisu/base.py
@@ -20,15 +20,15 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_7 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_8 = StrOption(name="source", doc="source", default="mailname.new")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "mailname.new")
+optiondescription_5 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_11.impl_set_information('type', "service")
-optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_12.impl_set_information('type', "service")
+optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
diff --git a/tests/dictionaries/70container_filesredefine/tiramisu/multi.py b/tests/dictionaries/70container_filesredefine/tiramisu/multi.py
index ce6a83316..3e604a718 100644
--- a/tests/dictionaries/70container_filesredefine/tiramisu/multi.py
+++ b/tests/dictionaries/70container_filesredefine/tiramisu/multi.py
@@ -20,30 +20,30 @@ except:
from tiramisu import *
option_2 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_1 = OptionDescription(name="general", doc="général", children=[option_2], properties=frozenset({"normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_1])
option_9 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_10 = StrOption(name="source", doc="source", default="mailname.new")
option_8 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_7 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "mailname.new")
+optiondescription_7 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=True)
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
option_4 = StrOption(name="mode_conteneur_actif", doc="No change", default="oui", properties=frozenset({"force_default_on_freeze", "frozen", "hidden", "mandatory", "normal"}))
optiondescription_3 = OptionDescription(name="general", doc="général", children=[option_4], properties=frozenset({"normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
-option_15 = FilenameOption(name="name", doc="name", default="/etc/mailname")
-option_14 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_13 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "mailname.new")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=True)
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[optiondescription_3])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/mailname")
+option_17 = StrOption(name="source", doc="source", default="mailname.new")
+option_15 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_14 = OptionDescription(name="mailname_new", doc="mailname.new", children=[option_16, option_17, option_15])
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=True)
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
diff --git a/tests/dictionaries/70service_not_managed/makedict/after.json b/tests/dictionaries/70service_not_managed/makedict/after.json
index e63560ee2..52eaee29b 100644
--- a/tests/dictionaries/70service_not_managed/makedict/after.json
+++ b/tests/dictionaries/70service_not_managed/makedict/after.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/test"
},
+ "services.test_service.files.test.source": {
+ "owner": "default",
+ "value": "test"
+ },
"services.test_service.files.test.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70service_not_managed/makedict/base.json b/tests/dictionaries/70service_not_managed/makedict/base.json
index efdb81db2..45259b561 100644
--- a/tests/dictionaries/70service_not_managed/makedict/base.json
+++ b/tests/dictionaries/70service_not_managed/makedict/base.json
@@ -1,6 +1,7 @@
{
"rougail.var": "mailname",
"services.test_service.files.test.name": "/tmp/test",
+ "services.test_service.files.test.source": "test",
"services.test_service.files.test.activate": true,
"services.test_service.activate": true,
"services.test_service.manage": false
diff --git a/tests/dictionaries/70service_not_managed/makedict/before.json b/tests/dictionaries/70service_not_managed/makedict/before.json
index e63560ee2..52eaee29b 100644
--- a/tests/dictionaries/70service_not_managed/makedict/before.json
+++ b/tests/dictionaries/70service_not_managed/makedict/before.json
@@ -7,6 +7,10 @@
"owner": "default",
"value": "/tmp/test"
},
+ "services.test_service.files.test.source": {
+ "owner": "default",
+ "value": "test"
+ },
"services.test_service.files.test.activate": {
"owner": "default",
"value": true
diff --git a/tests/dictionaries/70service_not_managed/tiramisu/base.py b/tests/dictionaries/70service_not_managed/tiramisu/base.py
index 1da698c08..a4638d6b5 100644
--- a/tests/dictionaries/70service_not_managed/tiramisu/base.py
+++ b/tests/dictionaries/70service_not_managed/tiramisu/base.py
@@ -19,15 +19,15 @@ try:
except:
from tiramisu import *
option_1 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_8 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
+optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
option_6 = FilenameOption(name="name", doc="name", default="/tmp/test")
+option_7 = StrOption(name="source", doc="source", default="test")
option_5 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_4 = OptionDescription(name="test", doc="test", children=[option_6, option_5])
-optiondescription_4.impl_set_information('source', "test")
+optiondescription_4 = OptionDescription(name="test", doc="test", children=[option_6, option_7, option_5])
optiondescription_3 = OptionDescription(name="files", doc="files", children=[optiondescription_4])
option_2 = BoolOption(name="activate", doc="activate", default=True)
-option_7 = BoolOption(name="manage", doc="manage", default=False)
-optiondescription_10 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_3, option_2, option_7])
-optiondescription_10.impl_set_information('type', "none")
-optiondescription_9 = OptionDescription(name="services", doc="services", children=[optiondescription_10], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_8, optiondescription_9])
+option_8 = BoolOption(name="manage", doc="manage", default=False)
+optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_3, option_2, option_8])
+optiondescription_11.impl_set_information('type', "none")
+optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
diff --git a/tests/dictionaries/70service_not_managed/tiramisu/multi.py b/tests/dictionaries/70service_not_managed/tiramisu/multi.py
index 1097c3001..05d03f5e6 100644
--- a/tests/dictionaries/70service_not_managed/tiramisu/multi.py
+++ b/tests/dictionaries/70service_not_managed/tiramisu/multi.py
@@ -19,29 +19,29 @@ try:
except:
from tiramisu import *
option_1 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_16 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
+optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[option_1])
option_7 = FilenameOption(name="name", doc="name", default="/tmp/test")
+option_8 = StrOption(name="source", doc="source", default="test")
option_6 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_5 = OptionDescription(name="test", doc="test", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "test")
+optiondescription_5 = OptionDescription(name="test", doc="test", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=True)
-option_8 = BoolOption(name="manage", doc="manage", default=False)
-optiondescription_18 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_18.impl_set_information('type', "none")
-optiondescription_17 = OptionDescription(name="services", doc="services", children=[optiondescription_18], properties=frozenset({"hidden"}))
-optiondescription_15 = OptionDescription(name="1", doc="1", children=[optiondescription_16, optiondescription_17])
+option_9 = BoolOption(name="manage", doc="manage", default=False)
+optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_20.impl_set_information('type', "none")
+optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
+optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
option_2 = StrOption(name="var", doc="var", default="mailname", properties=frozenset({"mandatory", "normal"}))
-optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[option_2])
-option_13 = FilenameOption(name="name", doc="name", default="/tmp/test")
-option_12 = BoolOption(name="activate", doc="activate", default=True)
-optiondescription_11 = OptionDescription(name="test", doc="test", children=[option_13, option_12])
-optiondescription_11.impl_set_information('source', "test")
-optiondescription_10 = OptionDescription(name="files", doc="files", children=[optiondescription_11])
-option_9 = BoolOption(name="activate", doc="activate", default=True)
-option_14 = BoolOption(name="manage", doc="manage", default=False)
-optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_10, option_9, option_14])
-optiondescription_22.impl_set_information('type', "none")
-optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
-optiondescription_19 = OptionDescription(name="2", doc="2", children=[optiondescription_20, optiondescription_21])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_15, optiondescription_19])
+optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[option_2])
+option_14 = FilenameOption(name="name", doc="name", default="/tmp/test")
+option_15 = StrOption(name="source", doc="source", default="test")
+option_13 = BoolOption(name="activate", doc="activate", default=True)
+optiondescription_12 = OptionDescription(name="test", doc="test", children=[option_14, option_15, option_13])
+optiondescription_11 = OptionDescription(name="files", doc="files", children=[optiondescription_12])
+option_10 = BoolOption(name="activate", doc="activate", default=True)
+option_16 = BoolOption(name="manage", doc="manage", default=False)
+optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_11, option_10, option_16])
+optiondescription_24.impl_set_information('type', "none")
+optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
+optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
diff --git a/tests/dictionaries/70service_servicelist_file/makedict/after.json b/tests/dictionaries/70service_servicelist_file/makedict/after.json
index b710ae2b4..028c4975e 100644
--- a/tests/dictionaries/70service_servicelist_file/makedict/after.json
+++ b/tests/dictionaries/70service_servicelist_file/makedict/after.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/70service_servicelist_file/makedict/base.json b/tests/dictionaries/70service_servicelist_file/makedict/base.json
index a45a49d45..9c84937ca 100644
--- a/tests/dictionaries/70service_servicelist_file/makedict/base.json
+++ b/tests/dictionaries/70service_servicelist_file/makedict/base.json
@@ -2,6 +2,7 @@
"rougail.condition": "no",
"rougail.nut_monitor_host": "192.168.0.1",
"services.test_service.files.file.name": "/etc/file",
+ "services.test_service.files.file.source": "file",
"services.test_service.files.file.activate": false,
"services.test_service.activate": false,
"services.test_service.manage": true
diff --git a/tests/dictionaries/70service_servicelist_file/makedict/before.json b/tests/dictionaries/70service_servicelist_file/makedict/before.json
index b710ae2b4..028c4975e 100644
--- a/tests/dictionaries/70service_servicelist_file/makedict/before.json
+++ b/tests/dictionaries/70service_servicelist_file/makedict/before.json
@@ -11,6 +11,10 @@
"owner": "default",
"value": "/etc/file"
},
+ "services.test_service.files.file.source": {
+ "owner": "default",
+ "value": "file"
+ },
"services.test_service.files.file.activate": {
"owner": "default",
"value": false
diff --git a/tests/dictionaries/70service_servicelist_file/tiramisu/base.py b/tests/dictionaries/70service_servicelist_file/tiramisu/base.py
index d706f8bc3..628a8684a 100644
--- a/tests/dictionaries/70service_servicelist_file/tiramisu/base.py
+++ b/tests/dictionaries/70service_servicelist_file/tiramisu/base.py
@@ -20,15 +20,15 @@ except:
from tiramisu import *
option_1 = StrOption(name="condition", doc="condition", default="no", properties=frozenset({"mandatory", "normal"}))
option_2 = IPOption(name="nut_monitor_host", doc="nut_monitor_host", default="192.168.0.1", allow_reserved=True, properties=frozenset({"mandatory", "normal"}))
-optiondescription_9 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_10 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_7 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_8 = StrOption(name="source", doc="source", default="file")
option_6 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_1, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_6])
-optiondescription_5.impl_set_information('source', "file")
+optiondescription_5 = OptionDescription(name="file", doc="file", children=[option_7, option_8, option_6])
optiondescription_4 = OptionDescription(name="files", doc="files", children=[optiondescription_5])
option_3 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_1, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-option_8 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_11 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_8])
-optiondescription_11.impl_set_information('type', "service")
-optiondescription_10 = OptionDescription(name="services", doc="services", children=[optiondescription_11], properties=frozenset({"hidden"}))
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_9, optiondescription_10])
+option_9 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_12 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_4, option_3, option_9])
+optiondescription_12.impl_set_information('type', "service")
+optiondescription_11 = OptionDescription(name="services", doc="services", children=[optiondescription_12], properties=frozenset({"hidden"}))
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_10, optiondescription_11])
diff --git a/tests/dictionaries/70service_servicelist_file/tiramisu/multi.py b/tests/dictionaries/70service_servicelist_file/tiramisu/multi.py
index f8812fbb4..643888c12 100644
--- a/tests/dictionaries/70service_servicelist_file/tiramisu/multi.py
+++ b/tests/dictionaries/70service_servicelist_file/tiramisu/multi.py
@@ -20,30 +20,30 @@ except:
from tiramisu import *
option_1 = StrOption(name="condition", doc="condition", default="no", properties=frozenset({"mandatory", "normal"}))
option_2 = IPOption(name="nut_monitor_host", doc="nut_monitor_host", default="192.168.0.1", allow_reserved=True, properties=frozenset({"mandatory", "normal"}))
-optiondescription_18 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
+optiondescription_20 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2])
option_9 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_10 = StrOption(name="source", doc="source", default="file")
option_8 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_1, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_8])
-optiondescription_7.impl_set_information('source', "file")
+optiondescription_7 = OptionDescription(name="file", doc="file", children=[option_9, option_10, option_8])
optiondescription_6 = OptionDescription(name="files", doc="files", children=[optiondescription_7])
option_5 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_1, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-option_10 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_20 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_10])
-optiondescription_20.impl_set_information('type', "service")
-optiondescription_19 = OptionDescription(name="services", doc="services", children=[optiondescription_20], properties=frozenset({"hidden"}))
-optiondescription_17 = OptionDescription(name="1", doc="1", children=[optiondescription_18, optiondescription_19])
+option_11 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_22 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_6, option_5, option_11])
+optiondescription_22.impl_set_information('type', "service")
+optiondescription_21 = OptionDescription(name="services", doc="services", children=[optiondescription_22], properties=frozenset({"hidden"}))
+optiondescription_19 = OptionDescription(name="1", doc="1", children=[optiondescription_20, optiondescription_21])
option_3 = StrOption(name="condition", doc="condition", default="no", properties=frozenset({"mandatory", "normal"}))
option_4 = IPOption(name="nut_monitor_host", doc="nut_monitor_host", default="192.168.0.1", allow_reserved=True, properties=frozenset({"mandatory", "normal"}))
-optiondescription_22 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
-option_15 = FilenameOption(name="name", doc="name", default="/etc/file")
-option_14 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-optiondescription_13 = OptionDescription(name="file", doc="file", children=[option_15, option_14])
-optiondescription_13.impl_set_information('source', "file")
-optiondescription_12 = OptionDescription(name="files", doc="files", children=[optiondescription_13])
-option_11 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
-option_16 = BoolOption(name="manage", doc="manage", default=True)
-optiondescription_24 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_12, option_11, option_16])
-optiondescription_24.impl_set_information('type', "service")
-optiondescription_23 = OptionDescription(name="services", doc="services", children=[optiondescription_24], properties=frozenset({"hidden"}))
-optiondescription_21 = OptionDescription(name="2", doc="2", children=[optiondescription_22, optiondescription_23])
-option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_17, optiondescription_21])
+optiondescription_24 = OptionDescription(name="rougail", doc="Rougail", children=[option_3, option_4])
+option_16 = FilenameOption(name="name", doc="name", default="/etc/file")
+option_17 = StrOption(name="source", doc="source", default="file")
+option_15 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
+optiondescription_14 = OptionDescription(name="file", doc="file", children=[option_16, option_17, option_15])
+optiondescription_13 = OptionDescription(name="files", doc="files", children=[optiondescription_14])
+option_12 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3, notraisepropertyerror=True), 'expected_0': ParamValue("no")})))
+option_18 = BoolOption(name="manage", doc="manage", default=True)
+optiondescription_26 = OptionDescription(name="test_service", doc="test.service", children=[optiondescription_13, option_12, option_18])
+optiondescription_26.impl_set_information('type', "service")
+optiondescription_25 = OptionDescription(name="services", doc="services", children=[optiondescription_26], properties=frozenset({"hidden"}))
+optiondescription_23 = OptionDescription(name="2", doc="2", children=[optiondescription_24, optiondescription_25])
+option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_19, optiondescription_23])
diff --git a/tests/test_others.py b/tests/test_others.py
index 504aca0e1..b86d0aada 100644
--- a/tests/test_others.py
+++ b/tests/test_others.py
@@ -107,7 +107,7 @@ def test_valid_dtd_schema_equal():
ymldf.write(schema)
with open(RougailConfig['yamlschema_filename'], 'r') as ymldf:
ori_schema = ymldf.read()
- assert schema == ori_schema, 'DTD and YAML schema are different'
+ assert schema == ori_schema, f'DTD and YAML schema ({RougailConfig["yamlschema_filename"]}) are different'
def test_no_dtd():