changeset 3b899a065dce in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset&node=3b899a065dce
description:
        Add support for SQL expression to sqlite's TRIM

        issue10510
        review352121003
diffstat:

 trytond/backend/sqlite/database.py |  7 ++++++-
 trytond/tests/test_backend.py      |  3 ++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diffs (37 lines):

diff -r 701dd4767588 -r 3b899a065dce trytond/backend/sqlite/database.py
--- a/trytond/backend/sqlite/database.py        Sun Jun 06 09:28:24 2021 +0200
+++ b/trytond/backend/sqlite/database.py        Wed Jun 16 14:55:46 2021 +0200
@@ -236,7 +236,12 @@
 
     @property
     def params(self):
-        return [self.string, self.characters]
+        if isinstance(self.string, str):
+            params = [self.string]
+        else:
+            params = list(self.string.params)
+        params.append(self.characters)
+        return params
 
 
 def sign(value):
diff -r 701dd4767588 -r 3b899a065dce trytond/tests/test_backend.py
--- a/trytond/tests/test_backend.py     Sun Jun 06 09:28:24 2021 +0200
+++ b/trytond/tests/test_backend.py     Wed Jun 16 14:55:46 2021 +0200
@@ -5,7 +5,7 @@
 import unittest
 
 from sql import Select
-from sql import functions
+from sql import functions, Literal
 from sql.functions import CurrentTimestamp, ToChar
 
 from trytond.tests.test_tryton import activate_module, with_transaction
@@ -127,6 +127,7 @@
             # (functions.Substring('Thomas', '...$'), 'mas'),
             # (functions.Substring('Thomas', '%#"o_a#"_', '#'), 'oma'),
             (functions.Trim('yxTomxx', 'BOTH', 'xyz'), 'Tom'),
+            (functions.Trim(Literal('yxTomxxx'), 'BOTH', 'xyz'), "Tom"),
             (functions.Upper('tom'), 'TOM'),
             ]
         for func, result in tests:

Reply via email to