protected override void Context()
        {
            _view = A.Fake <ISimulationCompoundProtocolCollectorView>();
            _applicationController       = A.Fake <IApplicationController>();
            _configurableLayoutPresenter = A.Fake <IConfigurableLayoutPresenter>();
            _eventPublisher                 = A.Fake <IEventPublisher>();
            _protocolChartPresenter         = A.Fake <IProtocolChartPresenter>();
            _simulationBuildingBlockUpdater = A.Fake <ISimulationBuildingBlockUpdater>();

            sut = new SimulationCompoundProtocolCollectorPresenter(_view, _applicationController, _configurableLayoutPresenter,
                                                                   _eventPublisher, _protocolChartPresenter, _simulationBuildingBlockUpdater);

            _simulation = A.Fake <Simulation>();
            _compound1  = A.Fake <Compound>();
            _compound2  = A.Fake <Compound>();

            _subPresenter1 = A.Fake <ISimulationCompoundProtocolPresenter>();
            A.CallTo(() => _subPresenter1.SelectedProtocol).Returns(new SimpleProtocol().WithName("P1"));
            _subPresenter2 = A.Fake <ISimulationCompoundProtocolPresenter>();
            A.CallTo(() => _subPresenter2.SelectedProtocol).Returns(new SimpleProtocol().WithName("P2"));

            A.CallTo(() => _simulation.Compounds).Returns(new[] { _compound1, _compound2 });
            A.CallTo(() => _applicationController.Start <ISimulationCompoundProtocolPresenter>()).ReturnsNextFromSequence(_subPresenter1, _subPresenter2);
        }
 public void AttachPresenter(ISimulationCompoundProtocolPresenter presenter)
 {
     _presenter = presenter;
 }