]> git.ipfire.org Git - thirdparty/sqlalchemy/alembic.git/commitdiff
set native boolean to false on the dialect for the schematype tests
authorMike Bayer <mike_mp@zzzcomputing.com>
Thu, 31 Aug 2017 02:32:50 +0000 (22:32 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 31 Aug 2017 02:34:47 +0000 (22:34 -0400)
mssql in 1.2 now does native boolean
by default which is not what this test looks for

Change-Id: I26a21195efaad3bcce6cc09fd98a6d3ce6e9a029

alembic/testing/assertions.py
alembic/testing/fixtures.py
tests/test_op.py

index b64725ce8604a86ce9d1f8aff7e3d19fd6afa0a9..4fb43a4fae07c0f7be4a76f749cd5da351c09e79 100644 (file)
@@ -78,7 +78,7 @@ def assert_compiled(element, assert_string, dialect=None):
     )
 
 
-_dialects = {}
+_dialect_mods = {}
 
 
 def _get_dialect(name):
@@ -86,16 +86,17 @@ def _get_dialect(name):
         return default.DefaultDialect()
     else:
         try:
-            return _dialects[name]
+            dialect_mod = _dialect_mods[name]
         except KeyError:
             dialect_mod = getattr(
                 __import__('sqlalchemy.dialects.%s' % name).dialects, name)
-            _dialects[name] = d = dialect_mod.dialect()
-            if name == 'postgresql':
-                d.implicit_returning = True
-            elif name == 'mssql':
-                d.legacy_schema_aliasing = False
-            return d
+            _dialect_mods[name] = dialect_mod
+        d = dialect_mod.dialect()
+        if name == 'postgresql':
+            d.implicit_returning = True
+        elif name == 'mssql':
+            d.legacy_schema_aliasing = False
+        return d
 
 
 def expect_warnings(*messages, **kw):
index 7e05525d756cd6d8a583247fbf2866abf59f20f6..b13edaeb68b873b17560106de0dde2b6d10c283d 100644 (file)
@@ -89,7 +89,8 @@ def capture_context_buffer(**kw):
 
 def op_fixture(
         dialect='default', as_sql=False,
-        naming_convention=None, literal_binds=False):
+        naming_convention=None, literal_binds=False,
+        native_boolean=None):
 
     opts = {}
     if naming_convention:
@@ -143,6 +144,8 @@ def op_fixture(
     if literal_binds:
         opts['literal_binds'] = literal_binds
     ctx_dialect = _get_dialect(dialect)
+    if native_boolean is not None:
+        ctx_dialect.supports_native_boolean = native_boolean
     if not as_sql:
         def execute(stmt, *multiparam, **param):
             if isinstance(stmt, string_types):
index 0c0608a267e86c895a0e36041bd4ad3d1c2e8bb2..68279bd6c64ac57955950116f702bce0c03f40dd 100644 (file)
@@ -340,7 +340,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_type_unnamed(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column("t", "c", type_=Boolean())
         context.assert_(
             'ALTER TABLE t ALTER COLUMN c BIT',
@@ -348,7 +348,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_schema_type_unnamed(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column("t", "c", type_=Boolean(), schema='foo')
         context.assert_(
             'ALTER TABLE foo.t ALTER COLUMN c BIT',
@@ -356,7 +356,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_type_named(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column("t", "c", type_=Boolean(name="xyz"))
         context.assert_(
             'ALTER TABLE t ALTER COLUMN c BIT',
@@ -364,7 +364,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_schema_type_named(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column("t", "c", type_=Boolean(name="xyz"), schema='foo')
         context.assert_(
             'ALTER TABLE foo.t ALTER COLUMN c BIT',
@@ -372,7 +372,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_type_existing_type(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column(
             "t", "c", type_=String(10), existing_type=Boolean(name="xyz"))
         context.assert_(
@@ -381,7 +381,7 @@ class OpTest(TestBase):
         )
 
     def test_alter_column_schema_schema_type_existing_type(self):
-        context = op_fixture('mssql')
+        context = op_fixture('mssql', native_boolean=False)
         op.alter_column("t", "c", type_=String(10),
                         existing_type=Boolean(name="xyz"), schema='foo')
         context.assert_(