diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/dialect/mysql/test_reflection.py | 19 | ||||
| -rw-r--r-- | test/dialect/mysql/test_types.py | 5 |
2 files changed, 19 insertions, 5 deletions
diff --git a/test/dialect/mysql/test_reflection.py b/test/dialect/mysql/test_reflection.py index 2e1b20490..f0465ec50 100644 --- a/test/dialect/mysql/test_reflection.py +++ b/test/dialect/mysql/test_reflection.py @@ -126,7 +126,10 @@ class TypeReflectionTest(fixtures.TestBase): (mysql.YEAR(display_width=4), mysql.YEAR(display_width=4)), ] - self._run_test(specs, ["display_width"]) + if testing.against("mysql>=8.0.19"): + self._run_test(specs, []) + else: + self._run_test(specs, ["display_width"]) def test_string_types(self): specs = [ @@ -193,7 +196,14 @@ class TypeReflectionTest(fixtures.TestBase): (BigInteger, mysql.BIGINT(display_width=20)), ] ) - self._run_test(specs, ["display_width", "unsigned", "zerofill"]) + + # TODO: mysql 8.0.19-ish doesn't consistently report + # on display_width. need to test this more accurately though + # for the cases where it does + if testing.against("mysql >= 8.0.19"): + self._run_test(specs, ["unsigned", "zerofill"]) + else: + self._run_test(specs, ["display_width", "unsigned", "zerofill"]) def test_binary_types(self): specs = [ @@ -949,7 +959,10 @@ class ReflectionTest(fixtures.TestBase, AssertsCompiledSQL): ) else: eq_( - inspect(testing.db).get_foreign_keys("PlaylistTrack"), + sorted( + inspect(testing.db).get_foreign_keys("PlaylistTrack"), + key=lambda elem: elem["name"], + ), [ { "name": "FK_PlaylistTTrackId", diff --git a/test/dialect/mysql/test_types.py b/test/dialect/mysql/test_types.py index 40908c855..d9afb0063 100644 --- a/test/dialect/mysql/test_types.py +++ b/test/dialect/mysql/test_types.py @@ -28,6 +28,7 @@ from sqlalchemy.testing import assert_raises_message from sqlalchemy.testing import AssertsCompiledSQL from sqlalchemy.testing import AssertsExecutionResults from sqlalchemy.testing import eq_ +from sqlalchemy.testing import eq_regex from sqlalchemy.testing import fixtures from sqlalchemy.testing import is_ from sqlalchemy.util import u @@ -635,7 +636,7 @@ class TypeRoundTripTest(fixtures.TestBase, AssertsExecutionResults): meta2 = MetaData(testing.db) table = Table("mysql_bool", meta2, autoload=True) eq_(colspec(table.c.b3), "b3 TINYINT(1)") - eq_(colspec(table.c.b4), "b4 TINYINT(1) UNSIGNED") + eq_regex(colspec(table.c.b4), r"b4 TINYINT(?:\(1\))? UNSIGNED") meta2 = MetaData(testing.db) table = Table( @@ -749,7 +750,7 @@ class TypeRoundTripTest(fixtures.TestBase, AssertsExecutionResults): eq_(list(row), [1950, 2050, None, 1950]) conn.execute(table.delete()) self.assert_(colspec(table.c.y1).startswith("y1 YEAR")) - eq_(colspec(table.c.y5), "y5 YEAR(4)") + eq_regex(colspec(table.c.y5), r"y5 YEAR(?:\(4\))?") class JSONTest(fixtures.TestBase): |
