summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES3
-rw-r--r--sqlparse/sql.py3
-rw-r--r--tests/test_grouping.py5
3 files changed, 9 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index 6f5b8eb..9e5bca1 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,7 +1,8 @@
Development version
-------------------
-Nothing new yet
+Bug Fixes
+* Fix a regression in get_alias() introduced in 0.1.15 (issue185).
Release 0.1.15 (Apr 15, 2015)
diff --git a/sqlparse/sql.py b/sqlparse/sql.py
index 9fcb546..717661f 100644
--- a/sqlparse/sql.py
+++ b/sqlparse/sql.py
@@ -397,7 +397,8 @@ class TokenList(Token):
return self._get_first_name(kw, keywords=True)
# "name alias" or "complicated column expression alias"
- if len(self.tokens) > 2:
+ if len(self.tokens) > 2 \
+ and self.token_next_by_type(0, T.Whitespace) is not None:
return self._get_first_name(reverse=True)
return None
diff --git a/tests/test_grouping.py b/tests/test_grouping.py
index b6edafe..5ade830 100644
--- a/tests/test_grouping.py
+++ b/tests/test_grouping.py
@@ -186,6 +186,11 @@ class TestGrouping(TestCaseBase):
self.assertEqual(len(p.tokens), 1)
self.assertEqual(p.tokens[0].get_alias(), 'foo')
+ def test_alias_returns_none(self): # see issue185
+ p = sqlparse.parse('foo.bar')[0]
+ self.assertEqual(len(p.tokens), 1)
+ self.assertEqual(p.tokens[0].get_alias(), None)
+
def test_idlist_function(self): # see issue10 too
p = sqlparse.parse('foo(1) x, bar')[0]
self.assert_(isinstance(p.tokens[0], sql.IdentifierList))