コード例 #1
0
        protected override void Context()
        {
            base.Context();
            _parameterIdentification = new ParameterIdentification();
            _simulationResult        = DomainHelperForSpecs.SimulationDataRepositoryFor("SIM");
            var runResult = new ParameterIdentificationRunResult();

            runResult.BestResult.AddResult(_simulationResult);
            _parameterIdentification.AddResult(runResult);
        }
コード例 #2
0
        protected override void Context()
        {
            _chartDisplayView    = A.Fake <IChartDisplayView>();
            _curveBinderFactory  = A.Fake <ICurveBinderFactory>();
            _exceptionManager    = A.Fake <IExceptionManager>();
            _dimensionFactory    = A.Fake <IDimensionFactory>();
            _axisBinderFactory   = A.Fake <IAxisBinderFactory>();
            _dataModeMapper      = A.Fake <ICurveToDataModeMapper>();
            _contextMenuFactory  = A.Fake <IViewItemContextMenuFactory>();
            _chartExportTask     = A.Fake <ICurveChartExportTask>();
            _applicationSettings = A.Fake <IApplicationSettings>();

            sut = new ChartDisplayPresenter(_chartDisplayView, _curveBinderFactory, _contextMenuFactory, _axisBinderFactory, _dataModeMapper, _chartExportTask, _applicationSettings);
            var dataRepository = DomainHelperForSpecs.SimulationDataRepositoryFor("Sim");

            A.CallTo(() => _dimensionFactory.MergedDimensionFor(A <DataColumn> ._)).ReturnsLazily(x => x.GetArgument <DataColumn>(0).Dimension);

            _curve = new Curve();
            _curve.SetxData(dataRepository.BaseGrid, _dimensionFactory);
            _curve.SetyData(dataRepository.AllButBaseGrid().First(), _dimensionFactory);

            A.CallTo(_curveBinderFactory).WithReturnType <ICurveBinder>().ReturnsLazily(x =>
            {
                var curve       = x.GetArgument <Curve>(0);
                var curveBinder = A.Fake <ICurveBinder>();
                A.CallTo(() => curveBinder.SeriesIds).Returns(SeriesIdsFor(curve));
                A.CallTo(() => curveBinder.LLOQ).Returns(LLOQFor(curve));
                A.CallTo(() => curveBinder.ContainsSeries(curve.Id)).Returns(true);
                A.CallTo(() => curveBinder.Id).Returns(curve.Id);
                A.CallTo(() => curveBinder.Curve).Returns(curve);
                return(curveBinder);
            });

            _curveChart = new CurveChart();
            _curveChart.AddAxis(new Axis(AxisTypes.X)
            {
                Dimension = _curve.xDimension
            });
            _curveChart.AddAxis(new Axis(AxisTypes.Y)
            {
                Dimension = _curve.yDimension
            });

            _xAxisBinder = createAxisBinderFor(_curveChart.AxisBy(AxisTypes.X));
            _yAxisBinder = createAxisBinderFor(_curveChart.AxisBy(AxisTypes.Y));

            A.CallTo(() => _axisBinderFactory.Create(_curveChart.AxisBy(AxisTypes.X), _chartDisplayView.ChartControl, _curveChart)).Returns(_xAxisBinder);
            A.CallTo(() => _axisBinderFactory.Create(_curveChart.AxisBy(AxisTypes.Y), _chartDisplayView.ChartControl, _curveChart)).Returns(_yAxisBinder);

            SetupChart();
            sut.Edit(_curveChart);
        }
