diff --git a/tests/test_parser.py b/tests/test_parser.py index 03b475d..c5fabcc 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -998,11 +998,33 @@ def _make_parser_test(LEXER, PARSER): self.assertEqual(x.children, ['12', 'elephants']) + def test_import_rename(self): + grammar = """ + start: N W + + %import common.NUMBER -> N + %import common.WORD -> W + %import common.WS + %ignore WS + + """ + l = _Lark(grammar) + x = l.parse('12 elephants') + self.assertEqual(x.children, ['12', 'elephants']) + + def test_relative_import(self): l = _Lark_open('test_relative_import.lark', rel_to=__file__) x = l.parse('12 lions') self.assertEqual(x.children, ['12', 'lions']) + + def test_relative_import_rename(self): + l = _Lark_open('test_relative_import_rename.lark', rel_to=__file__) + x = l.parse('12 lions') + self.assertEqual(x.children, ['12', 'lions']) + + def test_multi_import(self): grammar = """ start: NUMBER WORD diff --git a/tests/test_relative_import_rename.lark b/tests/test_relative_import_rename.lark new file mode 100644 index 0000000..c411771 --- /dev/null +++ b/tests/test_relative_import_rename.lark @@ -0,0 +1,7 @@ +start: N WORD + +%import .grammars.test.NUMBER -> N +%import common.WORD +%import common.WS +%ignore WS +