diff options
Diffstat (limited to 'test/dialect/mysql/test_dialect.py')
-rw-r--r-- | test/dialect/mysql/test_dialect.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/dialect/mysql/test_dialect.py b/test/dialect/mysql/test_dialect.py index e6bad71a4..03f4c494a 100644 --- a/test/dialect/mysql/test_dialect.py +++ b/test/dialect/mysql/test_dialect.py @@ -148,3 +148,27 @@ class ExecutionTest(fixtures.TestBase): def test_sysdate(self): d = testing.db.scalar(func.sysdate()) assert isinstance(d, datetime.datetime) + + @testing.only_on(['mysql+mysqldb', + 'mysql+mysqlconnector', + 'mysql+pymysql', + 'mysql+cymysql']) + def test_autocommit_isolation_level(self): + c = testing.db.connect().execution_options( + isolation_level='AUTOCOMMIT' + ) + assert c.execute('SELECT @@autocommit;').scalar() + + def test_isolation_level(self): + values = { + # sqlalchemy -> mysql + 'READ UNCOMMITTED': 'READ-UNCOMMITTED', + 'READ COMMITTED': 'READ-COMMITTED', + 'REPEATABLE READ': 'REPEATABLE-READ', + 'SERIALIZABLE': 'SERIALIZABLE' + } + for sa_value, mysql_value in values.items(): + c = testing.db.connect().execution_options( + isolation_level=sa_value + ) + assert c.execute('SELECT @@tx_isolation;').scalar() == mysql_value |