X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=parser%2Ftest_parser.py;h=50870e938e76dc5198df2d293a818fa1da4d6be4;hb=02dbb2a7f4d0804c56122cc7ca681224fe659abc;hp=804505fac06b0c2214c50d86e1c26d65f52ba289;hpb=47606d9636fd6076cee67d444207aa66d30abfbe;p=phdru.name%2Fcgi-bin%2Fblog-ru%2Fsearch-tags.git diff --git a/parser/test_parser.py b/parser/test_parser.py index 804505f..50870e9 100755 --- a/parser/test_parser.py +++ b/parser/test_parser.py @@ -24,6 +24,15 @@ class TestParser(unittest.TestCase): self.assertEqual(parser.parse('!xxx&yyy&zzz|ooo'), ('OR', ('AND', ('AND', ('NOT', ('NAME', 'xxx')), ('NAME', 'yyy')), ('NAME', 'zzz')), ('NAME', 'ooo')) ) + self.assertEqual(parser.parse('!(xxx && yyy)'), + ('NOT', ('PARENS', ('AND', ('NAME', 'xxx'), ('NAME', 'yyy')))) + ) + self.assertEqual(parser.parse('!(xxx || yyy)'), + ('NOT', ('PARENS', ('OR', ('NAME', 'xxx'), ('NAME', 'yyy')))) + ) + self.assertEqual(parser.parse('xxx and yyy'), + ('AND', ('NAME', 'xxx'), ('NAME', 'yyy')) + ) def test_05_bad_expression(self): self.assertIs(parser.parse('!(xxx&yyy'), None)