Example #1
0
        public void ShouldReturnCanFeed()
        {
            Automaton automaton;
            IAutomatonTable <char> automatonTable;

            automatonTable = AutomatonTableHelper.BuildAutomatonTable(new string[] { "A*=ab{C}*;", "C=c;" });

            automaton = new Automaton(automatonTable);

            Assert.IsTrue(automaton.CanFeed('a'));
            automaton.Feed('a');
            Assert.IsFalse(automaton.CanFeed('a'));
            Assert.IsTrue(automaton.CanFeed('b'));
            automaton.Feed('b');

            Assert.IsTrue(automaton.CanFeed('c'));
            automaton.Feed('c');

            Assert.IsTrue(automaton.CanFeed('c'));
            automaton.Feed('c');

            Assert.IsTrue(automaton.CanFeed('c'));
            automaton.Feed('c');
        }