コード例 #3
0
        protected override void Context()
        {
            //Only testing the common behavior of Residual Calculator. Specific tests needs to be written for each calculator implementation
            //sut = new ResidualCalculatorForOnlyObservedData(_timeGridRestrictor, _dimensionFactory);

            _simulationResults        = DomainHelperForSpecs.SimulationDataRepositoryFor("Sim");
            _simulationDataColumn     = _simulationResults.AllButBaseGrid().First();
            _simulationRunResultsList = new List <SimulationRunResults> {
                new SimulationRunResults(true, Enumerable.Empty <SolverWarning>(), _simulationResults)
            };

            _observedData       = DomainHelperForSpecs.ObservedDataRepository2WithLLOQ().WithName("Obs");
            _observedDataColumn = _observedData.AllButBaseGrid().First();

            UpdateObservedDataValues();

            _timeGridRestrictor = A.Fake <ITimeGridRestrictor>();
            //Returns all values of the observed data array. We do not test the time grid restrictor here!
            A.CallTo(_timeGridRestrictor).WithReturnType <IReadOnlyList <int> >().Returns(Enumerable.Range(0, _observedDataColumn.Values.Count).ToList());

            _mergedDimension  = A.Fake <IDimension>();
            _dimensionFactory = A.Fake <IDimensionFactory>();
            A.CallTo(() => _dimensionFactory.MergedDimensionFor(_simulationDataColumn)).Returns(_mergedDimension);


            _outputMappings = new List <OutputMapping>();
            _outputMapping  = A.Fake <OutputMapping>();
            _fullOutputPath = _simulationDataColumn.QuantityInfo.PathAsString;
            A.CallTo(() => _outputMapping.FullOutputPath).Returns(_fullOutputPath);

            _outputMapping.Weight = 1f;
            _outputMapping.WeightedObservedData = new WeightedObservedData(_observedData);
            _weights = _outputMapping.WeightedObservedData.Weights;

            _outputMappings.Add(_outputMapping);
            for (int i = 0; i < _observedDataColumn.Values.Count; i++)
            {
                _outputMapping.WeightedObservedData.Weights[i] = 1f;
                A.CallTo(() => _mergedDimension.UnitValueToBaseUnitValue(_observedDataColumn.Dimension.BaseUnit, _observedDataColumn.Values[i])).Returns(_observedDataColumn.Values[i]);
            }

            A.CallTo(() => _mergedDimension.UnitValueToBaseUnitValue(_observedDataColumn.Dimension.BaseUnit, float.NaN)).Returns(float.NaN);
            A.CallTo(() => _mergedDimension.UnitValueToBaseUnitValue(_observedDataColumn.Dimension.BaseUnit, _observedDataColumn.DataInfo.LLOQ.Value)).Returns(_observedDataColumn.DataInfo.LLOQ.Value);
        }
コード例 #4
0
        protected override void Context()
        {
            _dialogCreator      = A.Fake <IDialogCreator>();
            _dataRepositoryTask = A.Fake <IDataRepositoryTask>();
            _dimensionFactory   = A.Fake <IDimensionFactory>();
            sut = new CurveChartExportTask(_dialogCreator, _dataRepositoryTask, _dimensionFactory);

            var dataRepository = DomainHelperForSpecs.SimulationDataRepositoryFor("Sim");

            _curve = new Curve();
            _curve.SetxData(dataRepository.BaseGrid, _dimensionFactory);
            var dataColumn = dataRepository.AllButBaseGrid().First();

            _curve.SetyData(dataColumn, _dimensionFactory);

            _mergedDimensionDataColum = A.Fake <IDimension>();
            A.CallTo(() => _dimensionFactory.MergedDimensionFor(dataRepository.BaseGrid)).Returns(dataRepository.BaseGrid.Dimension);
            A.CallTo(() => _dimensionFactory.MergedDimensionFor(dataColumn)).Returns(_mergedDimensionDataColum);
        }
コード例 #5
0
        protected override void Context()
        {
            _quantityPathToQuantityDisplayPathMapper = A.Fake <IQuantityPathToQuantityDisplayPathMapper>();
            sut             = new CurveNamer(_quantityPathToQuantityDisplayPathMapper);
            _simulation     = A.Fake <ISimulation>().WithName("simulationName");
            _dataRepository = DomainHelperForSpecs.SimulationDataRepositoryFor(_simulation.Name);
            _dataColumn     = _dataRepository.AllButBaseGrid().First();

            A.CallTo(() => _quantityPathToQuantityDisplayPathMapper.DisplayPathAsStringFor(_simulation, _dataColumn, true)).ReturnsLazily(() => $"{_simulation.Name}:{_dataColumn.Name}");

            _curveChart       = new CurveChart();
            _dimensionFactory = A.Fake <IDimensionFactory>();
            _curve            = _curveChart.CreateCurve(_dataRepository.BaseGrid, _dataColumn, $"{_simulation.Name}:{_dataColumn.Name}", _dimensionFactory);
            _anotherCurve     = _curveChart.CreateCurve(_dataRepository.BaseGrid, _dataColumn, "AnotherColumnName", _dimensionFactory);
            _curveChart.AddCurve(_curve);
            _curveChart.AddCurve(_anotherCurve);
            _charts = new List <CurveChart> {
                _curveChart
            };
        }
