Esempio n. 1
0
        public IndividualTransporterDTO MapFrom(IndividualTransporter transporter, ISimulationSubject simulationSubject)
        {
            var dto = new IndividualTransporterDTO(transporter);

            UpdateExpressionParameters(dto, simulationSubject);
            return(dto);
        }
Esempio n. 2
0
        public void UpdateExpressionParameters(IndividualTransporterDTO individualTransporterDTO, ISimulationSubject simulationSubject)
        {
            var transporter = individualTransporterDTO.Transporter;

            individualTransporterDTO.ClearExpressionParameters();

            //Local parameters
            foreach (var transporterExpressionContainer in simulationSubject.AllMoleculeContainersFor <TransporterExpressionContainer>(transporter))
            {
                var organ = transporterExpressionContainer.LogicalContainer;
                var isInOrganWithLumenOrBrain = organ.IsOrganWithLumen() || organ.IsBrain();

                foreach (var parameter in transporterExpressionContainer.AllParameters())
                {
                    var expressionParameterDTO = _expressionParameterMapper.MapFrom(parameter);
                    expressionParameterDTO.TransporterExpressionContainer = transporterExpressionContainer;
                    expressionParameterDTO.IsInOrganWithLumenOrBrain      = isInOrganWithLumenOrBrain;
                    var direction = retrieveTransporterDirectionFor(transporterExpressionContainer, parameter, isInOrganWithLumenOrBrain);
                    expressionParameterDTO.TransportDirection = _transportDirectionRepository.ById(direction);
                    individualTransporterDTO.AddExpressionParameter(expressionParameterDTO);
                }
            }

            //Global parameters;
            foreach (var parameter in transporter.AllGlobalExpressionParameters)
            {
                var expressionParameter = _expressionParameterMapper.MapFrom(parameter);
                expressionParameter.TransporterExpressionContainer = parameter.IsNamed(REL_EXP_BLOOD_CELLS)
               ? transporter.BloodCellsContainer
               : transporter.VascularEndotheliumContainer;

                var direction = expressionParameter.TransporterExpressionContainer.TransportDirection;
                expressionParameter.TransportDirection = _transportDirectionRepository.ById(direction);
                individualTransporterDTO.AddExpressionParameter(expressionParameter);
            }

            var hasTemplateForSpecies = _transporterContainerTemplateRepository.HasTransporterTemplateFor(simulationSubject.Species.Name, transporter.Name);

            individualTransporterDTO.DefaultAvailableInDatabase = hasTemplateForSpecies;
        }
        protected override void Context()
        {
            _view                        = A.Fake <IIndividualTransporterExpressionsView>();
            _parameterTask               = A.Fake <IEditParameterPresenterTask>();
            _moleculeExpressionTask      = A.Fake <IMoleculeExpressionTask <Individual> >();
            _transporterMapper           = A.Fake <IIndividualTransporterToTransporterExpressionDTOMapper>();
            _moleculePropertiesPresenter = A.Fake <IIndividualMoleculePropertiesPresenter <Individual> >();
            _transporterExpressionParametersPresenter = A.Fake <ITransporterExpressionParametersPresenter>();
            sut = new IndividualTransporterExpressionsPresenter <Individual>(
                _view, _parameterTask, _moleculeExpressionTask, _transporterMapper, _moleculePropertiesPresenter,
                _transporterExpressionParametersPresenter);

            _commandCollector = new PKSimMacroCommand();
            sut.InitializeWith(_commandCollector);


            _transporter          = new IndividualTransporter();
            _simulationSubject    = new Individual();
            _transporterDTO       = new IndividualTransporterDTO(_transporter);
            sut.SimulationSubject = _simulationSubject;

            A.CallTo(() => _transporterMapper.MapFrom(_transporter, _simulationSubject)).Returns(_transporterDTO);
        }
 public void BindTo(IndividualTransporterDTO transporterExpressionDTO)
 {
     _screenBinder.BindToSource(transporterExpressionDTO);
 }
Esempio n. 5
0
 protected override void Because()
 {
     _dto = sut.MapFrom(_transporter, _simulationSubject);
 }