Esempio n. 1
0
 def test_uncaptured_regex_tag(self):
     node_list = [
         grammar.RegexTagNode('', '[0-9]{2}'),
     ]
     self.assertEqual(
         grammar.RegexScribe(node_list).translate(),
         '[0-9]{2}',
     )
Esempio n. 2
0
 def test_regex_tag(self):
     node_list = [
         grammar.RegexTagNode('simple', '[0-9]{2}'),
     ]
     self.assertEqual(
         grammar.RegexScribe(node_list).translate(),
         '(?P<simple>[0-9]{2})',
     )
Esempio n. 3
0
 def test_complex(self):
     self.assertEqual(
         grammar.Parser(
             '/articles/<id=\d{5}>/<year:Y>/(<slug>/)').get_node_list(), [
                 grammar.TextNode('/articles/'),
                 grammar.RegexTagNode('id', r'\d{5}'),
                 grammar.TextNode('/'),
                 grammar.MacroTagNode('year', 'Y'),
                 grammar.TextNode('/'),
                 grammar.OptionalNode([
                     grammar.TagNode('slug'),
                     grammar.TextNode('/'),
                 ]),
             ])
Esempio n. 4
0
 def test_unnamed_regex(self):
     self.assertEqual(
         grammar.Parser('<=.*>').get_node_list(),
         [grammar.RegexTagNode('', '.*')])
Esempio n. 5
0
 def test_regex_tag(self):
     self.assertEqual(
         grammar.Parser('<test=.*>').get_node_list(),
         [grammar.RegexTagNode('test', '.*')])