fix: types inside extra namespace

This commit is contained in:
egarette@silique.fr 2026-03-06 08:07:36 +01:00
parent f7aad40ee7
commit ca588b9cd5
53 changed files with 472 additions and 100 deletions

View file

@ -346,6 +346,7 @@ class ParserVariable:
parent_dynamic: Optional[str] = None,
copy_before_set: bool = False,
force_redefine: bool = False,
custom_type: bool = False,
) -> None:
if name.startswith("_"):
msg = f'the variable or family name "{name}" is incorrect, it must not starts with "_" character'
@ -381,6 +382,7 @@ class ParserVariable:
parent_dynamic=parent_dynamic,
copy_before_set=copy_before_set,
force_redefine=force_redefine,
custom_type=custom_type,
)
def parse_family(
@ -398,6 +400,7 @@ class ParserVariable:
parent_dynamic: Optional[str] = None,
copy_before_set: bool = False,
force_redefine: Union[bool, str] = False,
custom_type: bool = False,
) -> None:
"""Parse a family"""
if obj is None:
@ -434,6 +437,7 @@ class ParserVariable:
family_is_dynamic=family_is_dynamic,
parent_dynamic=parent_dynamic,
copy_before_set=True,
custom_type=True,
)
force_redefine=True
family_obj["type"] = self.paths[path].type
@ -497,6 +501,7 @@ class ParserVariable:
sources,
family_is_dynamic,
parent_dynamic,
custom_type=custom_type,
)
force_not_first = False
if self.paths[path].type == "leadership":
@ -523,6 +528,7 @@ class ParserVariable:
parent_dynamic=parent_dynamic,
force_redefine=force_redefine,
copy_before_set=copy_before_set,
custom_type=custom_type,
)
def list_attributes(
@ -578,6 +584,8 @@ class ParserVariable:
sources: list[str],
family_is_dynamic: bool,
parent_dynamic: str,
*,
custom_type: bool=False,
) -> None:
"""Add a new family"""
family["path"] = path
@ -585,6 +593,8 @@ class ParserVariable:
family["version"] = self.version
family["xmlfiles"] = sources
obj_type = self.get_family_or_variable_type(family)
if custom_type:
self.change_namespaces(family)
if obj_type == "dynamic":
family_obj = self.dynamic
if self.version == "1.0":
@ -672,6 +682,7 @@ class ParserVariable:
parent_dynamic: Optional[str] = None,
copy_before_set: bool = False,
force_redefine: bool = False,
custom_type: bool = False,
) -> None:
"""Parse variable"""
if self.version == "1.0" or isinstance(obj, dict):
@ -705,7 +716,7 @@ class ParserVariable:
if obj_type in self.custom_variable_types:
redefine = True
custom = self.custom_variable_types[obj_type].copy()
self.add_variable(name, path, custom, custom['xmlfiles'].copy(), family_is_dynamic, parent_dynamic, family_is_leadership, first_variable)
self.add_variable(name, path, custom, custom['xmlfiles'].copy(), family_is_dynamic, parent_dynamic, family_is_leadership, first_variable, custom_type=True)
del obj["type"]
if path in self.paths:
if not self.load_unexist_redefine:
@ -733,7 +744,7 @@ class ParserVariable:
if not self.load_unexist_redefine and redefine:
msg = f'cannot redefine the inexisting variable "{path}"'
raise DictConsistencyError(msg, 46, sources)
self.add_variable(name, path, obj, sources, family_is_dynamic, parent_dynamic, family_is_leadership, first_variable)
self.add_variable(name, path, obj, sources, family_is_dynamic, parent_dynamic, family_is_leadership, first_variable, custom_type=custom_type)
def parse_parameters(
self,
@ -880,6 +891,8 @@ class ParserVariable:
parent_dynamic: Optional[str],
family_is_leadership: bool,
first_variable: bool,
*,
custom_type: bool=False,
) -> None:
"""Add a new variable"""
variable["namespace"] = self.namespace
@ -887,6 +900,8 @@ class ParserVariable:
variable["xmlfiles"] = sources
variable["path"] = path
variable_type = self.get_family_or_variable_type(variable)
if custom_type:
self.change_namespaces(variable)
obj = {
"symlink": SymLink,
"choice": self.variable,
@ -919,6 +934,16 @@ class ParserVariable:
else:
self.followers.append(path)
def change_namespaces(self, variable):
for key, value in variable.items():
if isinstance(value, Calculation):
value.namespace = self.namespace
if not isinstance(value, list):
continue
for idx, val in enumerate(value):
if isinstance(val, Calculation):
val.namespace = self.namespace
def del_family(
self,
path: str,

View file

@ -209,8 +209,8 @@ class Paths:
and namespace != option_namespace
):
msg = _(
'A variable or a family located in the "{0}" namespace shall not be used in the "{1}" namespace'
).format(option_namespace, namespace)
'The variable or the family "{0}" located in the "{1}" namespace shall not be used in the "{2}" namespace'
).format(path, option_namespace, namespace)
raise DictConsistencyError(msg, 38, xmlfiles)
return option, identifiers

