protected override void Context() { var pathParameterIndividual = "individual"; _pathParameterAdvanced = "advanced"; var anotherPath = "another"; sut = new RandomPopulation(); sut.SetAdvancedParameters(new AdvancedParameterCollection()); _baseIndividual = A.Fake <Individual>(); sut.Settings = new RandomPopulationSettings { BaseIndividual = _baseIndividual }; _entityPathResolver = A.Fake <IEntityPathResolver>(); _indvidualProperties = new IndividualProperties(); _indvidualProperties.AddParameterValue(new ParameterValue(pathParameterIndividual, 10, 0.1)); _indvidualProperties.AddParameterValue(new ParameterValue(_pathParameterAdvanced, 20, 0.2)); _oneAdvancedParameter = A.Fake <IParameter>().WithName("Advanced"); A.CallTo(() => _oneAdvancedParameter.IsChangedByCreateIndividual).Returns(false); _oneAdvancedParameter.Visible = true; _individualParameter = A.Fake <IParameter>().WithName("Individual"); A.CallTo(() => _individualParameter.IsChangedByCreateIndividual).Returns(true); _individualParameter.Visible = true; _anotherParameter = A.Fake <IParameter>().WithName("Another"); A.CallTo(() => _anotherParameter.IsChangedByCreateIndividual).Returns(true); _anotherParameter.Visible = true; A.CallTo(() => _entityPathResolver.PathFor(_oneAdvancedParameter)).Returns(_pathParameterAdvanced); A.CallTo(() => _entityPathResolver.PathFor(_individualParameter)).Returns(pathParameterIndividual); A.CallTo(() => _entityPathResolver.PathFor(_anotherParameter)).Returns(anotherPath); A.CallTo(() => _baseIndividual.GetAllChildren <IParameter>()).Returns(new[] { _individualParameter, _oneAdvancedParameter, _anotherParameter }); sut.AddIndividualProperties(_indvidualProperties); }
protected override void Context() { base.Context(); _individualProperties = new IndividualProperties { Covariates = new IndividualCovariates { Gender = new Gender(), Race = new SpeciesPopulation() } }; _individualProperties.AddParameterValue(new ParameterValue("PATH1", 5, 0.5)); _individualProperties.AddParameterValue(new ParameterValue("PATH2", 10, 0.8)); }
public IndividualProperties MapFrom(Individual individual, PathCache <IParameter> updatedParameters) { var individualProperties = new IndividualProperties { Covariates = new IndividualCovariates { Gender = individual.OriginData.Gender, Race = individual.OriginData.SpeciesPopulation } }; updatedParameters.KeyValues.Each(paraKey => individualProperties.AddParameterValue(parameterValueFrom(paraKey))); return(individualProperties); }