summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVictor Uriarte <victor.m.uriarte@intel.com>2016-08-22 19:55:37 -0700
committerVictor Uriarte <victor.m.uriarte@intel.com>2016-08-22 19:55:37 -0700
commit31830af6355557ec159d2173b12ad1437f49b447 (patch)
treeaecbde15ea2ea32e53a4533f0a045a46f7bf8053
parente29fbf01a7eba050782eca3e0a3c250763ce23ac (diff)
downloadsqlparse-31830af6355557ec159d2173b12ad1437f49b447.tar.gz
Fix #284 as grouping
-rw-r--r--sqlparse/engine/grouping.py2
-rw-r--r--tests/test_regressions.py6
2 files changed, 7 insertions, 1 deletions
diff --git a/sqlparse/engine/grouping.py b/sqlparse/engine/grouping.py
index 42305c3..7cbcc6b 100644
--- a/sqlparse/engine/grouping.py
+++ b/sqlparse/engine/grouping.py
@@ -121,7 +121,7 @@ def group_as(tlist):
def valid_next(token):
ttypes = T.DML, T.DDL
- return not imt(token, t=ttypes)
+ return not imt(token, t=ttypes) and token is not None
def post(tlist, pidx, tidx, nidx):
return pidx, nidx
diff --git a/tests/test_regressions.py b/tests/test_regressions.py
index b978071..ba908d3 100644
--- a/tests/test_regressions.py
+++ b/tests/test_regressions.py
@@ -314,3 +314,9 @@ def test_token_next_doesnt_ignore_skip_cm():
sql = '--comment\nselect 1'
tok = sqlparse.parse(sql)[0].token_next(-1, skip_cm=True)[1]
assert tok.value == 'select'
+
+
+def test_issue284_as_grouping():
+ sql = 'SELECT x AS'
+ p = sqlparse.parse(sql)[0]
+ assert sql == str(p)