from importlib.machinery import SourceFileLoader as _SourceFileLoader from importlib.util import spec_from_loader as _spec_from_loader, module_from_spec as _module_from_spec class func: pass def _load_functions(path): global _SourceFileLoader, _spec_from_loader, _module_from_spec, func loader = _SourceFileLoader('func', path) spec = _spec_from_loader(loader.name, loader) func_ = _module_from_spec(spec) loader.exec_module(func_) for function in dir(func_): if function.startswith('_'): continue setattr(func, function, getattr(func_, function)) _load_functions('tests/dictionaries/../eosfunc/test.py') try: from tiramisu4 import * except: from tiramisu import * option_1 = StrOption(name="my_var1", doc="my_var1", default="no", properties=frozenset({"mandatory", "normal"})) option_2 = StrOption(name="my_var2", doc="my_var2", default="no", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_1, notraisepropertyerror=True), 'expected': ParamValue("no")}), func.calc_value_property_help)})) option_3 = StrOption(name="my_var3", doc="my_var3", default="no", properties=frozenset({"mandatory", "normal", Calculation(func.calc_value, Params(ParamValue('disabled'), kwargs={'condition': ParamOption(option_2, notraisepropertyerror=True), 'expected': ParamValue("no")}), func.calc_value_property_help)})) optiondescription_4 = OptionDescription(name="rougail", doc="Rougail", children=[option_1, option_2, option_3]) option_0 = OptionDescription(name="baseoption", doc="baseoption", children=[optiondescription_4])