Exemple #1
0
        public static PivotResult CreatePivotResult(PopulationPivotAnalysis pivotAnalysis, Aggregate aggregate,
                                                    PopulationAnalysisCovariateField genderFielder,
                                                    PopulationAnalysisCovariateField raceField,
                                                    PopulationAnalysisParameterField bmiField,
                                                    PopulationAnalysisPKParameterField cmaxField)
        {
            var pivotResultCreator = new PivotResultCreator(new Pivoter(), new PopulationAnalysisFlatTableCreator());

            var populationSimulation = A.Fake <IPopulationDataCollector>();

            A.CallTo(() => populationSimulation.NumberOfItems).Returns(3);

            //thin, thin,  big
            A.CallTo(() => populationSimulation.AllValuesFor(bmiField.ParameterPath)).Returns(new List <double> {
                10, 20, 30
            });
            A.CallTo(() => populationSimulation.AllCovariateValuesFor(genderFielder.Covariate)).Returns(new List <string> {
                "Male", "Female", "Male"
            });
            A.CallTo(() => populationSimulation.AllCovariateValuesFor(raceField.Covariate)).Returns(new List <string> {
                "US", "EU", "EU"
            });
            A.CallTo(() => populationSimulation.AllPKParameterValuesFor(cmaxField.QuantityPath, cmaxField.PKParameter)).Returns(new List <double> {
                900, 600, 1000
            });
            A.CallTo(() => populationSimulation.AllSimulationNames).Returns(new List <string> {
                "Sim", "Sim", "Sim"
            });

            return(pivotResultCreator.Create(pivotAnalysis, populationSimulation, new ObservedDataCollection(), aggregate));
        }
Exemple #2
0
        public static PivotResult CreateOutputResults(PopulationPivotAnalysis analysis, PopulationAnalysisCovariateField genderField, PopulationAnalysisOutputField outputField1,
                                                      PopulationAnalysisOutputField outputField2,
                                                      ObservedDataCollection observedDataCollection = null)
        {
            var populationSimulation = A.Fake <IPopulationDataCollector>();

            var pivotResultCreator = new PivotResultCreator(new Pivoter(), new PopulationAnalysisFlatTableCreator());
            //simulation with 4 time points
            var time = new QuantityValues {
                Values = new float[] { 1, 2, 3, 4 }
            };
            var output11 = createValues(time, 10, 20, 30, 40);
            var output12 = createValues(time, 100, 200, 300, 400);
            var output13 = createValues(time, 1000, 2000, 3000, 4000);
            var output21 = createValues(time, 50, 60, 70, 80);
            var output22 = createValues(time, 500, 600, 700, 800);
            var output23 = createValues(time, 5000, 6000, 7000, 8000);

            A.CallTo(() => populationSimulation.NumberOfItems).Returns(3);
            A.CallTo(() => populationSimulation.AllCovariateValuesFor(CoreConstants.Covariates.GENDER)).Returns(new List <string> {
                "Male", "Female", "Male"
            });
            A.CallTo(() => populationSimulation.AllOutputValuesFor(outputField1.QuantityPath)).Returns(new List <QuantityValues> {
                output11, output12, output13
            });
            A.CallTo(() => populationSimulation.AllOutputValuesFor(outputField2.QuantityPath)).Returns(new List <QuantityValues> {
                output21, output22, output23
            });
            A.CallTo(() => populationSimulation.AllSimulationNames).Returns(new List <string> {
                "Sim", "Sim", "Sim"
            });


            if (observedDataCollection == null)
            {
                observedDataCollection = new ObservedDataCollection();
            }

            return(pivotResultCreator.Create(analysis, populationSimulation, observedDataCollection, AggregationFunctions.QuantityAggregation));
        }