public void Handle_WhenContextIsNull_ExceptionExpected() { var viewModel = TestHelper.CreateWindowTwoViewModel(); var state = new EnterCorrectTextInWindowTwoState(viewModel); IContext context = null; // ReSharper disable once ExpressionIsAlwaysNull Assert.Catch <ArgumentNullException>(() => state.Go(context)); }
public void Handle_WhenEnteredTextIsCorrect_SetExpectedStateToContext() { var viewModel = TestHelper.CreateWindowTwoViewModel(); var state = new EnterCorrectTextInWindowTwoState(viewModel); viewModel.EnteredText = Constants.ExpectedUserInput; var context = viewModel.Context; state.Go(context); Assert.AreEqual(typeof(WindowOneWithActiveButtonState), context.State.GetType()); }
public void Handle_WhenEnteredTextIsCorrect_RemoveViewModelFromWindowManager() { var viewModel = TestHelper.CreateWindowTwoViewModel(); var state = new EnterCorrectTextInWindowTwoState(viewModel); viewModel.EnteredText = Constants.ExpectedUserInput; var context = viewModel.Context; state.Go(context); Assert.AreEqual(0, context.WindowManager.GetActiveViewModels().Count()); }
public void Handle_WhenEnteredTextIsInvalid_SetExpectedStateToContext() { var viewModel = TestHelper.CreateWindowTwoViewModel(); var state = new EnterCorrectTextInWindowTwoState(viewModel); viewModel.EnteredText = "123"; var context = viewModel.Context; state.Go(context); Assert.AreEqual(typeof(EnterInvalidTextInWindowTwoState), context.State.GetType()); }
public void Handle_WhenEnteredTextIsInvalid_SetCanExecuteButtonThreeComandToFalse() { var viewModel = TestHelper.CreateWindowTwoViewModel(); var state = new EnterCorrectTextInWindowTwoState(viewModel); viewModel.EnteredText = "123"; var context = viewModel.Context; state.Go(context); Assert.IsFalse(viewModel.CanExecuteButtonThreeCommand); }
public void Handle_WhenEnteredTextIsInvalid_SetExpectedUserMessage() { var viewModel = TestHelper.CreateWindowTwoViewModel(); viewModel.UserMessage = "123"; var state = new EnterCorrectTextInWindowTwoState(viewModel); viewModel.EnteredText = "123"; var context = viewModel.Context; state.Go(context); Assert.AreEqual(Constants.HiTextToUser, viewModel.UserMessage); }