[Erp5-report] r40393 vincent - in /erp5/trunk/products/ZSQLCatalog: SearchText/ tests/
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Nov 18 18:36:31 CET 2010
Author: vincent
Date: Thu Nov 18 18:36:31 2010
New Revision: 40393
URL: http://svn.erp5.org?rev=40393&view=rev
Log:
Fix capitalised words starting with an operator name.
Word prefix used to be detected as an actual operator.
Add a test.
Modified:
erp5/trunk/products/ZSQLCatalog/SearchText/lexer.py
erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py
Modified: erp5/trunk/products/ZSQLCatalog/SearchText/lexer.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchText/lexer.py?rev=40393&r1=40392&r2=40393&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchText/lexer.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchText/lexer.py [utf8] Thu Nov 18 18:36:31 2010
@@ -112,15 +112,15 @@ class lexer(object):
return t
def t_OR(self, t):
- r'OR'
+ r'OR[ ]'
return t
def t_AND(self, t):
- r'AND'
+ r'AND[ ]'
return t
def t_NOT(self, t):
- r'NOT'
+ r'NOT[ ]'
return t
def t_WORD(self, t):
Modified: erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py?rev=40393&r1=40392&r2=40393&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py [utf8] Thu Nov 18 18:36:31 2010
@@ -646,6 +646,15 @@ class TestSQLCatalog(unittest.TestCase):
order_by_expression = sql_expression.getOrderByExpression()
self.assertTrue('MATCH' in order_by_expression, (order_by_expression, direction))
+ def test_logicalOperators(self):
+ self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='AN ORB'),
+ operator='and'),
+ {'default': 'AN ORB'})
+ self.catalog(ReferenceQuery(
+ ReferenceQuery(operator='in', default=['AN', 'ORB']),
+ operator='and'),
+ {'default': 'AN OR ORB'})
+
##return catalog(title=Query(title='a', operator='not'))
#return catalog(title={'query': 'a', 'operator': 'not'})
#return catalog(title={'query': ['a', 'b'], 'operator': 'not'})
More information about the Erp5-report
mailing list