[Erp5-report] r25833 - in /erp5/trunk/products/ZSQLCatalog: SearchKey/ tests/

nobody at svn.erp5.org nobody at svn.erp5.org
Tue Mar 3 15:44:26 CET 2009


Author: vincent
Date: Tue Mar  3 15:44:25 2009
New Revision: 25833

URL: http://svn.erp5.org?rev=25833&view=rev
Log:
Enable parsing in DefaultKey. Update test to describe that behaviour (which is more consistent with previous behaviour).

Modified:
    erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py
    erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py

Modified: erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py?rev=25833&r1=25832&r2=25833&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/SearchKey/DefaultKey.py [utf8] Tue Mar  3 15:44:25 2009
@@ -29,6 +29,7 @@
 ##############################################################################
 
 from SearchKey import SearchKey
+from Products.ZSQLCatalog.SearchText import parse
 from Products.ZSQLCatalog.Interface.ISearchKey import ISearchKey
 from Interface.Verify import verifyClass
 
@@ -40,6 +41,9 @@
   """
   default_comparison_operator = '='
   get_operator_from_value = True
+
+  def parseSearchText(self, value):
+    return parse(value)
 
   def _guessComparisonOperator(self, value):
     if isinstance(value, basestring) and '%' in value:

Modified: erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py
URL: http://svn.erp5.org/erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py?rev=25833&r1=25832&r2=25833&view=diff
==============================================================================
--- erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py [utf8] (original)
+++ erp5/trunk/products/ZSQLCatalog/tests/testSQLCatalog.py [utf8] Tue Mar  3 15:44:25 2009
@@ -184,16 +184,20 @@
                    {column: '!=a'})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='a b'), operator='and'),
                    {column: 'a b'})
-      self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='a >b'), operator='and'),
+      self.catalog(ReferenceQuery(ReferenceQuery(ReferenceQuery(operator='=', default='a'), ReferenceQuery(operator='>', default='b'), operator='or'), operator='and'),
                    {column: 'a >b'})
-      self.catalog(ReferenceQuery(ReferenceQuery(operator='>', default='a >b'), operator='and'),
+      self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='a > b'), operator='and'),
+                   {column: 'a > b'})
+      self.catalog(ReferenceQuery(ReferenceQuery(ReferenceQuery(operator='>', default='a'), ReferenceQuery(operator='>', default='b'), operator='or'), operator='and'),
                    {column: '>a >b'})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='>a >b'), operator='and'),
                    {column: '">a >b"'})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='>', default='>a >b'), operator='and'),
                    {column: '>">a >b"'})
+      self.catalog(ReferenceQuery(ReferenceQuery(operator='in', default=['a', 'b']), operator='and'),
+                   {column: 'a OR b'})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='=', default='a OR b'), operator='and'),
-                   {column: 'a OR b'})
+                   {column: '"a OR b"'})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='<', default='path'), operator='and'),
                    {column: {'query': 'path', 'range': 'max'}})
       self.catalog(ReferenceQuery(ReferenceQuery(operator='in', default=['a', 'b']), operator='and'),




More information about the Erp5-report mailing list