def test_parse(self): a = ('extra', 0) self.assertRaises(TypeError, parse_selector, None, *a) pi = {} self.assertRaises(KeyError, parse_selector, pi, *a) pi['deferred'] = [] self.assertRaises(KeyError, parse_selector, pi, *a) pi['parsers'] = {} self.assertRaises(KeyError, parse_selector, pi, *a) pi['parsers']['_chain'] = _parse_selector_chain self.assertRaises(KeyError, parse_selector, pi, *a) pi['parse'] = parseloop self.assertEqual(parse_selector(pi, *a), (Selector('extra', ()), 5))
def p(self, string, index=0): return parse_selector(self.pinfo, string, index)