public RoundViewModelTest() { _quizzes = GenerateQuizzesList(); _selectedQuizIndex = _random.Next(_quizzes.Count); _selectedQuiz = _quizzes[_selectedQuizIndex]; _selectedRoundIndex = _random.Next(_selectedQuiz.QuizRounds.Count); _selectedRound = _selectedQuiz.QuizRounds[_selectedRoundIndex]; _quizServiceMock = new Mock <IQuizService>(); _quizServiceMock.Setup(qS => qS.GetAllQuizzes()).ReturnsAsync(_quizzes); _quizServiceMock.Setup(qS => qS.DeleteQuiz(It.IsAny <int>())).ReturnsAsync(true); _quizServiceMock.Setup(qS => qS.EditQuiz(It.IsAny <int>(), It.IsAny <Quiz>())).ReturnsAsync(true); _roundServiceMock = new Mock <IRoundService>(); _roundServiceMock.Setup(rS => rS.EditRound(It.IsAny <int>(), It.IsAny <Round>())).ReturnsAsync(true); _navigationServiceExMock = new Mock <INavigationServiceEx>(); _navigationServiceExMock.Setup(nS => nS.GoBack()).Returns(true); _navigationServiceExMock.Setup(nS => nS.Navigate(It.IsAny <string>(), It.IsAny <object>(), It.IsAny <NavigationTransitionInfo>())).Returns(true); _messengerCacheMock = new Mock <IMessengerCache>(); _messengerCacheMock.Setup(mC => mC.CachedSelectedQuiz).Returns(_selectedQuiz); _messengerCacheMock.Setup(mC => mC.CachedSelectedRound).Returns(_selectedRound); _sender = new QuizzenViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object); _sender.EditQuizCommand.Execute(_selectedQuizIndex); _intermediate = new EditQuizViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object, _messengerCacheMock.Object); _intermediate.NavigateToRoundCommand.Execute(_selectedRound); _sut = new RoundViewModel(_roundServiceMock.Object, _navigationServiceExMock.Object, _messengerCacheMock.Object); }
public void Constructor_ShouldLoadAllQuizzes() { //Act var sut = new QuizzenViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object); //Assert Assert.Equal(_quizzes, sut.Quizzes); _quizServiceMock.Verify(qS => qS.GetAllQuizzes(), Times.AtLeastOnce); //Normally it's once but since the ViewModel is created in the Constructor of this test it's twice }
public QuizzenViewModelTest() { _quizzes = GenerateQuizzesList(); _quizServiceMock = new Mock <IQuizService>(); _quizServiceMock.Setup(qS => qS.GetAllQuizzes()).ReturnsAsync(_quizzes); _navigationServiceExMock = new Mock <INavigationServiceEx>(); _navigationServiceExMock.Setup(nS => nS.Navigate(It.IsAny <string>(), It.IsAny <object>(), It.IsAny <NavigationTransitionInfo>())).Returns(true); _sut = new QuizzenViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object); }
public CreateQuizViewModelTest() { _quizzes = GenerateQuizzesList(); _quizServiceMock = new Mock <IQuizService>(); _quizServiceMock.Setup(qS => qS.GetAllQuizzes()).ReturnsAsync(_quizzes); _quizServiceMock.Setup(qS => qS.AddQuiz(It.IsAny <Quiz>())).ReturnsAsync(true); _navigationServiceExMock = new Mock <INavigationServiceEx>(); _navigationServiceExMock.Setup(nS => nS.Navigate(It.IsAny <string>(), It.IsAny <object>(), It.IsAny <NavigationTransitionInfo>())).Returns(true); _sender = new QuizzenViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object); _sender.CreateQuizCommand.Execute(null); _sut = new CreateQuizViewModel(_quizServiceMock.Object, _navigationServiceExMock.Object); }