예제 #1
0
    def test_or_peek_and_constraint(self):
        r = NFSM("AB|BC", 2, "ABC")
        self.assert_no_references(r)

        self.assertEqual(set("AB"), r.peek_slot(0))
        self.assertEqual(set("BC"), r.peek_slot(1))

        r.constrain_slot(0, set("AC"))

        self.assertEqual(set("A"), r.peek_slot(0))
        self.assertEqual(set("B"), r.peek_slot(1))
예제 #2
0
    def test_simple_peek(self):
        r = NFSM("[ABC][AB]", 2, "ABC")
        self.assert_no_references(r)

        self.assertEqual(set("ABC"), r.peek_slot(0))
        self.assertEqual(set("AB"), r.peek_slot(1))