Skip to content
Snippets Groups Projects
Commit 35bae43e authored by Stefano Borini's avatar Stefano Borini
Browse files

Fixed tests

parent 5b32a056
No related branches found
No related tags found
1 merge request!68Introduced data value object
......@@ -3,14 +3,11 @@ from .ids import bundle_id, plugin_id # noqa
from .core.data_value import DataValue # noqa
from .data_sources.base_data_source_model import BaseDataSourceModel # noqa
from .data_sources.data_source_result import DataSourceResult # noqa
from .data_sources.data_source_parameters import DataSourceParameters # noqa
from .data_sources.base_data_source import BaseDataSource # noqa
from .data_sources.base_data_source_bundle import BaseDataSourceBundle # noqa
from .data_sources.i_data_source_bundle import IDataSourceBundle # noqa
from .kpi.base_kpi_calculator import BaseKPICalculator # noqa
from .kpi.kpi_calculator_result import KPICalculatorResult # noqa
from .kpi.base_kpi_calculator_model import BaseKPICalculatorModel # noqa
from .kpi.base_kpi_calculator_bundle import BaseKPICalculatorBundle # noqa
from .kpi.i_kpi_calculator_bundle import IKPICalculatorBundle # noqa
......
......@@ -37,12 +37,12 @@ class CoreEvaluationDriver(BaseCoreDriver):
for ds_model in workflow.data_sources:
ds_bundle = ds_model.bundle
data_source = ds_bundle.create_data_source()
ds_results.append(data_source.run(ds_model, mco_data_values))
ds_results.extend(data_source.run(ds_model, mco_data_values))
kpi_results = []
for kpic_model in workflow.kpi_calculators:
kpic_bundle = kpic_model.bundle
kpi_calculator = kpic_bundle.create_kpi_calculator()
kpi_results.append(kpi_calculator.run(kpic_model, ds_results))
kpi_results.extend(kpi_calculator.run(kpic_model, ds_results))
mco_communicator.send_to_mco(mco_model, kpi_results)
......@@ -18,5 +18,5 @@ class CSVExtractorDataSource(BaseDataSource):
)
]
return None
return None
return []
return []
import unittest
from force_bdss.core.data_value import DataValue
from force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_data_source \
import CSVExtractorDataSource
from force_bdss.core_plugins.dummy.csv_extractor.csv_extractor_model import \
CSVExtractorModel
from force_bdss.data_sources.base_data_source_bundle import \
BaseDataSourceBundle
from force_bdss.data_sources.data_source_result import DataSourceResult
from force_bdss.tests import fixtures
try:
......@@ -27,7 +27,11 @@ class TestCSVExtractorDataSource(unittest.TestCase):
ds = CSVExtractorDataSource(self.bundle)
model = CSVExtractorModel(self.bundle)
model.filename = fixtures.get("foo.csv")
mock_params = mock.Mock()
mock_params.values = [1.0]
model.row = 3
model.column = 5
mock_params = []
result = ds.run(model, mock_params)
self.assertIsInstance(result, DataSourceResult)
self.assertIsInstance(result, list)
self.assertEqual(len(result), 1)
self.assertIsInstance(result[0], DataValue)
self.assertEqual(result[0].value, 42)
......@@ -17,8 +17,6 @@ class DummyDakotaCommunicator(BaseMCOCommunicator):
for type_, name, value in zip(
value_types, value_names, values)]
def send_to_mco(self, model, kpi_results):
data = " ".join(
[" ".join(list(map(str, r.values.tolist()))) for r in kpi_results]
)
def send_to_mco(self, model, data_values):
data = " ".join([str(dv.value) for dv in data_values])
sys.stdout.write(data)
......@@ -9,7 +9,6 @@ from envisage.plugin import Plugin
from force_bdss.core_plugins.dummy.dummy_dakota.dakota_bundle import (
DummyDakotaBundle)
from force_bdss.data_sources.data_source_parameters import DataSourceParameters
from force_bdss.mco.parameters.base_mco_parameter_factory import \
BaseMCOParameterFactory
......@@ -31,7 +30,7 @@ class TestDakotaCommunicator(unittest.TestCase):
stdin.read.return_value = "1"
data = comm.receive_from_mco(model)
self.assertIsInstance(data, DataSourceParameters)
self.assertEqual(len(data.value_names), 1)
self.assertEqual(len(data.value_types), 1)
self.assertEqual(len(data.values), 1)
self.assertIsInstance(data, list)
self.assertEqual(len(data), 1)
self.assertEqual(data[0].value, 1)
self.assertEqual(data[0].type, "")
from force_bdss.api import BaseKPICalculator, bundle_id
from force_bdss.api import BaseKPICalculator
class DummyKPICalculator(BaseKPICalculator):
id = bundle_id("enthought", "dummy_kpi_calculator")
def run(self, model, data_source_results):
return data_source_results
......@@ -4,12 +4,12 @@ from force_bdss.api import BaseKPICalculator, DataValue
class KPIAdderCalculator(BaseKPICalculator):
def run(self, model, data_source_results):
sum = 0.0
for ds_res in data_source_results:
for res in ds_res:
if res.type != model.cuba_type_in:
continue
sum += res.value
for res in data_source_results:
if res.type != model.cuba_type_in:
continue
sum += res.value
return [
DataValue(
......
......@@ -53,7 +53,7 @@ class NullMCOCommunicator(BaseMCOCommunicator):
pass
def receive_from_mco(self, model):
pass
return []
class NullMCOBundle(BaseMCOBundle):
......@@ -78,7 +78,7 @@ class NullKPICalculatorModel(BaseKPICalculatorModel):
class NullKPICalculator(BaseKPICalculator):
def run(self, model, data_source_results):
pass
return []
class NullKPICalculatorBundle(BaseKPICalculatorBundle):
......@@ -95,7 +95,7 @@ class NullDataSourceModel(BaseDataSourceModel):
class NullDataSource(BaseDataSource):
def run(self, model, parameters):
pass
return []
class NullDataSourceBundle(BaseDataSourceBundle):
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment