Skip to content
Snippets Groups Projects
Commit d264631d authored by Alex Wiens's avatar Alex Wiens
Browse files

Prule: Fix scalar output value check

parent af58bb25
No related branches found
No related tags found
No related merge requests found
...@@ -1157,7 +1157,17 @@ def rule_evaluate(rule: dict, rinput: dict, job_meta: dict, check_requirements: ...@@ -1157,7 +1157,17 @@ def rule_evaluate(rule: dict, rinput: dict, job_meta: dict, check_requirements:
log.print(log.debug, locals[rule["output_scalar"]]) log.print(log.debug, locals[rule["output_scalar"]])
if isinstance(locals[rule["output_scalar"]], prule.builtin.Data): if isinstance(locals[rule["output_scalar"]], prule.builtin.Data):
log.print(log.debug, locals[rule["output_scalar"]].array) log.print(log.debug, locals[rule["output_scalar"]].array)
output["scalar"] = float(locals[rule["output_scalar"]].array) scalar_tmp = locals[rule["output_scalar"]].array
if hasattr(scalar_tmp, 'magnitude') == True:
scalar_tmp = scalar_tmp.magnitude
if len(scalar_tmp) == 1:
scalar_tmp = float(scalar_tmp)
else:
error = True
error_msg = "Error on converting scalar output value {} for rule {}: multiple values: {} in variable of type {}".format(rule["output_scalar"], rule["name"], len(scalar_tmp), type(scalar_tmp))
output["errors"].append(error_msg)
log.print(log.error, error_msg)
output["scalar"] = None
else: else:
try: try:
scalar_value = float(locals[rule["output_scalar"]]) scalar_value = float(locals[rule["output_scalar"]])
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment