summaryrefslogtreecommitdiff
path: root/test/engine/test_ddlevents.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-09-01 19:16:17 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2012-09-01 19:16:17 -0400
commit73d5b74f26a5f13baa01e458b69c0657e520d944 (patch)
tree1e651af71197844a8df79cde5265ed2cfd9815e6 /test/engine/test_ddlevents.py
parent51f1fdf3e40065e349310a6ba9a49306b9648160 (diff)
downloadsqlalchemy-73d5b74f26a5f13baa01e458b69c0657e520d944.tar.gz
- get all tests within -w engine + pyodbc:mssql on windows to pass
Diffstat (limited to 'test/engine/test_ddlevents.py')
-rw-r--r--test/engine/test_ddlevents.py33
1 files changed, 20 insertions, 13 deletions
diff --git a/test/engine/test_ddlevents.py b/test/engine/test_ddlevents.py
index f910dd5ea..3007131ed 100644
--- a/test/engine/test_ddlevents.py
+++ b/test/engine/test_ddlevents.py
@@ -469,19 +469,26 @@ class DDLExecutionTest(fixtures.TestBase):
default_from = testing.db.dialect.statement_compiler(
testing.db.dialect, None).default_from()
- eq_(
- testing.db.execute(
- text("select 'foo%something'" + default_from)
- ).scalar(),
- 'foo%something'
- )
-
- eq_(
- testing.db.execute(
- DDL("select 'foo%%something'" + default_from)
- ).scalar(),
- 'foo%something'
- )
+ # We're abusing the DDL()
+ # construct here by pushing a SELECT through it
+ # so that we can verify the round trip.
+ # the DDL() will trigger autocommit, which prohibits
+ # some DBAPIs from returning results (pyodbc), so we
+ # run in an explicit transaction.
+ with testing.db.begin() as conn:
+ eq_(
+ conn.execute(
+ text("select 'foo%something'" + default_from)
+ ).scalar(),
+ 'foo%something'
+ )
+
+ eq_(
+ conn.execute(
+ DDL("select 'foo%%something'" + default_from)
+ ).scalar(),
+ 'foo%something'
+ )