]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- Cls.column.collate("some collation") now
authorMike Bayer <mike_mp@zzzcomputing.com>
Sun, 23 Oct 2011 16:02:58 +0000 (12:02 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sun, 23 Oct 2011 16:02:58 +0000 (12:02 -0400)
     works.  [ticket:1776]  Also in 0.6.9

CHANGES
lib/sqlalchemy/sql/operators.py
test/orm/test_query.py

diff --git a/CHANGES b/CHANGES
index 7d1f40f38304f47069af70c0da904951bac2811e..7dea5bae31dacd1571d16f47f8f6de9ed2218c6e 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -15,6 +15,8 @@ CHANGES
    - Added missing comma to PASSIVE_RETURN_NEVER_SET
      symbol [ticket:2304]
 
+   - Cls.column.collate("some collation") now
+     works.  [ticket:1776]  Also in 0.6.9
 
 0.7.3
 =====
index db6c40e9a58ec69e956f96c4795754454ad2c2f7..2fd4d2b9a1cbf084ad3143a7dae5ace0ea65f102 100644 (file)
@@ -453,14 +453,14 @@ def as_():
 def exists():
     raise NotImplementedError()
 
-def is_():
-    raise NotImplementedError()
+def is_(a, b):
+    return a.is_(b)
 
-def isnot():
-    raise NotImplementedError()
+def isnot(a, b):
+    return a.isnot(b)
 
-def collate():
-    raise NotImplementedError()
+def collate(a, b):
+    return a.collate(b)
 
 def op(a, opstring, b):
     return a.op(opstring)(b)
index fc3bb44222b54e39dfc70b2cf9be3d4227d5be2b..25ab1a29d6bf3a002fa1ba6237ab932348bab59a 100644 (file)
@@ -2,7 +2,7 @@ from test.lib.testing import eq_, assert_raises, assert_raises_message
 import operator
 from sqlalchemy import MetaData, null, exists, text, union, literal, \
     literal_column, func, between, Unicode, desc, and_, bindparam, \
-    select, distinct, or_
+    select, distinct, or_, collate
 from sqlalchemy import exc as sa_exc, util
 from sqlalchemy.sql import compiler, table, column
 from sqlalchemy.sql import expression
@@ -718,6 +718,15 @@ class OperatorTest(QueryTest, AssertsCompiledSQL):
         self._test(User.id.between('a', 'b'),
                    "users.id BETWEEN :id_1 AND :id_2")
 
+    def test_collate(self):
+        User = self.classes.User
+
+        self._test(collate(User.id, 'binary'),
+                   "users.id COLLATE binary")
+
+        self._test(User.id.collate('binary'),
+                   "users.id COLLATE binary")
+
     def test_selfref_between(self):
         User = self.classes.User