Esempio n. 1
0
        protected override void Context()
        {
            _populationSimulationSettingsPresenter = A.Fake <IPopulationSimulationSettingsPresenter>();
            _applicationController        = A.Fake <IApplicationController>();
            _projectRetriever             = A.Fake <IPKSimProjectRetriever>();
            _simulationPersistableUpdater = A.Fake <ISimulationPersistableUpdater>();
            _project    = A.Fake <PKSimProject>();
            _compound1  = A.Fake <Compound>();
            _individual = A.Fake <Individual>();
            _human      = new Species().WithName(CoreConstants.Species.HUMAN);
            _rat        = new Species().WithName(CoreConstants.Species.RAT);
            _mouse      = new Species().WithName(CoreConstants.Species.MOUSE);
            A.CallTo(() => _individual.Species).Returns(_human);
            _populationSimulation = A.Fake <PopulationSimulation>();
            A.CallTo(() => _populationSimulation.Compounds).Returns(new[] { _compound1 });
            A.CallTo(() => _populationSimulation.Individual).Returns(_individual);
            _keyPathMapper      = A.Fake <IKeyPathMapper>();
            _entityPathResolver = A.Fake <IEntityPathResolver>();
            _userSettings       = A.Fake <ICoreUserSettings>();
            _originalSettings   = new OutputSelections();
            A.CallTo(() => _populationSimulation.OutputSelections).Returns(_originalSettings);

            _populationSimulation.Model      = new Model();
            _populationSimulation.Model.Root = new Container();
            _compound1.Name = "DRUG";
            var organism = new Organism();
            var peripheralVenousBlood         = new Container().WithName(CoreConstants.Organ.PeripheralVenousBlood);
            var venousBlood                   = new Container().WithName(CoreConstants.Organ.VenousBlood);
            var venousBloodPlasma             = new Container().WithName(CoreConstants.Compartment.Plasma).WithParentContainer(venousBlood);
            var drugPeripheralBlood           = new Container().WithName(_compound1.Name);
            var drugVenousBlood               = new Container().WithName(_compound1.Name);
            var periperhalVenousBloodObserver = new Observer {
                Name = CoreConstants.Observer.PLASMA_PERIPHERAL_VENOUS_BLOOD
            };

            drugPeripheralBlood.Add(periperhalVenousBloodObserver);
            var venousBloodObserver = new Observer {
                Name = CoreConstants.Observer.CONCENTRATION
            };

            drugVenousBlood.Add(venousBloodObserver);
            peripheralVenousBlood.Add(drugPeripheralBlood);
            venousBloodPlasma.Add(drugVenousBlood);
            organism.Add(peripheralVenousBlood);
            organism.Add(venousBlood);

            _populationSimulation.Model.Root.Add(organism);


            A.CallTo(() => _projectRetriever.Current).Returns(_project);
            A.CallTo(() => _applicationController.Start <ISimulationOutputSelectionPresenter <PopulationSimulation> >()).Returns(_populationSimulationSettingsPresenter);
            sut = new SimulationSettingsRetriever(_applicationController, _projectRetriever, _entityPathResolver, _keyPathMapper, _userSettings, _simulationPersistableUpdater);

            A.CallTo(() => _entityPathResolver.PathFor(periperhalVenousBloodObserver)).Returns("PERIPHERAL_OBSERVER");
            A.CallTo(() => _entityPathResolver.PathFor(venousBloodObserver)).Returns("VENOUS_BLOOD_OBSERVER");
        }
 public void AttachPresenter(IPopulationSimulationSettingsPresenter presenter)
 {
     _presenter = presenter;
 }