Exemplo n.º 1
0
 def test_optional_nested(self):
     self.assertEqual(
         grammar.Parser('((text))').get_node_list(),
         [
             grammar.OptionalNode(
                 [grammar.OptionalNode([grammar.TextNode('text')])])
         ],
     )
Exemplo n.º 2
0
 def test_optional2(self):
     self.assertEqual(
         grammar.Parser('(optional)required').get_node_list(),
         [
             grammar.OptionalNode([grammar.TextNode('optional')]),
             grammar.TextNode('required')
         ],
     )
Exemplo n.º 3
0
 def test_parser_wildcard3(self):
     self.assertEqual(
         grammar.Parser('*text*').get_node_list(),
         [
             grammar.WildcardNode(),
             grammar.TextNode('text'),
             grammar.WildcardNode()
         ],
     )
Exemplo n.º 4
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('/'),
                 ]),
             ])
Exemplo n.º 5
0
 def test_unnamed_macro(self):
     self.assertEqual(
         grammar.Parser('<:m>').get_node_list(),
         [grammar.MacroTagNode('', 'm')])
Exemplo n.º 6
0
 def test_unnamed_regex(self):
     self.assertEqual(
         grammar.Parser('<=.*>').get_node_list(),
         [grammar.RegexTagNode('', '.*')])
Exemplo n.º 7
0
 def test_macro_tag(self):
     self.assertEqual(
         grammar.Parser('<test:m>').get_node_list(),
         [grammar.MacroTagNode('test', 'm')])
Exemplo n.º 8
0
 def test_regex_tag(self):
     self.assertEqual(
         grammar.Parser('<test=.*>').get_node_list(),
         [grammar.RegexTagNode('test', '.*')])
Exemplo n.º 9
0
 def test_tag(self):
     self.assertEqual(
         grammar.Parser('<test>').get_node_list(),
         [grammar.TagNode('test')])
Exemplo n.º 10
0
 def test_optional_multiple(self):
     self.assertEqual(
         grammar.Parser('()()').get_node_list(),
         [grammar.OptionalNode([]),
          grammar.OptionalNode([])],
     )
Exemplo n.º 11
0
 def test_optional_empty(self):
     self.assertEqual(
         grammar.Parser('()').get_node_list(),
         [grammar.OptionalNode([])],
     )
Exemplo n.º 12
0
 def test_parser_wildcard_simple(self):
     parser = grammar.Parser('*')
     self.assertEqual(parser.get_node_list(), [grammar.WildcardNode()])
Exemplo n.º 13
0
 def test_parser_simple1(self):
     self.assertEqual(
         grammar.Parser(r'a\backslash').get_node_list(),
         [grammar.TextNode('abackslash')],
     )
Exemplo n.º 14
0
 def test_parser_simple(self):
     parser = grammar.Parser('test')
     self.assertEqual(parser.get_node_list(), [grammar.TextNode('test')])