summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2008-03-25 17:25:20 +0000
committerMike Bayer <mike_mp@zzzcomputing.com>2008-03-25 17:25:20 +0000
commitfc2cf22038e575670ee2edc890f8dfbc07d9bfa7 (patch)
tree36cf2f89b6eca2353d5febbabfc61f94d253039c
parent92a5df77538069efd9f8cfc14cf83807ce43c288 (diff)
downloadsqlalchemy-fc2cf22038e575670ee2edc890f8dfbc07d9bfa7.tar.gz
- fixed SQL function truncation of trailing underscores
[ticket:996]
-rw-r--r--CHANGES5
-rw-r--r--lib/sqlalchemy/sql/expression.py2
-rw-r--r--test/sql/functions.py5
3 files changed, 9 insertions, 3 deletions
diff --git a/CHANGES b/CHANGES
index 5481768a6..f9c2c5a7b 100644
--- a/CHANGES
+++ b/CHANGES
@@ -20,7 +20,10 @@ CHANGES
- Fixed bug which was preventing synonym() attributes from
being used with inheritance
-
+
+ - fixed SQL function truncation of trailing underscores
+ [ticket:996]
+
- Session.execute can now find binds from metadata
- adjusted the definition of "self-referential" to be
diff --git a/lib/sqlalchemy/sql/expression.py b/lib/sqlalchemy/sql/expression.py
index 0d10c844a..a3a25f573 100644
--- a/lib/sqlalchemy/sql/expression.py
+++ b/lib/sqlalchemy/sql/expression.py
@@ -777,7 +777,7 @@ class _FunctionGenerator(object):
except KeyError:
raise AttributeError(name)
- elif name.startswith('_'):
+ elif name.endswith('_'):
name = name[0:-1]
f = _FunctionGenerator(**self.opts)
f.__names = list(self.__names) + [name]
diff --git a/test/sql/functions.py b/test/sql/functions.py
index e5c59b091..d1ce17c72 100644
--- a/test/sql/functions.py
+++ b/test/sql/functions.py
@@ -32,7 +32,10 @@ class CompileTest(TestBase, AssertsCompiledSQL):
else:
self.assert_compile(func.nosuchfunction(), "nosuchfunction()", dialect=dialect)
self.assert_compile(func.char_length('foo'), "char_length(%s)" % bindtemplate % {'name':'param_1', 'position':1}, dialect=dialect)
-
+
+ def test_underscores(self):
+ self.assert_compile(func.if_(), "if()")
+
def test_generic_now(self):
assert isinstance(func.now().type, sqltypes.DateTime)