fix: support {{ suffix }} name in 1.1 format version
This commit is contained in:
parent
46e2ede81d
commit
6167e1ea2c
9 changed files with 24 additions and 22 deletions
|
|
@ -464,7 +464,7 @@ class ParserVariable:
|
|||
if obj_type == "dynamic":
|
||||
family_is_dynamic = True
|
||||
if "{{ identifier }}" not in name:
|
||||
if version == "1.0" and "{{ suffix }}" in name:
|
||||
if "{{ suffix }}" in name:
|
||||
name = name.replace("{{ suffix }}", "{{ identifier }}")
|
||||
path = path.replace("{{ suffix }}", "{{ identifier }}")
|
||||
elif "variable" in family_obj:
|
||||
|
|
@ -841,6 +841,8 @@ class ParserVariable:
|
|||
parent_dynamic: Optional[str],
|
||||
version: str,
|
||||
) -> None:
|
||||
if "{ suffix" in variable["path"]:
|
||||
raise Exception()
|
||||
"""Add a new variable"""
|
||||
if not isinstance(filename, list):
|
||||
filename = [filename]
|
||||
|
|
|
|||
|
|
@ -11,6 +11,6 @@ ALLOWED_LEADER_PROPERTIES.add("basic")
|
|||
ALLOWED_LEADER_PROPERTIES.add("standard")
|
||||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||
dict_env['validators_rougail.var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
||||
option_2 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_rougail.var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("rougail.var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number'})
|
||||
option_2 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_rougail.var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("rougail.var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number', 'test': (0,)})
|
||||
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2], properties=frozenset({"standard"}), informations={'ymlfiles': ['']})
|
||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
||||
|
|
|
|||
|
|
@ -7,5 +7,5 @@ ALLOWED_LEADER_PROPERTIES.add("basic")
|
|||
ALLOWED_LEADER_PROPERTIES.add("standard")
|
||||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||
dict_env['validators_var1'] = "{% if _.var1 != index %}\n value != than index\n{% endif %}"
|
||||
option_1 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number'})
|
||||
option_1 = IntOption(name="var1", doc="a second variable", multi=True, default=[0, 1, 2], default_multi=0, validators=[Calculation(func['valid_with_jinja'], Params((), kwargs={'__internal_jinja': ParamValue("validators_var1"), '__internal_type': ParamValue("string"), '__internal_multi': ParamValue(False), '__internal_files': ParamValue(['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml']), '__internal_attribute': ParamValue("validators"), '__internal_variable': ParamValue("var1"), 'index': ParamIndex(), '_.var1': ParamSelfOption(whole=False)}))], properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/04_5validators_multi3/rougail/00-base.yml'], 'type': 'number', 'test': (0,)})
|
||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1])
|
||||
|
|
|
|||
|
|
@ -6,19 +6,19 @@
|
|||
"val2"
|
||||
]
|
||||
},
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": {
|
||||
"rougail.val1.val1.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": {
|
||||
"rougail.val1.val2.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": {
|
||||
"rougail.val2.val1.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": {
|
||||
"rougail.val2.val2.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,8 +3,8 @@
|
|||
"val1",
|
||||
"val2"
|
||||
],
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": null,
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": null,
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": null,
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": null
|
||||
"rougail.val1.val1.var": null,
|
||||
"rougail.val1.val2.var": null,
|
||||
"rougail.val2.val1.var": null,
|
||||
"rougail.val2.val2.var": null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,19 +6,19 @@
|
|||
"val2"
|
||||
]
|
||||
},
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": {
|
||||
"rougail.val1.val1.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": {
|
||||
"rougail.val1.val2.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": {
|
||||
"rougail.val2.val1.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
},
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": {
|
||||
"rougail.val2.val2.var": {
|
||||
"owner": "default",
|
||||
"value": null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
["rougail.{{ suffix }}val1.{{ suffix }}val1.var", "rougail.{{ suffix }}val1.{{ suffix }}val2.var", "rougail.{{ suffix }}val2.{{ suffix }}val1.var", "rougail.{{ suffix }}val2.{{ suffix }}val2.var"]
|
||||
["rougail.val1.val1.var", "rougail.val1.val2.var", "rougail.val2.val1.var", "rougail.val2.val2.var"]
|
||||
|
|
@ -3,8 +3,8 @@
|
|||
"val1",
|
||||
"val2"
|
||||
],
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val1.var": null,
|
||||
"rougail.{{ suffix }}val1.{{ suffix }}val2.var": null,
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val1.var": null,
|
||||
"rougail.{{ suffix }}val2.{{ suffix }}val2.var": null
|
||||
"rougail.val1.val1.var": null,
|
||||
"rougail.val1.val2.var": null,
|
||||
"rougail.val2.val1.var": null,
|
||||
"rougail.val2.val2.var": null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ ALLOWED_LEADER_PROPERTIES.add("standard")
|
|||
ALLOWED_LEADER_PROPERTIES.add("advanced")
|
||||
option_2 = StrOption(name="var", doc="A identifier variable", multi=True, default=["val1", "val2"], default_multi="val1", properties=frozenset({"mandatory", "standard"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
||||
option_5 = StrOption(name="var", doc="A dynamic variable", properties=frozenset({"basic", "mandatory"}), informations={'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml'], 'type': 'string'})
|
||||
optiondescription_4 = ConvertDynOptionDescription(name="{{ suffix }}{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[option_5], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||
optiondescription_3 = ConvertDynOptionDescription(name="{{ suffix }}{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[optiondescription_4], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||
optiondescription_4 = ConvertDynOptionDescription(name="{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[option_5], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||
optiondescription_3 = ConvertDynOptionDescription(name="{{ identifier }}", doc="A dynamic family", identifiers=Calculation(func['calc_value'], Params((ParamOption(option_2, notraisepropertyerror=True)), kwargs={'allow_none': ParamValue(True)})), children=[optiondescription_4], properties=frozenset({"basic"}), informations={'dynamic_variable': 'rougail.var', 'ymlfiles': ['../rougail-tests/structures/60_6family_dynamic_sub_dynamic_1_0_2/rougail/00-base.yml']})
|
||||
optiondescription_1 = OptionDescription(name="rougail", doc="Rougail", group_type=groups.namespace, children=[option_2, optiondescription_3], properties=frozenset({"basic"}), informations={'ymlfiles': ['']})
|
||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_1])
|
||||
|
|
|
|||
Loading…
Reference in a new issue