def test_glob_question(): nfa = glob.glob_automaton("?") assert not nfa.accept("") assert nfa.accept("a") assert not nfa.accept("aa") nfa = glob.glob_automaton("a?c") assert not nfa.accept("a") assert not nfa.accept("ac") assert nfa.accept("abc") assert not nfa.accept("aba")
def test_glob_range(): nfa = glob.glob_automaton("[ab][cd]") assert not nfa.accept("") assert not nfa.accept("a") assert not nfa.accept("c") assert nfa.accept("ac") assert nfa.accept("bc") assert nfa.accept("ad") assert nfa.accept("bd") assert not nfa.accept("acc")
def test_glob_star(): nfa = glob.glob_automaton("a*c") assert not nfa.accept("a") assert not nfa.accept("c") assert nfa.accept("ac") assert nfa.accept("abc") assert nfa.accept("abcc") assert nfa.accept("abcac") assert nfa.accept("aaaaaaaaaac") assert not nfa.accept("abb") dfa = nfa.to_dfa() assert not dfa.accept("a") assert not dfa.accept("c") assert dfa.accept("ac") assert dfa.accept("abc") assert dfa.accept("abcc") assert dfa.accept("abcac") assert not dfa.accept("abb")