+++ /dev/null
-#! /usr/bin/env python
-
-import unittest
-
-class TestParser(unittest.TestCase):
- def test_01_import(self):
- global parser
- from parse_query import parser
-
- def test_02_tag(self):
- self.assertEqual(parser.parse('xxx'), ('NAME', 'xxx'))
-
- def test_03_bad_tag(self):
- from ply.lex import LexError
- self.assertRaises(LexError, parser.parse, 'XXX')
-
- def test_04_expression(self):
- self.assertEqual(parser.parse('!(xxx&yyy)'),
- ('NOT', ('PARENS', ('AND', ('NAME', 'xxx'), ('NAME', 'yyy'))))
- )
-
- def test_05_bad_expression(self):
- self.assertIs(parser.parse('!(xxx&yyy'), None)
-
- def test_06_expression2(self):
- self.assertEqual(parser.parse('!xxx&yyy&zzz|ooo'),
- ('OR', ('AND', ('AND', ('NOT', ('NAME', 'xxx')), ('NAME', 'yyy')), ('NAME', 'zzz')), ('NAME', 'ooo'))
- )
-
-if __name__ == "__main__":
- unittest.main()