allow empty leadership
This commit is contained in:
parent
17db8caa5e
commit
7409062d7f
7 changed files with 59 additions and 0 deletions
|
@ -55,6 +55,8 @@ class Annotator(Walk):
|
|||
if hasattr(family, 'dynamic'):
|
||||
msg = _(f'the family "{family.name}" cannot be leadership and dynamic together')
|
||||
raise DictConsistencyError(msg, 31, family.xmlfiles)
|
||||
if not hasattr(family, 'variable'):
|
||||
continue
|
||||
for idx, variable in enumerate(family.variable.values()):
|
||||
if idx == 0:
|
||||
# it's a leader
|
||||
|
|
11
tests/dictionaries/10leadership_empty/00_base.xml
Normal file
11
tests/dictionaries/10leadership_empty/00_base.xml
Normal file
|
@ -0,0 +1,11 @@
|
|||
<?xml version='1.0' encoding='UTF-8'?>
|
||||
<rougail version="0.10">
|
||||
<services>
|
||||
<service name="tata">
|
||||
</service>
|
||||
</services>
|
||||
<variables>
|
||||
<family name="empty_leader" leadership="True">
|
||||
</family>
|
||||
</variables>
|
||||
</rougail>
|
0
tests/dictionaries/10leadership_empty/__init__.py
Normal file
0
tests/dictionaries/10leadership_empty/__init__.py
Normal file
10
tests/dictionaries/10leadership_empty/makedict/after.json
Normal file
10
tests/dictionaries/10leadership_empty/makedict/after.json
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"services.tata_service.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.tata_service.manage": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
}
|
||||
}
|
4
tests/dictionaries/10leadership_empty/makedict/base.json
Normal file
4
tests/dictionaries/10leadership_empty/makedict/base.json
Normal file
|
@ -0,0 +1,4 @@
|
|||
{
|
||||
"services.tata_service.activate": true,
|
||||
"services.tata_service.manage": true
|
||||
}
|
10
tests/dictionaries/10leadership_empty/makedict/before.json
Normal file
10
tests/dictionaries/10leadership_empty/makedict/before.json
Normal file
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"services.tata_service.activate": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
},
|
||||
"services.tata_service.manage": {
|
||||
"owner": "default",
|
||||
"value": true
|
||||
}
|
||||
}
|
22
tests/dictionaries/10leadership_empty/tiramisu/base.py
Normal file
22
tests/dictionaries/10leadership_empty/tiramisu/base.py
Normal file
|
@ -0,0 +1,22 @@
|
|||
from importlib.machinery import SourceFileLoader as _SourceFileLoader
|
||||
from importlib.util import spec_from_loader as _spec_from_loader, module_from_spec as _module_from_spec
|
||||
class func:
|
||||
pass
|
||||
_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 function in dir(_func):
|
||||
if function.startswith('_'):
|
||||
continue
|
||||
setattr(func, function, getattr(_func, function))
|
||||
try:
|
||||
from tiramisu3 import *
|
||||
except:
|
||||
from tiramisu import *
|
||||
option_1 = OptionDescription(name="rougail", doc="rougail", children=[])
|
||||
option_4 = BoolOption(name="activate", doc="activate", default=True)
|
||||
option_5 = BoolOption(name="manage", doc="manage", default=True)
|
||||
option_3 = OptionDescription(name="tata_service", doc="tata.service", children=[option_4, option_5])
|
||||
option_2 = OptionDescription(name="services", doc="services", children=[option_3], properties=frozenset({"hidden"}))
|
||||
option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[option_1, option_2])
|
Loading…
Reference in a new issue