• Guido van Rossum's avatar
    QueryParser.py: · 47bb995d
    Guido van Rossum authored
    - Rephrased the description of the grammar, pointing out that the
      lexicon decides on globbing syntax.
    
    - Refactored term and atom parsing (moving atom parsing into a
      separate method).  The previously checked-in version accidentally
      accepted some invalid forms like ``foo AND -bar''; this is fixed.
    
    tests/testQueryParser.py:
    
    - Each test is now in a separate method; this produces more output
      (alas) but makes pinpointing the errors much simpler.
    
    - Added some tests catching ``foo AND -bar'' and similar.
    
    - Added an explicit test class for the handling of stopwords.  The
      "and/" test no longer has to check self.__class__.
    
    - Some refactoring of the TestQueryParser class; the utility methods
      are now in a base class TestQueryParserBase, in a different order;
      compareParseTrees() now shows the parse tree it got when raising an
      exception.  The parser is now self.parser instead of self.p (see
      below).
    
    tests/testZCTextIndex.py:
    
    - setUp() no longer needs to assign to self.p; the parser is
      consistently called self.parser now.
    47bb995d
QueryParser.py 7.12 KB