def test_fst_unset_final(): fst = VectorFst() s = fst.add_state() assert not fst.is_final(s) fst.set_final(s) assert fst.is_final(s) fst.unset_final(s) assert not fst.is_final(s)
def test_small_fst(): fst = VectorFst() # States s1 = fst.add_state() s2 = fst.add_state() assert s1 == 0 assert s2 == 1 fst.set_start(s1) fst.set_final(s2) assert fst.start() == s1 assert fst.is_final(s2) assert pytest.approx(fst.final(s2)) == pytest.approx(0.0) # Trs tr_1 = Tr(3, 5, 10.0, s2) fst.add_tr(s1, tr_1) assert fst.num_trs(s1) == 1 tr_2 = Tr(5, 7, 18.0, s2) fst.add_tr(s1, tr_2) assert fst.num_trs(s1) == 2