better _if_in and _if_not_in support
This commit is contained in:
parent
683bd862f5
commit
66356d8ff0
24 changed files with 317 additions and 24 deletions
|
@ -243,41 +243,50 @@ class ConditionAnnotator:
|
||||||
param.name == 'condition_operator':
|
param.name == 'condition_operator':
|
||||||
or_needed = False
|
or_needed = False
|
||||||
break
|
break
|
||||||
|
fill.index += 1
|
||||||
else:
|
else:
|
||||||
fill = self.objectspace.fill(target.xmlfiles)
|
fill = self.objectspace.fill(target.xmlfiles)
|
||||||
fill.target = listvar.path
|
fill.target = listvar.path
|
||||||
fill.name = 'calc_value'
|
fill.name = 'calc_value'
|
||||||
fill.namespace = 'services'
|
fill.namespace = 'services'
|
||||||
fill.index = -1
|
fill.index = 0
|
||||||
if not hasattr(self.objectspace.space.constraints, 'fill'):
|
if not hasattr(self.objectspace.space.constraints, 'fill'):
|
||||||
self.objectspace.space.constraints.fill = []
|
self.objectspace.space.constraints.fill = []
|
||||||
self.objectspace.space.constraints.fill.append(fill)
|
self.objectspace.space.constraints.fill.append(fill)
|
||||||
fills[listvar.path] = fill
|
fills[listvar.path] = fill
|
||||||
param1 = self.objectspace.param(target.xmlfiles)
|
param1 = self.objectspace.param(target.xmlfiles)
|
||||||
param1.text = value
|
param1.text = False
|
||||||
param1.type = 'boolean'
|
param1.type = 'boolean'
|
||||||
param2 = self.objectspace.param(target.xmlfiles)
|
param2 = self.objectspace.param(target.xmlfiles)
|
||||||
param2.name = 'default'
|
param2.name = 'default'
|
||||||
param2.text = not value
|
param2.text = True
|
||||||
param2.type = 'boolean'
|
param2.type = 'boolean'
|
||||||
fill.param = [param1, param2]
|
fill.param = [param1, param2]
|
||||||
or_needed = len(condition.param) != 1
|
or_needed = len(condition.param) != 1
|
||||||
for param in condition.param:
|
if len(condition.param) == 1:
|
||||||
fill.index += 1
|
values = getattr(condition.param[0], 'text', None)
|
||||||
param3 = self.objectspace.param(target.xmlfiles)
|
else:
|
||||||
param3.name = f'condition_{fill.index}'
|
values = tuple([getattr(param, 'text', None) for param in condition.param])
|
||||||
param3.type = 'variable'
|
param3 = self.objectspace.param(target.xmlfiles)
|
||||||
param3.text = condition.source
|
param3.name = f'condition_{fill.index}'
|
||||||
fill.param.append(param3)
|
param3.type = 'variable'
|
||||||
param4 = self.objectspace.param(target.xmlfiles)
|
param3.text = condition.source
|
||||||
param4.name = f'expected_{fill.index}'
|
fill.param.append(param3)
|
||||||
param4.text = getattr(param, 'text', None)
|
param4 = self.objectspace.param(target.xmlfiles)
|
||||||
fill.param.append(param4)
|
param4.name = f'expected_{fill.index}'
|
||||||
if or_needed:
|
param4.text = values
|
||||||
|
fill.param.append(param4)
|
||||||
|
if condition.name != 'disabled_if_in':
|
||||||
param5 = self.objectspace.param(target.xmlfiles)
|
param5 = self.objectspace.param(target.xmlfiles)
|
||||||
param5.name = 'condition_operator'
|
param5.name = f'reverse_condition_{fill.index}'
|
||||||
param5.text = 'OR'
|
param5.text = True
|
||||||
|
param5.type = 'boolean'
|
||||||
fill.param.append(param5)
|
fill.param.append(param5)
|
||||||
|
if or_needed:
|
||||||
|
param6 = self.objectspace.param(target.xmlfiles)
|
||||||
|
param6.name = f'condition_operator'
|
||||||
|
param6.text = 'OR'
|
||||||
|
fill.param.append(param6)
|
||||||
|
|
||||||
def convert_condition_source(self):
|
def convert_condition_source(self):
|
||||||
"""remove condition for ChoiceOption that don't have param
|
"""remove condition for ChoiceOption that don't have param
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file1")
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("oui"), 'condition_1': ParamOption(option_3), 'expected_1': ParamValue("maybe"), 'condition_operator': ParamValue("OR")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
|
||||||
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file1")
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("yes"), 'condition_1': ParamOption(option_3), 'expected_1': ParamValue("maybe"), 'condition_operator': ParamValue("OR"), 'condition_2': ParamOption(option_4), 'expected_2': ParamValue("yes"), 'condition_3': ParamOption(option_4), 'expected_3': ParamValue("maybe")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["yes", "maybe"]), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_4), 'expected_1': ParamValue(["yes", "maybe"])})))
|
||||||
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<rougail>
|
||||||
|
<services>
|
||||||
|
<service name="test">
|
||||||
|
<file name="/tmp/file1" filelist="afilllist"/>
|
||||||
|
</service>
|
||||||
|
</services>
|
||||||
|
<variables>
|
||||||
|
<family name="general">
|
||||||
|
<variable name="condition" type="string" description="No change">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="condition2" type="string" description="No change">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="test_variable" type="string" description="No change" hidden="True">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
</family>
|
||||||
|
</variables>
|
||||||
|
|
||||||
|
<constraints>
|
||||||
|
<condition name="disabled_if_not_in" source="condition">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
<condition name="disabled_if_in" source="condition2">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
</constraints>
|
||||||
|
</rougail>
|
||||||
|
<!-- vim: ts=4 sw=4 expandtab
|
||||||
|
-->
|
|
@ -0,0 +1 @@
|
||||||
|
{"rougail.general.condition": "no", "rougail.general.condition2": "no", "services.test.files.file1.group": "root", "services.test.files.file1.mode": "0644", "services.test.files.file1.name": "/tmp/file1", "services.test.files.file1.owner": "root", "services.test.files.file1.source": "file1", "services.test.files.file1.templating": true, "services.test.files.file1.activate": false}
|
|
@ -0,0 +1,32 @@
|
||||||
|
from importlib.machinery import SourceFileLoader
|
||||||
|
from importlib.util import spec_from_loader, module_from_spec
|
||||||
|
loader = SourceFileLoader('func', 'tests/dictionaries/../eosfunc/test.py')
|
||||||
|
spec = spec_from_loader(loader.name, loader)
|
||||||
|
func = module_from_spec(spec)
|
||||||
|
loader.exec_module(func)
|
||||||
|
for key, value in dict(locals()).items():
|
||||||
|
if key != ['SourceFileLoader', 'func']:
|
||||||
|
setattr(func, key, value)
|
||||||
|
try:
|
||||||
|
from tiramisu3 import *
|
||||||
|
except:
|
||||||
|
from tiramisu import *
|
||||||
|
from rougail.tiramisu import ConvertDynOptionDescription
|
||||||
|
option_3 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_4 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_5 = 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_3, todict=True), 'expected': ParamValue('yes'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True), 'expected': ParamValue('maybe'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('yes')})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('maybe')}))}))
|
||||||
|
option_2 = OptionDescription(name="general", doc="general", children=[option_3, option_4, option_5], properties=frozenset({"normal"}))
|
||||||
|
option_1 = OptionDescription(name="rougail", doc="rougail", children=[option_2])
|
||||||
|
option_10 = StrOption(name="group", doc="group", default="root")
|
||||||
|
option_11 = StrOption(name="mode", doc="mode", default="0644")
|
||||||
|
option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_4), 'expected_1': ParamValue(["yes", "maybe"])})))
|
||||||
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
option_7.impl_set_information('manage', True)
|
||||||
|
option_6 = OptionDescription(name="services", doc="services", children=[option_7], properties=frozenset({"hidden"}))
|
||||||
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_6])
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<rougail>
|
||||||
|
<services>
|
||||||
|
<service name="test">
|
||||||
|
<file name="/tmp/file1" filelist="afilllist"/>
|
||||||
|
</service>
|
||||||
|
</services>
|
||||||
|
<variables>
|
||||||
|
<family name="general">
|
||||||
|
<variable name="condition" type="string" description="No change">
|
||||||
|
<value>yes</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="condition2" type="string" description="No change">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="test_variable" type="string" description="No change" hidden="True">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
</family>
|
||||||
|
</variables>
|
||||||
|
|
||||||
|
<constraints>
|
||||||
|
<condition name="disabled_if_not_in" source="condition">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
<condition name="disabled_if_in" source="condition2">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
</constraints>
|
||||||
|
</rougail>
|
||||||
|
<!-- vim: ts=4 sw=4 expandtab
|
||||||
|
-->
|
|
@ -0,0 +1 @@
|
||||||
|
{"rougail.general.condition": "yes", "rougail.general.condition2": "no", "services.test.files.file1.group": "root", "services.test.files.file1.mode": "0644", "services.test.files.file1.name": "/tmp/file1", "services.test.files.file1.owner": "root", "services.test.files.file1.source": "file1", "services.test.files.file1.templating": true, "services.test.files.file1.activate": true}
|
|
@ -0,0 +1,32 @@
|
||||||
|
from importlib.machinery import SourceFileLoader
|
||||||
|
from importlib.util import spec_from_loader, module_from_spec
|
||||||
|
loader = SourceFileLoader('func', 'tests/dictionaries/../eosfunc/test.py')
|
||||||
|
spec = spec_from_loader(loader.name, loader)
|
||||||
|
func = module_from_spec(spec)
|
||||||
|
loader.exec_module(func)
|
||||||
|
for key, value in dict(locals()).items():
|
||||||
|
if key != ['SourceFileLoader', 'func']:
|
||||||
|
setattr(func, key, value)
|
||||||
|
try:
|
||||||
|
from tiramisu3 import *
|
||||||
|
except:
|
||||||
|
from tiramisu import *
|
||||||
|
from rougail.tiramisu import ConvertDynOptionDescription
|
||||||
|
option_3 = StrOption(name="condition", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_4 = StrOption(name="condition2", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_5 = 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_3, todict=True), 'expected': ParamValue('yes'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True), 'expected': ParamValue('maybe'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('yes')})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('maybe')}))}))
|
||||||
|
option_2 = OptionDescription(name="general", doc="general", children=[option_3, option_4, option_5], properties=frozenset({"normal"}))
|
||||||
|
option_1 = OptionDescription(name="rougail", doc="rougail", children=[option_2])
|
||||||
|
option_10 = StrOption(name="group", doc="group", default="root")
|
||||||
|
option_11 = StrOption(name="mode", doc="mode", default="0644")
|
||||||
|
option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_4), 'expected_1': ParamValue(["yes", "maybe"])})))
|
||||||
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
option_7.impl_set_information('manage', True)
|
||||||
|
option_6 = OptionDescription(name="services", doc="services", children=[option_7], properties=frozenset({"hidden"}))
|
||||||
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_6])
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<rougail>
|
||||||
|
<services>
|
||||||
|
<service name="test">
|
||||||
|
<file name="/tmp/file1" filelist="afilllist"/>
|
||||||
|
</service>
|
||||||
|
</services>
|
||||||
|
<variables>
|
||||||
|
<family name="general">
|
||||||
|
<variable name="condition" type="string" description="No change">
|
||||||
|
<value>yes</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="condition2" type="string" description="No change">
|
||||||
|
<value>yes</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="test_variable" type="string" description="No change" hidden="True">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
</family>
|
||||||
|
</variables>
|
||||||
|
|
||||||
|
<constraints>
|
||||||
|
<condition name="disabled_if_not_in" source="condition">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
<condition name="disabled_if_in" source="condition2">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
</constraints>
|
||||||
|
</rougail>
|
||||||
|
<!-- vim: ts=4 sw=4 expandtab
|
||||||
|
-->
|
|
@ -0,0 +1 @@
|
||||||
|
{"rougail.general.condition": "yes", "rougail.general.condition2": "yes", "services.test.files.file1.group": "root", "services.test.files.file1.mode": "0644", "services.test.files.file1.name": "/tmp/file1", "services.test.files.file1.owner": "root", "services.test.files.file1.source": "file1", "services.test.files.file1.templating": true, "services.test.files.file1.activate": false}
|
|
@ -0,0 +1,32 @@
|
||||||
|
from importlib.machinery import SourceFileLoader
|
||||||
|
from importlib.util import spec_from_loader, module_from_spec
|
||||||
|
loader = SourceFileLoader('func', 'tests/dictionaries/../eosfunc/test.py')
|
||||||
|
spec = spec_from_loader(loader.name, loader)
|
||||||
|
func = module_from_spec(spec)
|
||||||
|
loader.exec_module(func)
|
||||||
|
for key, value in dict(locals()).items():
|
||||||
|
if key != ['SourceFileLoader', 'func']:
|
||||||
|
setattr(func, key, value)
|
||||||
|
try:
|
||||||
|
from tiramisu3 import *
|
||||||
|
except:
|
||||||
|
from tiramisu import *
|
||||||
|
from rougail.tiramisu import ConvertDynOptionDescription
|
||||||
|
option_3 = StrOption(name="condition", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_4 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_5 = 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_3, todict=True), 'expected': ParamValue('yes'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True), 'expected': ParamValue('maybe'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('yes')})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('maybe')}))}))
|
||||||
|
option_2 = OptionDescription(name="general", doc="general", children=[option_3, option_4, option_5], properties=frozenset({"normal"}))
|
||||||
|
option_1 = OptionDescription(name="rougail", doc="rougail", children=[option_2])
|
||||||
|
option_10 = StrOption(name="group", doc="group", default="root")
|
||||||
|
option_11 = StrOption(name="mode", doc="mode", default="0644")
|
||||||
|
option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_4), 'expected_1': ParamValue(["yes", "maybe"])})))
|
||||||
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
option_7.impl_set_information('manage', True)
|
||||||
|
option_6 = OptionDescription(name="services", doc="services", children=[option_7], properties=frozenset({"hidden"}))
|
||||||
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_6])
|
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version='1.0' encoding='UTF-8'?>
|
||||||
|
<rougail>
|
||||||
|
<services>
|
||||||
|
<service name="test">
|
||||||
|
<file name="/tmp/file1" filelist="afilllist"/>
|
||||||
|
</service>
|
||||||
|
</services>
|
||||||
|
<variables>
|
||||||
|
<family name="general">
|
||||||
|
<variable name="condition" type="string" description="No change">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="condition2" type="string" description="No change">
|
||||||
|
<value>yes</value>
|
||||||
|
</variable>
|
||||||
|
<variable name="test_variable" type="string" description="No change" hidden="True">
|
||||||
|
<value>no</value>
|
||||||
|
</variable>
|
||||||
|
</family>
|
||||||
|
</variables>
|
||||||
|
|
||||||
|
<constraints>
|
||||||
|
<condition name="disabled_if_not_in" source="condition">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
<condition name="disabled_if_in" source="condition2">
|
||||||
|
<param>yes</param>
|
||||||
|
<param>maybe</param>
|
||||||
|
<target type="variable">test_variable</target>
|
||||||
|
<target type="filelist">afilllist</target>
|
||||||
|
</condition>
|
||||||
|
</constraints>
|
||||||
|
</rougail>
|
||||||
|
<!-- vim: ts=4 sw=4 expandtab
|
||||||
|
-->
|
|
@ -0,0 +1 @@
|
||||||
|
{"rougail.general.condition": "no", "rougail.general.condition2": "yes", "services.test.files.file1.group": "root", "services.test.files.file1.mode": "0644", "services.test.files.file1.name": "/tmp/file1", "services.test.files.file1.owner": "root", "services.test.files.file1.source": "file1", "services.test.files.file1.templating": true, "services.test.files.file1.activate": false}
|
|
@ -0,0 +1,32 @@
|
||||||
|
from importlib.machinery import SourceFileLoader
|
||||||
|
from importlib.util import spec_from_loader, module_from_spec
|
||||||
|
loader = SourceFileLoader('func', 'tests/dictionaries/../eosfunc/test.py')
|
||||||
|
spec = spec_from_loader(loader.name, loader)
|
||||||
|
func = module_from_spec(spec)
|
||||||
|
loader.exec_module(func)
|
||||||
|
for key, value in dict(locals()).items():
|
||||||
|
if key != ['SourceFileLoader', 'func']:
|
||||||
|
setattr(func, key, value)
|
||||||
|
try:
|
||||||
|
from tiramisu3 import *
|
||||||
|
except:
|
||||||
|
from tiramisu import *
|
||||||
|
from rougail.tiramisu import ConvertDynOptionDescription
|
||||||
|
option_3 = StrOption(name="condition", doc="No change", default="no", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_4 = StrOption(name="condition2", doc="No change", default="yes", properties=frozenset({"mandatory", "normal"}))
|
||||||
|
option_5 = 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_3, todict=True), 'expected': ParamValue('yes'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_3, todict=True), 'expected': ParamValue('maybe'), 'reverse_condition': ParamValue(True)})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('yes')})), Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_4, todict=True), 'expected': ParamValue('maybe')}))}))
|
||||||
|
option_2 = OptionDescription(name="general", doc="general", children=[option_3, option_4, option_5], properties=frozenset({"normal"}))
|
||||||
|
option_1 = OptionDescription(name="rougail", doc="rougail", children=[option_2])
|
||||||
|
option_10 = StrOption(name="group", doc="group", default="root")
|
||||||
|
option_11 = StrOption(name="mode", doc="mode", default="0644")
|
||||||
|
option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["yes", "maybe"]), 'reverse_condition_0': ParamValue(True), 'condition_operator': ParamValue("OR"), 'condition_1': ParamOption(option_4), 'expected_1': ParamValue(["yes", "maybe"])})))
|
||||||
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
option_7.impl_set_information('manage', True)
|
||||||
|
option_6 = OptionDescription(name="services", doc="services", children=[option_7], properties=frozenset({"hidden"}))
|
||||||
|
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_6])
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file1")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file1")
|
option_14 = StrOption(name="source", doc="source", default="file1")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("oui"), 'condition_1': ParamOption(option_3), 'expected_1': ParamValue("maybe"), 'condition_operator': ParamValue("OR")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue(["oui", "maybe"]), 'condition_operator': ParamValue("OR")})))
|
||||||
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file1", doc="file1", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file")
|
option_14 = StrOption(name="source", doc="source", default="file")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(True)), kwargs={'default': ParamValue(False), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
|
||||||
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file")
|
option_14 = StrOption(name="source", doc="source", default="file")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(True)), kwargs={'default': ParamValue(False), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True)})))
|
||||||
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file")
|
option_14 = StrOption(name="source", doc="source", default="file")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(True)), kwargs={'default': ParamValue(False), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible"), 'condition_1': ParamOption(option_5), 'expected_1': ParamValue("oui"), 'condition_operator': ParamValue("OR")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("unpossible"), 'reverse_condition_0': ParamValue(True), 'condition_1': ParamOption(option_5), 'expected_1': ParamValue("oui"), 'reverse_condition_1': ParamValue(True), 'condition_operator': ParamValue("OR")})))
|
||||||
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
|
@ -23,7 +23,7 @@ option_12 = StrOption(name="name", doc="name", default="/tmp/file")
|
||||||
option_13 = StrOption(name="owner", doc="owner", default="root")
|
option_13 = StrOption(name="owner", doc="owner", default="root")
|
||||||
option_14 = StrOption(name="source", doc="source", default="file")
|
option_14 = StrOption(name="source", doc="source", default="file")
|
||||||
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
option_15 = BoolOption(name="templating", doc="templating", default=True)
|
||||||
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(True)), kwargs={'default': ParamValue(False), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("statique")})))
|
option_16 = BoolOption(name="activate", doc="activate", default=Calculation(func.calc_value, Params((ParamValue(False)), kwargs={'default': ParamValue(True), 'condition_0': ParamOption(option_3), 'expected_0': ParamValue("statique"), 'reverse_condition_0': ParamValue(True)})))
|
||||||
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
option_9 = OptionDescription(name="file", doc="file", children=[option_10, option_11, option_12, option_13, option_14, option_15, option_16])
|
||||||
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
option_8 = OptionDescription(name="files", doc="files", children=[option_9])
|
||||||
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
option_7 = OptionDescription(name="test", doc="test", children=[option_8])
|
||||||
|
|
Loading…
Reference in a new issue