예제 #1
0
        protected override void Context()
        {
            sut = new PopulationAnalysisFlatTableCreator();
            _populationDataCollector = A.Fake <PopulationSimulationComparison>();
            _populationAnalysis      = new PopulationPivotAnalysis();

            _ageField = new PopulationAnalysisParameterField {
                ParameterPath = "Path", Name = "Age"
            };
            _populationAnalysis.Add(_ageField);

            //add derived field age class
            var groupingDefinition = new FixedLimitsGroupingDefinition("Age");

            groupingDefinition.SetLimits(new[] { 14d }.OrderBy(x => x));
            groupingDefinition.AddItems(new[]
            {
                new GroupingItem {
                    Label = "Children", Color = Color.Blue
                },
                new GroupingItem {
                    Label = "Adults", Color = Color.Red
                }
            });
            _ageClassField = new PopulationAnalysisGroupingField(groupingDefinition)
            {
                Name = "AgeClass"
            };
            _populationAnalysis.Add(_ageClassField);

            _ageValues = new List <double> {
                8d, 14d, 21d
            };
            _ageClassValues = new[] { "Children", "Adults", "Adults" };
        }
 protected override void Context()
 {
     _populationAnalysis = new PopulationPivotAnalysis();
     _anotherField       = new PopulationAnalysisParameterField().WithName("NAME");
     sut = new PopulationAnalysisParameterField();
     _populationAnalysis.Add(_anotherField);
 }
예제 #3
0
        protected override void Context()
        {
            base.Context();
            _populationAnalysis = new PopulationPivotAnalysis();
            _dataField          = A.Fake <PopulationAnalysisDataField>().WithName("DATA");
            _derivedField       = A.Fake <PopulationAnalysisDerivedField>().WithName("DERIVED");

            A.CallTo(_templateTask).WithReturnType <PopulationAnalysisDerivedField>().Returns(_derivedField);
            _populationAnalysis.Add(_dataField);
        }
        public virtual void AddField(IPopulationAnalysisField populationAnalysisField)
        {
            if (populationAnalysisField == null)
            {
                return;
            }

            if (_populationAnalysis.Has(populationAnalysisField))
            {
                return;
            }

            _populationAnalysis.Add(populationAnalysisField);
            _eventPublisher.PublishEvent(new FieldAddedToPopulationAnalysisEvent(_populationAnalysis, populationAnalysisField));
            UpdateView();
        }
예제 #5
0
        protected override void Context()
        {
            _view = A.Fake <INumberOfBinsGroupingView>();
            _populationDataCollector = A.Fake <IPopulationDataCollector>();
            _populationAnalysis      = new PopulationPivotAnalysis();
            _field = A.Fake <PopulationAnalysisParameterField>().WithName("Field");
            A.CallTo(() => _field.CanBeUsedForGroupingIn(_populationDataCollector)).Returns(true);
            A.CallTo(() => _field.GetValues(_populationDataCollector)).Returns(_values);
            _populationAnalysis.Add(_field);
            _groupingLabelGenerator = A.Fake <IGroupingLabelGenerator>();
            _colorGradientGenerator = A.Fake <IColorGradientGenerator>();
            sut = new NumberOfBinsGroupingPresenter(_view, _groupingLabelGenerator, _colorGradientGenerator);

            //standard action for all tests
            _dimension         = A.Fake <IDimension>();
            _unit              = A.Fake <Unit>();
            _field.Dimension   = _dimension;
            _field.DisplayUnit = _unit;

            A.CallTo(() => _view.BindTo(A <BinSizeGroupingDTO> ._))
            .Invokes(x => _dto = x.GetArgument <BinSizeGroupingDTO>(0));
        }
        public override void GlobalContext()
        {
            base.GlobalContext();
            _populationAnalysis = new PopulationPivotAnalysis();

            _pkParameterField              = new PopulationAnalysisPKParameterField().WithName("PKParam");
            _pkParameterField.PKParameter  = "AUC";
            _pkParameterField.QuantityPath = "A|B|C";
            _pkParameterField.QuantityType = QuantityType.Drug;
            _pkParameterField.Dimension    = _dimensionRepository.MassConcentration;

            _parameterField = new PopulationAnalysisParameterField().WithName("Param");
            _parameterField.ParameterPath = "A|B|C|D";
            _parameterField.Dimension     = _dimensionRepository.Auc;

            _outputField = new PopulationAnalysisOutputField().WithName("Output");
            _outputField.QuantityPath = "A|B|C";
            _outputField.Dimension    = _dimensionRepository.Auc;
            _outputField.Color        = Color.Aquamarine;

            _genderField = new PopulationAnalysisCovariateField {
                Covariate = "Gender"
            }.WithName("Gender");
            var numberOfBinsGroupingDefinition = new NumberOfBinsGroupingDefinition(_parameterField.Name)
            {
                NumberOfBins = 2
            };

            numberOfBinsGroupingDefinition.NamingPattern = "AA";
            numberOfBinsGroupingDefinition.StartColor    = Color.AliceBlue;
            numberOfBinsGroupingDefinition.EndColor      = Color.RoyalBlue;
            numberOfBinsGroupingDefinition.Strategy      = LabelGenerationStrategies.Roman;
            numberOfBinsGroupingDefinition.AddItems(PopulationAnalysisHelperForSpecs.BMIGroups);
            _numberOfBinsDerivedField = new PopulationAnalysisGroupingField(numberOfBinsGroupingDefinition).WithName("NumberOfBins");

            var fixedLimitsGroupingDefinition = new FixedLimitsGroupingDefinition(_pkParameterField.Name);

            fixedLimitsGroupingDefinition.AddItems(PopulationAnalysisHelperForSpecs.AgeGroups);

            _fixedLimitsGroupingDefinitionField = new PopulationAnalysisGroupingField(fixedLimitsGroupingDefinition)
                                                  .WithName("FixedLimits");

            fixedLimitsGroupingDefinition.SetLimits(new[] { 1d, 2d }.OrderBy(x => x));

            _derivedFieldWithFixedExpression = new PopulationAnalysisExpressionField("A+B")
                                               .WithName("FixedExpression");


            var valueMappingGroupingDefinition = new ValueMappingGroupingDefinition(_genderField.Name);

            valueMappingGroupingDefinition.AddValueLabel("Male", PopulationAnalysisHelperForSpecs.GroupingItemMale);
            valueMappingGroupingDefinition.AddValueLabel("Female", PopulationAnalysisHelperForSpecs.GroupingItemFemale);
            var valueMappingGroupingDefinitionField = new PopulationAnalysisGroupingField(valueMappingGroupingDefinition).WithName("ValueMapping");

            _populationAnalysis.Add(_pkParameterField);
            _populationAnalysis.Add(_parameterField);
            _populationAnalysis.Add(_genderField);
            _populationAnalysis.Add(_numberOfBinsDerivedField);
            _populationAnalysis.Add(_fixedLimitsGroupingDefinitionField);
            _populationAnalysis.Add(_derivedFieldWithFixedExpression);
            _populationAnalysis.Add(valueMappingGroupingDefinitionField);
            _populationAnalysis.Add(_outputField);
        }