instance.
"""
+ # as_sql=True is nonsensical here. autogenerate requires a connection
+ # it can use to run queries against to get the database schema.
+ if context.opts.get('as_sql', False) is True:
+ raise util.CommandError(
+ "autogenerate can't use as_sql=True as it prevents querying "
+ "the database for schema information")
+
autogen_context, connection = _autogen_context(context, None)
diffs = []
from alembic.testing.env import staging_env, clear_staging_env
from alembic.testing import eq_
from alembic.ddl.base import _fk_spec
+from alembic.util import CommandError
py3k = sys.version_info >= (3, )
eq_(diffs[2][1][5], False)
eq_(diffs[2][1][6], True)
+ def test_compare_metadata_as_sql(self):
+ context = MigrationContext.configure(
+ connection=self.bind.connect(),
+ opts={'as_sql': True}
+ )
+ metadata = self.m2
+
+ try:
+ autogenerate.compare_metadata(context, metadata)
+ except CommandError:
+ pass
+ else:
+ assert False, "unexpected success"
+
class PGCompareMetaData(ModelOne, AutogenTest, TestBase):
__only_on__ = 'postgresql'