Exemplo n.º 1
0
        public void ConsoleViewRunEmitsInputOnNonEmptyLineInput()
        {
            bool        isCalled = false;
            ConsoleView view     = new ConsoleView();

            view.Input += (input) => isCalled = true;

            ConsoleInputter.Clear();
            ConsoleInputter.WriteLine("User input");
            ConsoleInputter.WriteLine();
            view.Run();

            Assert.IsTrue(isCalled, "The ConsoleView.Run event was never emitted");

            // TestTools Code
            UnitTest test = Factory.CreateTest();
            TestVariable <ConsoleView> _view = test.CreateVariable <ConsoleView>();

            test.Arrange(_view, Expr(() => new ConsoleView()));
            test.DelegateAssert.IsInvoked(Lambda <InputHandler>(handler => Expr(_view, v => v.AddInput(handler))));
            test.Act(Expr(() => ConsoleInputter.Clear()));
            test.Act(Expr(() => ConsoleInputter.WriteLine("User input")));
            test.Act(Expr(() => ConsoleInputter.WriteLine()));
            test.Act(Expr(_view, v => v.Run()));
            test.Execute();
        }
Exemplo n.º 2
0
        static void Main()
        {
            bool       isWorking = true;
            IOutputter outputter = new ConsoleOutputter();
            IInputter  inputter  = new ConsoleInputter();
            ValueArray array     = new ValueArray(outputter);

            while (isWorking)
            {
                try
                {
                    outputter.WriteLine(PreparedStrings.InputValue);
                    foreach (var value in Enum.GetValues(typeof(InputType)))
                    {
                        string str = Format(PreparedStrings.EnumToString, (int)value, value);
                        outputter.WriteLine(str);
                    }

                    string line = inputter.Read();
                    if (!Enum.TryParse(line, out InputType parsed))
                    {
                        outputter.WriteLine(PreparedStrings.WrongInput);
                        continue;
                    }

                    switch (parsed)
                    {
                    case InputType.WriteString:
                        array.AddValue(inputter.Read());
                        break;

                    case InputType.ShowResult:
                        array.ShowResult();
                        break;

                    case InputType.Exit:
                        isWorking = false;
                        break;

                    default:
                        outputter.WriteLine(PreparedStrings.WrongEnum);
                        break;
                    }
                }
                catch (Exception ex)
                {
                    outputter.WriteLine(ex.Message);
                }
                finally
                {
                    outputter.WriteLine(PreparedStrings.EndOfBlock);
                }
            }
        }
Exemplo n.º 3
0
        public void ConsoleViewRunReturnsOnEmptyLineInput()
        {
            // MSTest Extended
            ConsoleView view = new ConsoleView();

            ConsoleInputter.Clear();
            ConsoleInputter.WriteLine();
            view.Run();

            // TestTools Code
            UnitTest test = Factory.CreateTest();
            TestVariable <ConsoleView> _view = test.CreateVariable <ConsoleView>();

            test.Arrange(_view, Expr(() => new ConsoleView()));
            test.Act(Expr(() => ConsoleInputter.Clear()));
            test.Act(Expr(() => ConsoleInputter.WriteLine()));
            test.Act(Expr(_view, v => v.Run()));
            test.Execute();
        }