示例#1
0
 public void ReadStateNextStateIsNull()
 {
     IConsole mockConsole = Substitute.For<IConsole>();
     ILog mockLog = Substitute.For<ILog>();
     ITodoList mockTodoList = Substitute.For<ITodoList>();
     ReadState state = new ReadState(mockConsole, mockLog, mockTodoList);
     Assert.IsNull(state.GetNextState());
 }
示例#2
0
        public void ReadStateReturnsNullStateWhenReadingBlankString()
        {
            IConsole mockConsole = Substitute.For<IConsole>();
            ILog mockLog = Substitute.For<ILog>();
            ITodoList mockTodoList = Substitute.For<ITodoList>();
            ReadState state = new ReadState(mockConsole, mockLog, mockTodoList);
            state.Execute();

            Assert.IsNull(state.GetNextState());
        }
示例#3
0
        public void ReadStateReturnsCommandStateWhenReadingCommand()
        {
            IConsole mockConsole = Substitute.For<IConsole>();
            mockConsole.GetInput().Returns(">COMMANDSTRING");

            ILog mockLog = Substitute.For<ILog>();
            ITodoList mockTodoList = Substitute.For<ITodoList>();
            ReadState state = new ReadState(mockConsole, mockLog, mockTodoList);
            state.Execute();

            State nextState = state.GetNextState();
            Assert.IsInstanceOfType(nextState, typeof(CommandLogState));
            Assert.AreEqual("COMMANDSTRING", nextState.Input);
        }
示例#4
0
        public void ReadStateReturnsStoreStateWhenReadingPlainText()
        {
            const string cConsoleInput = "This is plain text";
            IConsole mockConsole = Substitute.For<IConsole>();
            mockConsole.GetInput().Returns(cConsoleInput);

            ILog mockLog = Substitute.For<ILog>();
            ITodoList mockTodoList = Substitute.For<ITodoList>();
            ReadState state = new ReadState(mockConsole, mockLog, mockTodoList);
            state.Execute();

            State nextState = state.GetNextState();
            Assert.IsInstanceOfType(nextState, typeof(StoreState));
            Assert.AreEqual(cConsoleInput, nextState.Input);
        }