diff --git a/force_bdss/core/tests/test_verifier.py b/force_bdss/core/tests/test_verifier.py index 22b462f036849d10717d8eb2f79ed20bea0b8d07..7d6e2348b686357ee54e69123f495f667b5b41fe 100644 --- a/force_bdss/core/tests/test_verifier.py +++ b/force_bdss/core/tests/test_verifier.py @@ -44,9 +44,9 @@ class TestVerifier(unittest.TestCase): errors = verify_workflow(wf) self.assertEqual(len(errors), 3) self.assertEqual(errors[0].subject, wf.mco.parameters[0]) - self.assertIn("empty name", errors[0].error) + self.assertIn("Empty Name", errors[0].error) self.assertEqual(errors[1].subject, wf.mco.parameters[0]) - self.assertIn("empty type", errors[1].error) + self.assertIn("Empty Type", errors[1].error) def test_empty_kpi_options(self): wf = self.workflow @@ -59,8 +59,8 @@ class TestVerifier(unittest.TestCase): self.assertEqual(len(errors), 4) self.assertEqual(errors[1].subject, wf.mco.kpis[0]) - self.assertIn("KPI 0 has empty name", errors[1].error) - self.assertIn("KPI 0 has empty objective", errors[2].error) + self.assertIn("Empty Name", errors[1].error) + self.assertIn("Empty Objective", errors[2].error) def test_empty_execution_layer(self): wf = self.workflow diff --git a/force_bdss/core/verifier.py b/force_bdss/core/verifier.py index 92c16cb0cf0b5c6d81f45c959d9fdd543fbd067e..2526c4ebef08ba30946db12d86f97c6811f1795c 100644 --- a/force_bdss/core/verifier.py +++ b/force_bdss/core/verifier.py @@ -37,25 +37,28 @@ def _check_mco(workflow): error="MCO has no defined parameters")) for idx, param in enumerate(mco.parameters): - p_name = param.factory.name + factory_name = param.factory.name if param.name == '': errors.append(VerifierError(subject=param, - error="Parameter {} ({}) has empty " - "name".format(idx, p_name))) + error="Empty Name - Parameter {} " + "({})".format(idx, + factory_name))) + if len(param.type.strip()) == 0: errors.append(VerifierError(subject=param, - error="Parameter {} ({}) has empty " - "type".format(idx, p_name))) + error="Empty Type - Parameter {} " + "({})".format(idx, + factory_name))) for idx, kpi in enumerate(mco.kpis): if kpi.name == '': errors.append(VerifierError(subject=kpi, - error="KPI {} has empty name".format( + error="Empty Name - KPI {}".format( idx))) if kpi.objective == '': errors.append(VerifierError(subject=kpi, - error="KPI {} has empty " - "objective".format(idx))) + error="Empty Objective - " + "KPI {}".format(idx))) return errors