View file

@ -25,11 +25,13 @@ class TypeRougailConvert(StaticRougailConvert):
self,
main_structural_directories: list[str],
secret_pattern: str,
default_structural_format_version: str,
) -> None:
super().__init__(False, {"sort_structural_files_all": True,
"main_namespace": None,
"main_structural_directories": main_structural_directories,
})
self.default_structural_format_version = default_structural_format_version
self.secret_pattern = secret_pattern
@ -44,7 +46,7 @@ def rougail_type(rougailconfig):
types = rougailconfig["types"]
if not types:
return {}, {}
convert = TypeRougailConvert(types, rougailconfig["secret_manager.pattern"])
convert = TypeRougailConvert(types, rougailconfig["secret_manager.pattern"], rougailconfig["default_structural_format_version"])
convert.init()
convert.parse_directories()
return ({typ: to_dict_variable(convert.paths[typ]) for typ in convert.variables},

View file

@ -1,12 +1,14 @@
from pytest import raises
from pathlib import Path
from json import dump, load, dumps, loads
from shutil import copyfile
from rougail_tests.utils import config_to_dict
from rougail import Rougail, RougailConfig
from rougail.error import DictConsistencyError
def type_variable(test_name):
def type_variable(test_name, namespace=False):
tmp_file = Path("tmp/tiramisu.py")
tmp_file.parent.mkdir(exist_ok=True)
tmp_file.unlink(missing_ok=True)
@ -16,7 +18,20 @@ def type_variable(test_name):
#
rougailconfig = RougailConfig.copy()
rougailconfig['types'] = [f'tests/types/types/{test_name}']
if namespace:
rougailconfig['main_namespace'] = None
rougailconfig['main_structural_directories'] = [f'tests/types/structures/{ test_name }']
tiramisu_file = result / "namespace_tiramisu.py"
variables_file = result / "namespace_variables.json"
variables_file_rw = result / "namespace_variables_rw.json"
else:
rougailconfig['main_namespace'] = 'NS1'
rougailconfig['main_structural_directories'] = ['tests/types/structures/main']
rougailconfig['extra_namespaces'] = {'NS2': [f'tests/types/structures/{ test_name }'],
}
tiramisu_file = result / "tiramisu.py"
variables_file = result / "variables.json"
variables_file_rw = result / "variables_rw.json"
try:
rougailconfig['tiramisu_cache'] = str(tmp_file)
except:
@ -24,7 +39,6 @@ def type_variable(test_name):
rougail = Rougail(rougailconfig=rougailconfig)
config = rougail.run()
#
tiramisu_file = result / "tiramisu.py"
if not tiramisu_file.is_file():
copyfile(tmp_file, tiramisu_file)
# tmp_file.copy(tiramisu_file)
@ -35,7 +49,6 @@ def type_variable(test_name):
assert loaded_tiramisu == tiramisu, f"error in file {tiramisu_file}"
tmp_file.unlink()
#
variables_file = result / "variables.json"
configuration = dict(config_to_dict(config.value.get()))
if not variables_file.is_file():
with variables_file.open('w') as fh:
@ -45,43 +58,80 @@ def type_variable(test_name):
assert loaded_configuration == loads(dumps(configuration)), f"error in file {variables_file}"
#
config.property.read_write()
variables_file = result / "variables_rw.json"
configuration = dict(config_to_dict(config.value.get()))
if not variables_file.is_file():
with variables_file.open('w') as fh:
if not variables_file_rw.is_file():
with variables_file_rw.open('w') as fh:
dump(configuration, fh, indent=4)
with variables_file.open('r') as fh:
with variables_file_rw.open('r') as fh:
loaded_configuration = load(fh)
assert loaded_configuration == loads(dumps(configuration)), f"error in file {variables_file}"
assert loaded_configuration == loads(dumps(configuration)), f"error in file {variables_file_rw}"
def test_type_variable():
type_variable("variable")
def test_type_variable_namespace():
type_variable("variable", namespace=True)
def test_type_variables():
type_variable("variables")
def test_type_variables_namespace():
type_variable("variables", namespace=True)
def test_type_family():
type_variable("family")
def test_type_family_namespace():
type_variable("family", namespace=True)
def test_type_family_redefine():
type_variable("family_redefine")
def test_type_family_redefine_namespace():
type_variable("family_redefine", namespace=True)
def test_type_family_subfamily():
type_variable("family_subfamily")
def test_type_family_subfamily_namespace():
type_variable("family_subfamily", namespace=True)
def test_type_variable_hidden():
type_variable("variable_hidden")
def test_type_variable_hidden_namespace():
type_variable("variable_hidden", namespace=True)
def test_type_dynfamily():
type_variable("family_dynfamily")
def test_type_dynfamily_namespace():
type_variable("family_dynfamily", namespace=True)
def test_type_family_subfamily_add():
type_variable("family_subfamily_add")
def test_type_family_subfamily_add_namespace():
type_variable("family_subfamily_add", namespace=True)
def test_type_error_version():
with raises(DictConsistencyError) as err:
type_variable("error_version")
assert err.errno == 27

View file

@ -0,0 +1,14 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="my_type", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/family/00_type.yml'], 'type': 'string', 'tags': ('one_tag',)})
optiondescription_1 = OptionDescription(name="my_family", doc="My family type", children=[option_2], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family/00_type.yml', 'tests/types/structures/family/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -0,0 +1,3 @@
{
"my_family.my_type": "a value"
}

View file

@ -0,0 +1,3 @@
{
"my_family.my_type": "a value"
}

View file

@ -11,5 +11,5 @@ ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_3 = StrOption(name="my_type", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/family/00_type.yml'], 'type': 'string', 'tags': ('one_tag',)})
optiondescription_2 = OptionDescription(name="my_family", doc="My family type", children=[option_3], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family/00_type.yml', 'tests/types/structures/family/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2], properties=frozenset({"standard"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2], properties=frozenset({"standard"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,3 +1,3 @@
{
"rougail.my_family.my_type": "a value"
"ns2.my_family.my_type": "a value"
}

View file

@ -1,3 +1,3 @@
{
"rougail.my_family.my_type": "a value"
"ns2.my_family.my_type": "a value"
}

View file

@ -0,0 +1,27 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="a_first_variable", doc="a first variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_4 = StrOption(name="identifier", doc="identifier", multi=True, default=["family"], default_multi="family", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_5 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml'], 'type': 'string'})
optiondescription_3 = OptionDescription(name="a_sub_{{ identifier }}", doc="My sub{{ identifier }}", children=[option_4, option_5], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
optiondescription_1 = OptionDescription(name="my_family_1", doc="My family type", children=[option_2, optiondescription_3], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
option_7 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_9 = StrOption(name="identifier", doc="identifier", multi=True, default=["family"], default_multi="family", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_10 = StrOption(name="a_second_variable", doc="a second variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
optiondescription_8 = OptionDescription(name="a_sub_{{ identifier }}", doc="My sub{{ identifier }}", children=[option_9, option_10], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml']})
optiondescription_6 = OptionDescription(name="my_family_2", doc="My family type", children=[option_7, optiondescription_8], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
option_12 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_14 = StrOption(name="identifier", doc="identifier", multi=True, default=["family"], default_multi="family", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml'], 'type': 'string'})
option_15 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml'], 'type': 'string'})
optiondescription_13 = OptionDescription(name="a_sub_{{ identifier }}", doc="My sub{{ identifier }}", children=[option_14, option_15], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
optiondescription_11 = OptionDescription(name="my_family_3", doc="My family type", children=[option_12, optiondescription_13], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1, optiondescription_6, optiondescription_11])

View file

@ -0,0 +1,17 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,17 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
}

View file

@ -24,5 +24,5 @@ option_15 = StrOption(name="identifier", doc="identifier", multi=True, default=[
option_16 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml'], 'type': 'string'})
optiondescription_14 = OptionDescription(name="a_sub_{{ identifier }}", doc="My sub{{ identifier }}", children=[option_15, option_16], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
optiondescription_12 = OptionDescription(name="my_family_3", doc="My family type", children=[option_13, optiondescription_14], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_dynfamily/00_structure.yml', 'tests/types/structures/family_dynfamily/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2, optiondescription_7, optiondescription_12], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2, optiondescription_7, optiondescription_12], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,17 +1,17 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
"ns2.my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
}

View file

@ -1,17 +1,17 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_1.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"ns2.my_family_2.a_sub_{{\u00a0identifier }}.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_{{\u00a0identifier }}.identifier": [
"family"
],
"rougail.my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
"ns2.my_family_3.a_sub_{{\u00a0identifier }}.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,21 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="a_first_variable", doc="a first variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml'], 'type': 'string'})
option_3 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml'], 'type': 'string'})
optiondescription_1 = OptionDescription(name="my_family_1", doc="My family type", children=[option_2, option_3], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml']})
option_5 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml'], 'type': 'string'})
option_6 = StrOption(name="a_second_variable", doc="a second variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml'], 'type': 'string'})
optiondescription_4 = OptionDescription(name="my_family_2", doc="My family type", children=[option_5, option_6], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml']})
option_8 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml'], 'type': 'string'})
option_9 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml'], 'type': 'string'})
optiondescription_7 = OptionDescription(name="my_family_3", doc="My family type", children=[option_8, option_9], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1, optiondescription_4, optiondescription_7])

View file

@ -0,0 +1,8 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,8 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -18,5 +18,5 @@ optiondescription_5 = OptionDescription(name="my_family_2", doc="My family type"
option_9 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml'], 'type': 'string'})
option_10 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml'], 'type': 'string'})
optiondescription_8 = OptionDescription(name="my_family_3", doc="My family type", children=[option_9, option_10], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_redefine/00_structure.yml', 'tests/types/structures/family_redefine/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2, optiondescription_5, optiondescription_8], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2, optiondescription_5, optiondescription_8], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,8 +1,8 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -1,8 +1,8 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,24 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="a_first_variable", doc="a first variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml'], 'type': 'string'})
option_4 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml'], 'type': 'string'})
optiondescription_3 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_4], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
optiondescription_1 = OptionDescription(name="my_family_1", doc="My family type", children=[option_2, optiondescription_3], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
option_6 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml'], 'type': 'string'})
option_8 = StrOption(name="a_second_variable", doc="a second variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml'], 'type': 'string'})
optiondescription_7 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_8], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml']})
optiondescription_5 = OptionDescription(name="my_family_2", doc="My family type", children=[option_6, optiondescription_7], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
option_10 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml'], 'type': 'string'})
option_12 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml'], 'type': 'string'})
optiondescription_11 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_12], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
optiondescription_9 = OptionDescription(name="my_family_3", doc="My family type", children=[option_10, optiondescription_11], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1, optiondescription_5, optiondescription_9])

View file

@ -0,0 +1,8 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_family.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_family.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_family.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,8 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_family.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_family.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_family.a_second_variable": "a modified value 2"
}

View file

@ -21,5 +21,5 @@ option_11 = StrOption(name="a_first_variable", doc="a first variable", default="
option_13 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml'], 'type': 'string'})
optiondescription_12 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_13], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
optiondescription_10 = OptionDescription(name="my_family_3", doc="My family type", children=[option_11, optiondescription_12], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily/00_structure.yml', 'tests/types/structures/family_subfamily/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2, optiondescription_6, optiondescription_10], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2, optiondescription_6, optiondescription_10], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,8 +1,8 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_family.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_family.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_family.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_family.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_family.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_family.a_second_variable": "a modified value 2"
}

View file

@ -1,8 +1,8 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_family.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_family.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_family.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_family.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_family.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_family.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,27 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="a_first_variable", doc="a first variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
option_4 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_3 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_4], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_6 = StrOption(name="a_second_variable", doc="a_second_variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_5 = OptionDescription(name="a_new_subfamily", doc="a_new_subfamily", children=[option_6], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/structures/family_subfamily_add/00_structure.yml']})
optiondescription_1 = OptionDescription(name="my_family_1", doc="My family type", children=[option_2, optiondescription_3, optiondescription_5], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_8 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml'], 'type': 'string'})
option_10 = StrOption(name="a_second_variable", doc="a second variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_9 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_10], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml']})
optiondescription_7 = OptionDescription(name="my_family_2", doc="My family type", children=[option_8, optiondescription_9], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_12 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml'], 'type': 'string'})
option_14 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_13 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_14], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_15 = StrOption(name="a_new_variable", doc="a_new_variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_11 = OptionDescription(name="my_family_3", doc="My family type", children=[option_12, optiondescription_13, option_15], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1, optiondescription_7, optiondescription_11])

View file

@ -0,0 +1,10 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_family.a_second_variable": "a modified value",
"my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_family.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"my_family_3.a_new_variable": "a modified value"
}

View file

@ -0,0 +1,10 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_1.a_sub_family.a_second_variable": "a modified value",
"my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_sub_family.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"my_family_3.a_new_variable": "a modified value"
}

View file

@ -24,5 +24,5 @@ option_15 = StrOption(name="a_second_variable", doc="a second variable", default
optiondescription_14 = OptionDescription(name="a_sub_family", doc="My subfamily", children=[option_15], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
option_16 = StrOption(name="a_new_variable", doc="a_new_variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/structures/family_subfamily_add/00_structure.yml'], 'type': 'string'})
optiondescription_12 = OptionDescription(name="my_family_3", doc="My family type", children=[option_13, optiondescription_14, option_16], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/family_subfamily_add/00_structure.yml', 'tests/types/structures/family_subfamily_add/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2, optiondescription_8, optiondescription_12], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2, optiondescription_8, optiondescription_12], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,10 +1,10 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_family.a_second_variable": "a modified value",
"rougail.my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_family.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"rougail.my_family_3.a_new_variable": "a modified value"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_family.a_second_variable": "a modified value",
"ns2.my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_family.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"ns2.my_family_3.a_new_variable": "a modified value"
}

View file

@ -1,10 +1,10 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_1.a_sub_family.a_second_variable": "a modified value",
"rougail.my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_sub_family.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"rougail.my_family_3.a_new_variable": "a modified value"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_1.a_sub_family.a_second_variable": "a modified value",
"ns2.my_family_1.a_new_subfamily.a_second_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_sub_family.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_sub_family.a_second_variable": "a modified value 2",
"ns2.my_family_3.a_new_variable": "a modified value"
}

View file

@ -0,0 +1,13 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_1 = StrOption(name="my_var", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/variable/00_type.yml', 'tests/types/structures/variable/00_structure.yml'], 'type': 'string', 'tags': ('one_tag',)})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1])

View file

@ -0,0 +1,3 @@
{
"my_var": "a value"
}

View file

@ -0,0 +1,3 @@
{
"my_var": "a value"
}

View file

@ -10,5 +10,5 @@ ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="my_var", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/variable/00_type.yml', 'tests/types/structures/variable/00_structure.yml'], 'type': 'string', 'tags': ('one_tag',)})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[option_2], properties=frozenset({"standard"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[option_2], properties=frozenset({"standard"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,3 +1,3 @@
{
"rougail.my_var": "a value"
"ns2.my_var": "a value"
}

View file

@ -1,3 +1,3 @@
{
"rougail.my_var": "a value"
"ns2.my_var": "a value"
}

View file

@ -0,0 +1,21 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="a_first_variable", doc="a first variable", default="a modified value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml'], 'type': 'string'})
option_3 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value", properties=frozenset({"force_default_on_freeze", "mandatory", "standard", Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_2), 'prop': ParamValue("hidden"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property']), Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_2), 'prop': ParamValue("frozen"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property'])}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml'], 'type': 'string'})
optiondescription_1 = OptionDescription(name="my_family_1", doc="My family type", children=[option_2, option_3], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml']})
option_5 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml'], 'type': 'string'})
option_6 = StrOption(name="a_second_variable", doc="a second variable", properties=frozenset({"basic", "force_default_on_freeze", "mandatory", Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_5), 'prop': ParamValue("hidden"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property']), Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_5), 'prop': ParamValue("frozen"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property'])}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml'], 'type': 'string'})
optiondescription_4 = OptionDescription(name="my_family_2", doc="My family type", children=[option_5, option_6], properties=frozenset({"basic"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml']})
option_8 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml'], 'type': 'string'})
option_9 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"force_default_on_freeze", "mandatory", "standard", Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_8), 'prop': ParamValue("hidden"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property']), Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_8), 'prop': ParamValue("frozen"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property'])}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml'], 'type': 'string'})
optiondescription_7 = OptionDescription(name="my_family_3", doc="My family type", children=[option_8, option_9], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml']})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1, optiondescription_4, optiondescription_7])

View file

@ -0,0 +1,7 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,7 @@
{
"my_family_1.a_first_variable": "a modified value",
"my_family_2.a_first_variable": "a value",
"my_family_2.a_second_variable": null,
"my_family_3.a_first_variable": "a value",
"my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -18,5 +18,5 @@ optiondescription_5 = OptionDescription(name="my_family_2", doc="My family type"
option_9 = StrOption(name="a_first_variable", doc="a first variable", default="a value", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml'], 'type': 'string'})
option_10 = StrOption(name="a_second_variable", doc="a second variable", default="a modified value 2", properties=frozenset({"force_default_on_freeze", "mandatory", "standard", Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_9), 'prop': ParamValue("hidden"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property']), Calculation(func['variable_to_property'], Params((), kwargs={'value': ParamOption(option_9), 'prop': ParamValue("frozen"), 'when': ParamValue("a value"), 'inverse': ParamValue(True)}), help_function=func['variable_to_property'])}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml'], 'type': 'string'})
optiondescription_8 = OptionDescription(name="my_family_3", doc="My family type", children=[option_9, option_10], properties=frozenset({"standard"}), informations={'ymlfiles': ['tests/types/types/variable_hidden/00_structure.yml', 'tests/types/structures/variable_hidden/00_structure.yml']})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[optiondescription_2, optiondescription_5, optiondescription_8], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[optiondescription_2, optiondescription_5, optiondescription_8], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,7 +1,7 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -1,7 +1,7 @@
{
"rougail.my_family_1.a_first_variable": "a modified value",
"rougail.my_family_2.a_first_variable": "a value",
"rougail.my_family_2.a_second_variable": null,
"rougail.my_family_3.a_first_variable": "a value",
"rougail.my_family_3.a_second_variable": "a modified value 2"
"ns2.my_family_1.a_first_variable": "a modified value",
"ns2.my_family_2.a_first_variable": "a value",
"ns2.my_family_2.a_second_variable": null,
"ns2.my_family_3.a_first_variable": "a value",
"ns2.my_family_3.a_second_variable": "a modified value 2"
}

View file

@ -0,0 +1,15 @@
from tiramisu import *
from tiramisu.setting import ALLOWED_LEADER_PROPERTIES
from re import compile as re_compile
from rougail.tiramisu import func, dict_env, load_functions, ConvertDynOptionDescription
try:
groups.namespace
except:
groups.addgroup('namespace')
ALLOWED_LEADER_PROPERTIES.add("basic")
ALLOWED_LEADER_PROPERTIES.add("standard")
ALLOWED_LEADER_PROPERTIES.add("advanced")
option_1 = StrOption(name="my_var1", doc="My type", default="a value", properties=frozenset({"an_other_tag", "mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variables/00_type.yml', 'tests/types/structures/variables/00_structure.yml'], 'type': 'string', 'tags': ('an_other_tag',)})
option_2 = StrOption(name="my_var2", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/variables/00_type.yml', 'tests/types/structures/variables/00_structure.yml'], 'type': 'string', 'tags': ('one_tag',)})
option_3 = StrOption(name="my_var3", doc="my_var3", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/structures/variables/00_structure.yml'], 'type': 'string'})
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_2, option_3])

View file

@ -0,0 +1,5 @@
{
"my_var1": "a value",
"my_var2": "a value",
"my_var3": null
}

View file

@ -0,0 +1,5 @@
{
"my_var1": "a value",
"my_var2": "a value",
"my_var3": null
}

View file

@ -12,5 +12,5 @@ ALLOWED_LEADER_PROPERTIES.add("advanced")
option_2 = StrOption(name="my_var1", doc="My type", default="a value", properties=frozenset({"an_other_tag", "mandatory", "standard"}), informations={'ymlfiles': ['tests/types/types/variables/00_type.yml', 'tests/types/structures/variables/00_structure.yml'], 'type': 'string', 'tags': ('an_other_tag',)})
option_3 = StrOption(name="my_var2", doc="My type", default="a value", properties=frozenset({"mandatory", "one_tag", "standard"}), informations={'ymlfiles': ['tests/types/types/variables/00_type.yml', 'tests/types/structures/variables/00_structure.yml'], 'type': 'string', 'tags': ('one_tag',)})
option_4 = StrOption(name="my_var3", doc="my_var3", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['tests/types/structures/variables/00_structure.yml'], 'type': 'string'})
optiondescription_1 = OptionDescription(name="rougail", doc="rougail", group_type=groups.namespace, children=[option_2, option_3, option_4], properties=frozenset({"basic"}))
optiondescription_1 = OptionDescription(name="ns2", doc="NS2", group_type=groups.namespace, children=[option_2, option_3, option_4], properties=frozenset({"basic"}))
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])

View file

@ -1,5 +1,5 @@
{
"rougail.my_var1": "a value",
"rougail.my_var2": "a value",
"rougail.my_var3": null
"ns2.my_var1": "a value",
"ns2.my_var2": "a value",
"ns2.my_var3": null
}

View file

@ -1,5 +1,5 @@
{
"rougail.my_var1": "a value",
"rougail.my_var2": "a value",
"rougail.my_var3": null
"ns2.my_var1": "a value",
"ns2.my_var2": "a value",
"ns2.my_var3": null
}

View file

@ -0,0 +1,11 @@
%YAML 1.2
---
my_family_type:
description: My family type
my_type:
description: My type
default: a value
tags:
- one_tag
...