public void ValidateTest() { //Act Quest quest = new FakeQuest(); StubResponse response = new StubResponse(); IQuestValidator <StubResponse> firstValidator = MockRepository.GenerateStrictMock <IQuestValidator <StubResponse> >(); firstValidator. Expect(v => v.Validate(Arg <Quest> .Is.Equal(quest))). Repeat.Once(). Return(response); IQuestValidator <StubResponse> secondValidator = MockRepository.GenerateStrictMock <IQuestValidator <StubResponse> >(); secondValidator. Expect(v => v.Validate(Arg <Quest> .Is.Equal(quest))). Repeat.Once(). Return(response); CompositeQuestValidator <StubResponse> validator = new CompositeQuestValidator <StubResponse>(new [] { firstValidator, secondValidator }); //Arrange StubResponse returnedResponse = validator.Validate(quest); //Assert Assert.IsNotNull(returnedResponse); firstValidator.VerifyAllExpectations(); secondValidator.VerifyAllExpectations(); }
public void ValidateTest() { //Arrange Quest model = new FakeQuest(); ClarifiedResponse <int> response = new ClarifiedResponse <int>(); IQuestViewModel questViewModel = MockRepository.GenerateStrictMock <IQuestViewModel>(); questViewModel.Expect(qvm => qvm.Model). Repeat.Once(). Return(model); IQuestViewModelFactory vmFactory = MockRepository.GenerateStrictMock <IQuestViewModelFactory>(); vmFactory.Expect(vmf => vmf.CreateQuestViewModel()). Repeat.Once(). Return(questViewModel); IQuestValidator <ClarifiedResponse <int> > validator = MockRepository.GenerateStrictMock <IQuestValidator <ClarifiedResponse <int> > >(); validator.Expect(v => v.Validate(Arg <Quest> .Is.Equal(model))). Repeat.Once(). Return(response); MockQuestAbstractActionViewModel viewModel = new MockQuestAbstractActionViewModel(vmFactory, validator); //Act viewModel.Initialize(); ClarifiedResponse <int> actualResponse = viewModel.Validate(); //Assert Assert.IsNotNull(actualResponse); Assert.AreEqual(response, actualResponse); questViewModel.VerifyAllExpectations(); vmFactory.VerifyAllExpectations(); validator.VerifyAllExpectations(); }