summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2016-03-15 17:11:08 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2016-03-15 17:17:21 -0400
commit31f96c27a5fea302358ba580313a2f742c12b83d (patch)
tree5ba8ebb50ead2ef07c9bf9b5ec1871ce1564aba8 /test
parent224b03f9c006b12e3bbae9190ca9d0132e843208 (diff)
downloadsqlalchemy-31f96c27a5fea302358ba580313a2f742c12b83d.tar.gz
- changelog and docs for #3332, fixes #3332
- make docs for isolation level more consistent between postgresql and mysql - move mysql autocommit tests
Diffstat (limited to 'test')
-rw-r--r--test/dialect/mysql/test_dialect.py47
1 files changed, 24 insertions, 23 deletions
diff --git a/test/dialect/mysql/test_dialect.py b/test/dialect/mysql/test_dialect.py
index 1288b50d7..ab719b368 100644
--- a/test/dialect/mysql/test_dialect.py
+++ b/test/dialect/mysql/test_dialect.py
@@ -11,6 +11,7 @@ import datetime
class DialectTest(fixtures.TestBase):
__backend__ = True
+ __only_on__ = 'mysql'
def test_ssl_arguments_mysqldb(self):
from sqlalchemy.dialects.mysql import mysqldb
@@ -97,6 +98,29 @@ class DialectTest(fixtures.TestBase):
conn = eng.connect()
eq_(conn.dialect._connection_charset, enc)
+ def test_autocommit_isolation_level(self):
+ c = testing.db.connect().execution_options(
+ isolation_level='AUTOCOMMIT'
+ )
+ assert c.execute('SELECT @@autocommit;').scalar()
+
+ c = c.execution_options(isolation_level='READ COMMITTED')
+ assert not 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
+
class SQLModeDetectionTest(fixtures.TestBase):
__only_on__ = 'mysql'
__backend__ = True
@@ -163,26 +187,3 @@ class ExecutionTest(fixtures.TestBase):
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