Exemplo n.º 1
0
        public void IsDfaShouldReturnTrueWhenEveryStateHasEachOutgoingLetterFromAlphabet()
        {
            // arrange
            State  stateOneMock  = new State("S0");
            Letter letterMockOne = new Letter('a');
            Letter letterMockTwo = new Letter('b');

            stateOneMock.outgoingLetters.Add(letterMockOne);
            stateOneMock.outgoingLetters.Add(letterMockTwo);
            List <Letter> alphabetMock = new List <Letter>()
            {
                letterMockOne, letterMockTwo
            };

            List <State> states = new List <State>()
            {
                stateOneMock
            };
            IDfaController dfaController = new DfaController();

            // act
            bool isDfa = dfaController.IsDfa(states, alphabetMock);

            // assert
            Assert.IsTrue(isDfa);
        }
Exemplo n.º 2
0
        public void IsDfaShouldReturnFalseWhenEpsilonIsPresent()
        {
            // arrange
            State stateOneMock = new State("S0");

            stateOneMock.outgoingLetters.Add(new Letter('_'));
            Mock <List <Letter> > alphabetMock = new Mock <List <Letter> >();

            List <State> states = new List <State>()
            {
                stateOneMock
            };
            IDfaController dfaController = new DfaController();

            // act
            bool isDfa = dfaController.IsDfa(states, alphabetMock.Object);

            // assert
            Assert.IsFalse(isDfa);
        }
Exemplo n.º 3
0
        public void IsDfaShouldReturnFalseWhenStateHasTwoSameOutgoingLetters()
        {
            // arrange
            State  stateOneMock = new State("S0");
            Letter letterMock   = new Letter('a');

            stateOneMock.outgoingLetters.Add(letterMock);
            stateOneMock.outgoingLetters.Add(letterMock);
            Mock <List <Letter> > alphabetMock = new Mock <List <Letter> >();

            List <State> states = new List <State>()
            {
                stateOneMock
            };
            IDfaController dfaController = new DfaController();

            // act
            bool isDfa = dfaController.IsDfa(states, alphabetMock.Object);

            // assert
            Assert.IsFalse(isDfa);
        }