# HG changeset patch # User Sylvain Thénault # Date 1366378916 -7200 # Node ID eebf286b405eb7a230c24d46d45d5b66805c13bb # Parent be91151107f6594e7681b6b32fc07243912a795c [rql2sql] Boolean values should be substitued like others. Closes #2829481 Furthermore lgdb 1.10 deprecate boolean_value method and this simplify testing. diff -r be91151107f6 -r eebf286b405e server/sources/rql2sql.py --- a/server/sources/rql2sql.py Mon Apr 15 13:18:01 2013 +0200 +++ b/server/sources/rql2sql.py Fri Apr 19 15:41:56 2013 +0200 @@ -1513,8 +1513,6 @@ if rel is not None: rel._q_needcast = value return self.keyword_map[value]() - if constant.type == 'Boolean': - return str(self.dbhelper.boolean_value(value)) if constant.type == 'Substitute': try: # we may found constant from simplified var in varmap diff -r be91151107f6 -r eebf286b405e server/test/unittest_rql2sql.py --- a/server/test/unittest_rql2sql.py Mon Apr 15 13:18:01 2013 +0200 +++ b/server/test/unittest_rql2sql.py Fri Apr 19 15:41:56 2013 +0200 @@ -106,12 +106,12 @@ ("Personne P WHERE P test TRUE", '''SELECT _P.cw_eid FROM cw_Personne AS _P -WHERE _P.cw_test=TRUE'''), +WHERE _P.cw_test=True'''), ("Personne P WHERE P test false", '''SELECT _P.cw_eid FROM cw_Personne AS _P -WHERE _P.cw_test=FALSE'''), +WHERE _P.cw_test=False'''), ("Personne P WHERE P eid -1", '''SELECT -1'''), @@ -532,7 +532,7 @@ ("Any X WHERE X eid 0, X test TRUE", '''SELECT _X.cw_eid FROM cw_Personne AS _X -WHERE _X.cw_eid=0 AND _X.cw_test=TRUE'''), +WHERE _X.cw_eid=0 AND _X.cw_test=True'''), ('Any 1 WHERE X in_group G, X is CWUser', '''SELECT 1 @@ -1756,7 +1756,7 @@ class SqlServer2005SQLGeneratorTC(PostgresSQLGeneratorTC): backend = 'sqlserver2005' def _norm_sql(self, sql): - return sql.strip().replace(' SUBSTR', ' SUBSTRING').replace(' || ', ' + ').replace(' ILIKE ', ' LIKE ').replace('TRUE', '1').replace('FALSE', '0') + return sql.strip().replace(' SUBSTR', ' SUBSTRING').replace(' || ', ' + ').replace(' ILIKE ', ' LIKE ') def test_has_text(self): for t in self._parse(HAS_TEXT_LG_INDEXER): @@ -1941,7 +1941,7 @@ backend = 'sqlite' def _norm_sql(self, sql): - return sql.strip().replace(' ILIKE ', ' LIKE ').replace('TRUE', '1').replace('FALSE', '0') + return sql.strip().replace(' ILIKE ', ' LIKE ') def test_date_extraction(self): self._check("Any MONTH(D) WHERE P is Personne, P creation_date D", @@ -2108,7 +2108,7 @@ backend = 'mysql' def _norm_sql(self, sql): - sql = sql.strip().replace(' ILIKE ', ' LIKE ').replace('TRUE', '1').replace('FALSE', '0') + sql = sql.strip().replace(' ILIKE ', ' LIKE ') newsql = [] latest = None for line in sql.splitlines(False):