diff options
author | Jason Kirtland <jek@discorporate.us> | 2007-09-26 23:37:11 +0000 |
---|---|---|
committer | Jason Kirtland <jek@discorporate.us> | 2007-09-26 23:37:11 +0000 |
commit | 6f3f85e48c7dca360f029c23231711036c66a95f (patch) | |
tree | a84ff82951d3a231de182fa6e181cbf967d9495a /test/dialect/mysql.py | |
parent | 3a04b7e4d4a4913cdbb60439b5371cf41c91c976 (diff) | |
download | sqlalchemy-6f3f85e48c7dca360f029c23231711036c66a95f.tar.gz |
Changed MySQL dialect to use the older LIMIT <offset>, <limit> syntax instead
of LIMIT <l> OFFSET <o> for folks using 3.23. ([ticket:794], thanks for the
patch!)
Diffstat (limited to 'test/dialect/mysql.py')
-rw-r--r-- | test/dialect/mysql.py | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/test/dialect/mysql.py b/test/dialect/mysql.py index 1482056ab..92d93b8d5 100644 --- a/test/dialect/mysql.py +++ b/test/dialect/mysql.py @@ -569,9 +569,12 @@ class TypesTest(AssertMixin): enum_table.drop() @testing.supported('mysql') + @testing.exclude('mysql', '>', (3)) def test_enum_parse(self): """More exercises for the ENUM type.""" - + + # MySQL 3.23 can't handle an ENUM of ''.... + db = testbase.db enum_table = Table('mysql_enum', MetaData(testbase.db), Column('e1', mysql.MSEnum("'a'")), @@ -727,8 +730,9 @@ class TypesTest(AssertMixin): self.assertEqual(got, wanted) -class SQLTest(AssertMixin): +class SQLTest(SQLCompileTest): """Tests MySQL-dialect specific compilation.""" + __dialect__ = testbase.db.dialect @testing.supported('mysql') def test_precolumns(self): @@ -763,6 +767,22 @@ class SQLTest(AssertMixin): gen(True, ['high_priority', sql.text('sql_cache')]), 'SELECT high_priority sql_cache DISTINCT q') + @testing.supported('mysql') + def test_limit(self): + t = sql.table('t', sql.column('col1'), sql.column('col2')) + + self.assert_compile( + select([t]).limit(10).offset(20), + "SELECT t.col1, t.col2 FROM t LIMIT 20, 10" + ) + self.assert_compile( + select([t]).limit(10), + "SELECT t.col1, t.col2 FROM t LIMIT 10") + self.assert_compile( + select([t]).offset(10), + "SELECT t.col1, t.col2 FROM t LIMIT 10, 18446744073709551615" + ) + def colspec(c): return testbase.db.dialect.schemagenerator(testbase.db.dialect, |