Exemplo n.º 1
0
 public void checkWordPDATest_passWrongAutomaton_throwsException()
 {
     Automaton         inputAutomaton   = automatons[1];
     List <Transition> inputTransitions = new List <Transition>();
     bool testResult =
         StackChecker.checkWordPDA("a", inputAutomaton, inputAutomaton.States[0].Name,
                                   "", ref inputTransitions);
 }
Exemplo n.º 2
0
        public void doesNotGoFinalePDATest_passRefPassedTransitionsAndStateAndStackAndRefResultAndAutomaton_returnsBool()
        {
            Automaton         inputAutomaton   = automatons[0];
            List <Transition> inputTransitions = new List <Transition>();
            bool testResult = true;

            testResult =
                StackChecker.doesNotGoFinalePDA(ref inputTransitions, "1", "", ref testResult, inputAutomaton);
            Assert.IsFalse(testResult);
        }
Exemplo n.º 3
0
        public void checkWordPDATest_passStateAndStackAndWordAndAutomaton_returnsBool
            (string inputWord, bool expectedResult)
        {
            Automaton         inputAutomaton   = automatons[0];
            List <Transition> inputTransitions = new List <Transition>();

            Trace.WriteLine(inputWord);
            //inputAutomaton.Transitions.ForEach(x => Trace.WriteLine(x.ToString()));
            Trace.WriteLine("Check!");
            bool testResult =
                StackChecker.checkWordPDA(inputWord, inputAutomaton, inputAutomaton.States[0].Name,
                                          "", ref inputTransitions);

            Assert.AreEqual(expectedResult, testResult);
        }
Exemplo n.º 4
0
 private void checkWords(Automaton inputAutomaton)
 {
     lbWords.Items.Clear();
     inputAutomaton.Words?.ForEach(x =>
     {
         bool check;
         if (inputAutomaton.Stack == null)
         {
             check = WordChecker.checkWord(x, inputAutomaton);
         }
         else
         {
             check = StackChecker.checkWordPDA(x, inputAutomaton);
         }
         string text = x + (check ? "✔" : "✘");
         lbWords.Items.Add(text);
     });
 }