diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/dialect/mssql/test_compiler.py | 18 | ||||
| -rw-r--r-- | test/dialect/test_oracle.py | 14 |
2 files changed, 28 insertions, 4 deletions
diff --git a/test/dialect/mssql/test_compiler.py b/test/dialect/mssql/test_compiler.py index 3de8ea5c9..54a23ee6e 100644 --- a/test/dialect/mssql/test_compiler.py +++ b/test/dialect/mssql/test_compiler.py @@ -416,11 +416,14 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): "SELECT TOP 0 t.x, t.y FROM t WHERE t.x = :x_1 ORDER BY t.y", checkparams={'x_1': 5} ) + c = s.compile(dialect=mssql.MSDialect()) + eq_(len(c._result_columns), 2) + assert t.c.x in set(c.result_map['x'][1]) def test_offset_using_window(self): t = table('t', column('x', Integer), column('y', Integer)) - s = select([t]).where(t.c.x==5).order_by(t.c.y).offset(20) + s = select([t]).where(t.c.x == 5).order_by(t.c.y).offset(20) # test that the select is not altered with subsequent compile # calls @@ -434,6 +437,10 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): checkparams={'param_1': 20, 'x_1': 5} ) + c = s.compile(dialect=mssql.MSDialect()) + eq_(len(c._result_columns), 2) + assert t.c.x in set(c.result_map['x'][1]) + def test_limit_offset_using_window(self): t = table('t', column('x', Integer), column('y', Integer)) @@ -449,6 +456,10 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): "WHERE mssql_rn > :param_1 AND mssql_rn <= :param_2 + :param_1", checkparams={'param_1': 20, 'param_2': 10, 'x_1': 5} ) + c = s.compile(dialect=mssql.MSDialect()) + eq_(len(c._result_columns), 2) + assert t.c.x in set(c.result_map['x'][1]) + assert t.c.y in set(c.result_map['y'][1]) def test_limit_offset_with_correlated_order_by(self): t1 = table('t1', column('x', Integer), column('y', Integer)) @@ -471,6 +482,11 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): checkparams={'param_1': 20, 'param_2': 10, 'x_1': 5} ) + c = s.compile(dialect=mssql.MSDialect()) + eq_(len(c._result_columns), 2) + assert t1.c.x in set(c.result_map['x'][1]) + assert t1.c.y in set(c.result_map['y'][1]) + def test_limit_zero_offset_using_window(self): t = table('t', column('x', Integer), column('y', Integer)) diff --git a/test/dialect/test_oracle.py b/test/dialect/test_oracle.py index 3c67f1590..58ea058c2 100644 --- a/test/dialect/test_oracle.py +++ b/test/dialect/test_oracle.py @@ -240,9 +240,11 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): checkparams={'param_1': 10, 'param_2': 20}) c = s.compile(dialect=oracle.OracleDialect()) + eq_(len(c._result_columns), 2) assert t.c.col1 in set(c.result_map['col1'][1]) - s = select([s.c.col1, s.c.col2]) - self.assert_compile(s, + + s2 = select([s.c.col1, s.c.col2]) + self.assert_compile(s2, 'SELECT col1, col2 FROM (SELECT col1, col2 ' 'FROM (SELECT col1, col2, ROWNUM AS ora_rn ' 'FROM (SELECT sometable.col1 AS col1, ' @@ -251,13 +253,16 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): ':param_2)', checkparams={'param_1': 10, 'param_2': 20}) - self.assert_compile(s, + self.assert_compile(s2, 'SELECT col1, col2 FROM (SELECT col1, col2 ' 'FROM (SELECT col1, col2, ROWNUM AS ora_rn ' 'FROM (SELECT sometable.col1 AS col1, ' 'sometable.col2 AS col2 FROM sometable) ' 'WHERE ROWNUM <= :param_1 + :param_2) WHERE ora_rn > ' ':param_2)') + c = s2.compile(dialect=oracle.OracleDialect()) + eq_(len(c._result_columns), 2) + assert s.c.col1 in set(c.result_map['col1'][1]) s = select([t]).limit(10).offset(20).order_by(t.c.col2) self.assert_compile(s, @@ -269,6 +274,9 @@ class CompileTest(fixtures.TestBase, AssertsCompiledSQL): ':param_1 + :param_2) WHERE ora_rn > :param_2', checkparams={'param_1': 10, 'param_2': 20} ) + c = s.compile(dialect=oracle.OracleDialect()) + eq_(len(c._result_columns), 2) + assert t.c.col1 in set(c.result_map['col1'][1]) s = select([t], for_update=True).limit(10).order_by(t.c.col2) self.assert_compile(s, |
