def test_A(self): target = Target(Var('A', Any)) env = {} x = ('q', 'u', 'a', 'e') self.assertEqual( (['q'], ('u', 'a', 'e'), {'A': ['q']}), target.match(x, env) )
def test_letter(self): target = Target('a') env = {} x = (Letter('a', mockSource), Letter('b', mockSource)) self.assertEqual( ([Letter('a', mockSource)], (Letter('b', mockSource),), {}), target.match(x, env) )
def test_qu(self): target = Target('q', 'u') env = {} x = ('q', 'u', 'a', 'e') self.assertEqual( (['q', 'u'], ('a', 'e'), {}), target.match(x, env) ) x = ('x', 'y') self.assertEqual( (None, None, None), target.match(x, env) ) x = () self.assertEqual( (None, None, None), target.match(x, env) )