public void Should_set_the_completed_flag_when_the_last_word_has_been_processed() { var viewModel = new GameOneViewModelTestFactory().CreateViewModel() as GameOneViewModel; viewModel.ProcessStart.Execute(null); var letter = viewModel.Words[0].Letters[0].Letter; var totalletters = viewModel.Words.Sum(x => x.Letters.Count); //Act for (int i = 0; i < totalletters; i++) { viewModel.KeyPressReceivedCommand.Execute(letter); } Assert.IsTrue(viewModel.ProcessCompleted); }
public void Should_fire_command_on_main_viewmodel_to_indicate_the_word_has_received_all_chars() { var homeWindowViewModel = new HomeWindowViewModel(); var viewModel = new GameOneViewModelTestFactory().CreateViewModel(homeWindowViewModel) as GameOneViewModel; var currentWordLenght = viewModel.CurrentWord.Letters.Count; var letter = viewModel.Words[0].Letters[0].Letter; for (int i = 0; i < currentWordLenght; i++) { viewModel.KeyPressReceivedCommand.Execute(letter); } //Assert we are on the next word in the list of words Assert.IsTrue(viewModel.CurrentWord.Letters.First() == viewModel.Words[1].Letters.First()); }
public void Should_set_the_CurrentWord_when_the_CurrentWordIsProcessed_Command_is_fired() { var viewModel = new GameOneViewModelTestFactory().CreateViewModel() as GameOneViewModel; viewModel.ProcessStart.Execute(null); var letter = viewModel.Words[0].Letters[0].Letter; //Act for (int i = 0; i < viewModel.Words[0].Letters.Count; i++) { viewModel.KeyPressReceivedCommand.Execute(letter); } //Assert Assert.AreEqual(viewModel.CurrentWord.Letters[0].Letter.ToString(), " "); }
public void Should_calulate_and_return_type_speed() { var homeWindowViewModel = new HomeWindowViewModel(); var viewModel = new GameOneViewModelTestFactory().CreateViewModel(homeWindowViewModel) as GameOneViewModel; viewModel.ProcessStart.Execute(null); var letter = viewModel.Words[0].Letters[0].Letter; var totalletters = viewModel.Words.Sum(x => x.Letters.Count()); //Act for (int i = 0; i < totalletters; i++) { viewModel.KeyPressReceivedCommand.Execute(letter); Thread.Sleep(5); } Assert.IsTrue(homeWindowViewModel.WordsPerMinute > 0); Assert.IsTrue(viewModel.WordsPerMinute > 0); }
public void Should_close_the_GameOverDialog_when_the_Play_New_button_is_clicked() { var homeWindowViewModel = new HomeWindowViewModel(); var viewModel = new GameOneViewModelTestFactory().CreateViewModel(homeWindowViewModel) as GameOneViewModel; viewModel.ProcessStart.Execute(null); var letter = viewModel.Words[0].Letters[0].Letter; var totalletters = viewModel.Words.Sum(x => x.Letters.Count()); //Act for (int i = 0; i < totalletters; i++) { viewModel.KeyPressReceivedCommand.Execute(letter); Thread.Sleep(5); } viewModel.GameOneOver.PlayNew.Execute(null); Assert.IsFalse(viewModel.ProcessCompleted); }