def test_functional_ix_one(self): m1 = MetaData() m2 = MetaData() t1 = Table( "foo", m1, Column("id", Integer, primary_key=True), Column("email", String(50)), ) Index("email_idx", func.lower(t1.c.email), unique=True) t2 = Table( "foo", m2, Column("id", Integer, primary_key=True), Column("email", String(50)), ) Index("email_idx", func.lower(t2.c.email), unique=True) with assertions.expect_warnings( "Skipped unsupported reflection", "autogenerate skipping functional index", ): diffs = self._fixture(m1, m2) eq_(diffs, [])
def test_functional_ix_two(self): m1 = MetaData() m2 = MetaData() t1 = Table( 'foo', m1, Column('id', Integer, primary_key=True), Column('email', String(50)), Column('name', String(50)) ) Index( "email_idx", func.coalesce(t1.c.email, t1.c.name).desc(), unique=True) t2 = Table( 'foo', m2, Column('id', Integer, primary_key=True), Column('email', String(50)), Column('name', String(50)) ) Index( "email_idx", func.coalesce(t2.c.email, t2.c.name).desc(), unique=True) with assertions.expect_warnings( "Skipped unsupported reflection", "autogenerate skipping functional index" ): diffs = self._fixture(m1, m2) eq_(diffs, [])
def test_env_emits_warning(self): with assertions.expect_warnings( "File %s loaded twice! ignoring. " "Please ensure version_locations is unique" % (os.path.realpath( os.path.join(_get_staging_directory(), "model1", "%s_model1.py" % self.model1)))): script = ScriptDirectory.from_config(self.cfg) script.revision_map.heads eq_([rev.revision for rev in script.walk_revisions()], [self.model1, self.model2, self.model3])
def test_env_emits_warning(self): with assertions.expect_warnings( "File %s loaded twice! ignoring. " "Please ensure version_locations is unique" % ( os.path.realpath(os.path.join( _get_staging_directory(), "model1", "%s_model1.py" % self.model1 ))) ): script = ScriptDirectory.from_config(self.cfg) script.revision_map.heads eq_( [rev.revision for rev in script.walk_revisions()], [self.model1, self.model2, self.model3] )
def test_warning_on_passing_engine(self): env = self._fixture() engine = _sqlite_file_db() a_rev = "arev" env.script.generate_revision(a_rev, "revision a", refresh=True) write_script( env.script, a_rev, """\ "Rev A" revision = '%s' down_revision = None from alembic import op def upgrade(): pass def downgrade(): pass """ % a_rev, ) migration_fn = mock.MagicMock() def upgrade(rev, context): migration_fn(rev, context) return env.script._upgrade_revs(a_rev, rev) with expect_warnings( r"'connection' argument to configure\(\) is " r"expected to be a sqlalchemy.engine.Connection " ): env.configure( connection=engine, fn=upgrade, transactional_ddl=False ) env.run_migrations() eq_(migration_fn.mock_calls, [mock.call((), env._migration_context)])
def test_warning_on_passing_engine(self): env = self._fixture() engine = _sqlite_file_db() a_rev = "arev" env.script.generate_revision(a_rev, "revision a", refresh=True) write_script( env.script, a_rev, """\ "Rev A" revision = '%s' down_revision = None from alembic import op def upgrade(): pass def downgrade(): pass """ % a_rev, ) migration_fn = MagicMock() def upgrade(rev, context): migration_fn(rev, context) return env.script._upgrade_revs(a_rev, rev) with expect_warnings( r"'connection' argument to configure\(\) is " r"expected to be a sqlalchemy.engine.Connection " ): env.configure( connection=engine, fn=upgrade, transactional_ddl=False ) env.run_migrations() eq_(migration_fn.mock_calls, [call((), env._migration_context)])