コード例 #6
0
        protected override void Context()
        {
            base.Context();
            _simulation = A.Fake <ISimulation>();
            _project    = A.Fake <IProject>();
            _parameterIdentification = new ParameterIdentification();

            A.CallTo(() => _executionContext.Project).Returns(_project);
            A.CallTo(() => _project.AllParameterIdentifications).Returns(new[] { _parameterIdentification });

            _parameterIdentification.AddSimulation(_simulation);

            _initialObjectPath = new ObjectPath("oldName", "path");
            var parameterIdentificationRunResult = new ParameterIdentificationRunResult {
                BestResult = new OptimizationRunResult()
            };

            _simulationDataRepository  = DomainHelperForSpecs.SimulationDataRepositoryFor("oldName");
            _observationDataRepository = DomainHelperForSpecs.ObservedData();

            _observationDataRepository.AllButBaseGrid().Each(x => x.QuantityInfo.Path = _initialObjectPath);
            _simulationDataRepository.AllButBaseGrid().Each(x => x.QuantityInfo.Path  = _initialObjectPath);

            parameterIdentificationRunResult.BestResult.AddResult(_simulationDataRepository);
            _residualsResult = new ResidualsResult();
            _residualsResult.AddOutputResiduals(_initialObjectPath.PathAsString, _observationDataRepository, new List <Residual> {
                new Residual(0, 1, 1)
            });

            parameterIdentificationRunResult.BestResult.ResidualsResult = _residualsResult;
            _parameterIdentification.AddResult(parameterIdentificationRunResult);

            var outputMapping = new OutputMapping
            {
                WeightedObservedData = new WeightedObservedData(_observationDataRepository),
                OutputSelection      = new ParameterSelection(_simulation, _initialObjectPath.PathAsString)
            };

            _parameterIdentification.AddOutputMapping(outputMapping);
        }
コード例 #7
0
        protected override void Context()
        {
            _view                  = A.Fake <ICurveSettingsView>();
            _dimensionFactory      = A.Fake <IDimensionFactory>();
            _applicationController = A.Fake <IApplicationController>();
            _chart                 = new CurveChart();
            A.CallTo(() => _dimensionFactory.MergedDimensionFor(A <IWithDimension> ._)).ReturnsLazily(x => x.GetArgument <IWithDimension>(0).Dimension);

            var dataRepo1 = DomainHelperForSpecs.SimulationDataRepositoryFor("Sim1");

            _datColumn1 = dataRepo1.FirstDataColumn();

            var dataRepo2 = DomainHelperForSpecs.SimulationDataRepositoryFor("Sim2");

            _datColumn2 = dataRepo2.FirstDataColumn();

            _curve1 = new Curve();
            _curve1.SetxData(dataRepo1.BaseGrid, _dimensionFactory);
            _curve1.SetyData(_datColumn1, _dimensionFactory);

            _curve2 = new Curve();
            _curve2.SetxData(dataRepo2.BaseGrid, _dimensionFactory);
            _curve2.SetyData(_datColumn2, _dimensionFactory);

            _chart.AddCurve(_curve1);
            _chart.AddCurve(_curve2);

            sut = new CurveSettingsPresenter(_view, _dimensionFactory, _applicationController);

            A.CallTo(() => _view.BindTo(A <IEnumerable <CurveDTO> > ._))
            .Invokes(x =>
            {
                _allCurveDTOs = x.GetArgument <IEnumerable <CurveDTO> >(0).ToList();
                _curveDTO1    = _allCurveDTOs.FirstOrDefault();
            });

            sut.Edit(_chart);
        }