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)); }
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)); }