def test_coreachable_no_accepting_states_gives_empty_dfa(self): dfa = SimpleDFA( {"q0", "q1", "q2"}, MapAlphabet({"a1", "a2"}), "q0", set(), {"q0": {"a1": "q0", "a2": "q1"}}, ) actual_coreachable = dfa.coreachable() expected_coreachable = EmptyDFA(MapAlphabet({"a1", "a2"})) assert actual_coreachable == expected_coreachable
def test_coreachable_simple_case(self): dfa = SimpleDFA( {"q0", "q1", "q2"}, MapAlphabet({"a1", "a2"}), "q0", {"q0"}, {"q0": {"a1": "q0", "a2": "q1"}}, ) actual_coreachable = dfa.coreachable() expected_coreachable = SimpleDFA( {"q0"}, MapAlphabet({"a1", "a2"}), "q0", {"q0"}, {"q0": {"a1": "q0"}} ) assert actual_coreachable == expected_coreachable