public void SunnyDay() { //Arrange FirstPresenter firstPresenter = new FirstPresenter(); SecondPresenter secondPresenter = new SecondPresenter(); var mockFirstView = MockRepository.GenerateStub <IFirstView>(); var mockSecondView = MockRepository.GenerateStub <ISecondView>(); var mockMainView = MockRepository.GenerateStub <IMainView>(); mockMainView.Stub(m => m.FirstView).Return(mockFirstView); mockMainView.Stub(m => m.SecondView).Return(mockSecondView); //Act var sut = new MainPresenter { FirstPresenter = firstPresenter, SecondPresenter = secondPresenter, View = mockMainView, }; sut.Init(); //Assert Assert.That(firstPresenter.View, Is.SameAs(mockFirstView)); Assert.That(secondPresenter.View, Is.SameAs(mockSecondView)); Assert.That(sut.View, Is.SameAs(mockMainView)); Assert.That(mockFirstView.Presenter, Is.SameAs(firstPresenter)); Assert.That(mockSecondView.Presenter, Is.SameAs(secondPresenter)); Assert.That(mockMainView.Presenter, Is.SameAs(sut)); }
protected override void InitPresenter() { if (FirstPresenter == null) { throw new InvalidOperationException(); } if (SecondPresenter == null) { throw new InvalidOperationException(); } FirstPresenter.View = View.FirstView; FirstPresenter.Init(); SecondPresenter.View = View.SecondView; SecondPresenter.Init(); }