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);
        }
Exemplo n.º 2
0
        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);
        }