From a9361422e1c40167d91771fc17bb91da617ebb29 Mon Sep 17 00:00:00 2001 From: James Johnson <jjohnson@enthought.com> Date: Thu, 5 Jul 2018 10:37:29 +0100 Subject: [PATCH] Added empty default to kpi specification, flake8 for verifier, test for default kpi --- force_bdss/core/kpi_specification.py | 2 +- force_bdss/core/tests/test_verifier.py | 10 ++++++---- force_bdss/core/verifier.py | 8 ++++---- 3 files changed, 11 insertions(+), 9 deletions(-) diff --git a/force_bdss/core/kpi_specification.py b/force_bdss/core/kpi_specification.py index f675939..003229b 100644 --- a/force_bdss/core/kpi_specification.py +++ b/force_bdss/core/kpi_specification.py @@ -8,4 +8,4 @@ class KPISpecification(HasStrictTraits): name = Identifier() #: The expected outcome of the procedure relative to this KPI. - objective = Enum("MINIMISE") + objective = Enum("", "MINIMISE") diff --git a/force_bdss/core/tests/test_verifier.py b/force_bdss/core/tests/test_verifier.py index 9727879..22b462f 100644 --- a/force_bdss/core/tests/test_verifier.py +++ b/force_bdss/core/tests/test_verifier.py @@ -34,7 +34,7 @@ class TestVerifier(unittest.TestCase): self.assertEqual(errors[0].subject, wf.mco) self.assertIn("no defined parameters", errors[0].error) - def test_parameters_empty_names(self): + def test_empty_parameter_options(self): wf = self.workflow mco_factory = self.plugin.mco_factories[0] wf.mco = mco_factory.create_model() @@ -48,17 +48,19 @@ class TestVerifier(unittest.TestCase): self.assertEqual(errors[1].subject, wf.mco.parameters[0]) self.assertIn("empty type", errors[1].error) - def test_kpis_empty_names(self): + def test_empty_kpi_options(self): wf = self.workflow mco_factory = self.plugin.mco_factories[0] wf.mco = mco_factory.create_model() - kpi = KPISpecification(name='', objective='MINIMISE') + kpi = KPISpecification(name='', objective='') wf.mco.kpis.append(kpi) errors = verify_workflow(wf) - self.assertEqual(len(errors), 3) + + 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) def test_empty_execution_layer(self): wf = self.workflow diff --git a/force_bdss/core/verifier.py b/force_bdss/core/verifier.py index 95f8880..5964bd9 100644 --- a/force_bdss/core/verifier.py +++ b/force_bdss/core/verifier.py @@ -122,8 +122,8 @@ def _check_data_source(data_source_model, layer_number): subject=data_source_model, error="Undefined name for input " "parameter {} from {} in layer {}".format(idx, - factory.name, - layer_number))) + factory.name, + layer_number))) if len(output_slots) != len(data_source_model.output_slot_info): errors.append(VerifierError( @@ -137,7 +137,7 @@ def _check_data_source(data_source_model, layer_number): subject=data_source_model, error="Undefined name for output " "parameter {} from {} in layer {}".format(idx, - factory.name, - layer_number))) + factory.name, + layer_number))) return errors -- GitLab