diff --git a/alib2algo/test-src/regexp/toAutomaton/re2faTest.cpp b/alib2algo/test-src/regexp/toAutomaton/re2faTest.cpp index 6adf98cc4468b5dcc2d1c0673dd712024ac7974e..8df98391a83e4f6b4aa1a6ea10ec1f909e2f367a 100644 --- a/alib2algo/test-src/regexp/toAutomaton/re2faTest.cpp +++ b/alib2algo/test-src/regexp/toAutomaton/re2faTest.cpp @@ -47,20 +47,26 @@ void re2faTest::testThompson() { } void re2faTest::testGlushkov() { - std::string input = "a+a* b*"; + std::string input = "a+a*b*"; regexp::UnboundedRegExp regexp1( static_cast<const regexp::UnboundedRegExp &>( alib::StringDataFactory::fromString<regexp::RegExp>(input).getData() ) ); automaton::NFA nfa1 = regexp::convert::ToAutomatonGlushkov::convert(regexp1); regexp::UnboundedRegExp regexp2( static_cast<const regexp::UnboundedRegExp &>( automaton::convert::ToRegExpAlgebraic::convert(nfa1) ) ); + std::cout << regexp1 << std::endl; + std::cout << regexp2 << std::endl; + automaton::NFA nfa2 = regexp::convert::ToAutomatonGlushkov::convert(regexp2); automaton::DFA dfa1 = automaton::determinize::Determinize::determinize(nfa1); automaton::DFA dfa2 = automaton::determinize::Determinize::determinize(nfa2); - automaton::DFA mdfa1 = automaton::simplify::Minimize::minimize(dfa1); - automaton::DFA mdfa2 = automaton::simplify::Minimize::minimize(dfa2); + automaton::DFA mdfa1 = automaton::simplify::Normalize::normalize(automaton::simplify::Minimize::minimize(dfa1)); + automaton::DFA mdfa2 = automaton::simplify::Normalize::normalize(automaton::simplify::Minimize::minimize(dfa2)); + + std::cout << mdfa1 << std::endl; + std::cout << mdfa2 << std::endl; CPPUNIT_ASSERT( mdfa1 == mdfa2); }