]> git.phdru.name Git - phdru.name/cgi-bin/blog-ru/search-tags.git/commitdiff
Factor out parser.parse() into self._parse
authorOleg Broytman <phd@phdru.name>
Sat, 9 Jul 2016 18:20:59 +0000 (21:20 +0300)
committerOleg Broytman <phd@phdru.name>
Sat, 9 Jul 2016 18:20:59 +0000 (21:20 +0300)
parser/test_parser.py

index 4696047338be02e8f749ebae22d5fb39b7e4f5cf..4f2e1767f6d14b16e59c4d5c1a25c9de335f6269 100755 (executable)
@@ -7,47 +7,50 @@ class TestParser(unittest.TestCase):
         global parser
         from parser import parser
 
+    def _parse(self, input):
+        return parser.parse(input)
+
     def test_02_tag(self):
-        self.assertEqual(parser.parse('xxx'), ('NAME', 'xxx'))
+        self.assertEqual(self._parse('xxx'), ('NAME', 'xxx'))
 
     def test_03_bad_tag(self):
         from ply.lex import LexError
-        self.assertRaises(LexError, parser.parse, 'XXX')
+        self.assertRaises(LexError, self._parse, 'XXX')
 
     def test_04_expression(self):
-        self.assertEqual(parser.parse('!(xxx&yyy)'),
+        self.assertEqual(self._parse('!(xxx&yyy)'),
             ('NOT', ('PARENS', ('AND', ('NAME', 'xxx'), ('NAME', 'yyy'))))
         )
-        self.assertEqual(parser.parse('!(xxx & yyy)'),
+        self.assertEqual(self._parse('!(xxx & yyy)'),
             ('NOT', ('PARENS', ('AND', ('NAME', 'xxx'), ('NAME', 'yyy'))))
         )
-        self.assertEqual(parser.parse('!xxx&yyy&zzz|ooo'),
+        self.assertEqual(self._parse('!xxx&yyy&zzz|ooo'),
             ('OR', ('AND', ('AND', ('NOT', ('NAME', 'xxx')), ('NAME', 'yyy')), ('NAME', 'zzz')), ('NAME', 'ooo'))
         )
-        self.assertEqual(parser.parse('!(xxx &&  yyy)'),
+        self.assertEqual(self._parse('!(xxx &&  yyy)'),
             ('NOT', ('PARENS', ('AND', ('NAME', 'xxx'), ('NAME', 'yyy'))))
         )
-        self.assertEqual(parser.parse('!(xxx || yyy)'),
+        self.assertEqual(self._parse('!(xxx || yyy)'),
             ('NOT', ('PARENS', ('OR', ('NAME', 'xxx'), ('NAME', 'yyy'))))
         )
-        self.assertEqual(parser.parse('xxx and yyy'),
+        self.assertEqual(self._parse('xxx and yyy'),
             ('AND', ('NAME', 'xxx'), ('NAME', 'yyy'))
         )
-        self.assertEqual(parser.parse('xxx or  yyy'),
+        self.assertEqual(self._parse('xxx or  yyy'),
             ('OR', ('NAME', 'xxx'), ('NAME', 'yyy'))
         )
-        self.assertEqual(parser.parse('xxx OR yyy'),
+        self.assertEqual(self._parse('xxx OR yyy'),
             ('OR', ('NAME', 'xxx'), ('NAME', 'yyy'))
         )
-        self.assertEqual(parser.parse('not xxx'),
+        self.assertEqual(self._parse('not xxx'),
             ('NOT', ('NAME', 'xxx'))
         )
-        self.assertEqual(parser.parse('NOT xxx'),
+        self.assertEqual(self._parse('NOT xxx'),
             ('NOT', ('NAME', 'xxx'))
         )
 
     def test_05_bad_expression(self):
-        self.assertIs(parser.parse('!(xxx&yyy'), None)
+        self.assertIs(self._parse('!(xxx&yyy'), None)
 
 if __name__ == "__main__":
     unittest.main()