def _check_003(self, engine, data): self.assertColumnExists(engine, 'subscribers', 'disabled') table = db_utils.get_table(engine, 'subscribers') subscribers = table.select().where( table.c.disabled != True).execute().fetchall() # flake8: noqa self.assertEqual(len(subscribers), 1)
def _check_007(self, engine, data): self.assertColumnExists(engine, 'domains', 'disabled') table = db_utils.get_table(engine, 'domains') domains = table.select( table.c.disabled != True).execute().fetchall() #flake8: noqa self.assertEqual(len(domains), 1)
def _check_008(self, engine, data): self.assertColumnExists(engine, 'subscribers', 'description') table = db_utils.get_table(engine, 'subscribers') self.assertIsInstance( table.c.description.type, sqlalchemy.types.String) subscribers = table.select().where( table.c.description == '').execute().fetchall() #flake8: noqa self.assertEqual(len(subscribers), 1)
def _pre_upgrade_005(self, engine): data = { 'name': 'example.org', 'project_id': 'project1', 'user_id': 'user1', 'uuid': 'd2901cc09db24ee5a8d2aa241c457b17', } table = db_utils.get_table(engine, 'domains') engine.execute(table.insert(), data) return data
def _pre_upgrade_003(self, engine): data = { 'email_address': '*****@*****.**', 'domain': 'example.org', 'ha1': '84ed3e3a76703c1044da21c8609334a2', 'ha1b': '2dc0ac0e03670d8474db6b1e62df8fd1', 'password': '******', 'project_id': 'project1', 'user_id': 'user1', 'username': '******', 'uuid': '5aedf7195c084e7a9ee0890cab045996', } table = db_utils.get_table(engine, 'subscribers') engine.execute(table.insert(), data) return data
def _check_004(self, engine, data): table = db_utils.get_table(engine, 'domains') cols = [ 'id', 'created_at', 'name', 'project_id', 'updated_at', 'user_id', 'uuid'] for c in cols: self.assertIn(c, table.c) insert = table.insert() dupe_id = dict( id=1, name='example.org') insert.execute(dupe_id) self.assertRaises(exc.IntegrityError, insert.execute, dupe_id) del dupe_id['id'] self.assertRaises(exc.IntegrityError, insert.execute, dupe_id)
def _check_001(self, engine, data): subscriber = db_utils.get_table(engine, 'subscriber') cols = [ 'id', 'created_at', 'domain', 'email_address', 'ha1', 'ha1b', 'password', 'project_id', 'rpid', 'updated_at', 'user_id', 'username', 'uuid'] for c in cols: self.assertIn(c, subscriber.c) insert = subscriber.insert() dupe_id = dict( id=1, email_address='*****@*****.**', domain='example.org', ha1='foo', ha1b='bar', password='******', username='******') insert.execute(dupe_id) self.assertRaises(exc.IntegrityError, insert.execute, dupe_id) del dupe_id['id'] self.assertRaises(exc.IntegrityError, insert.execute, dupe_id)
def _post_downgrade_005(self, engine): self.assertColumnExists(engine, 'subscribers', 'domain') self.assertColumnNotExists(engine, 'subscribers', 'domain_id') self.assertIndexNotExists(engine, 'domains', 'uuid') table = db_utils.get_table(engine, 'subscribers') subscriber = table.select().\ where(table.c.username == 'alice').\ where(table.c.domain == 'example.org').\ execute().fetchone() self.assertEqual(subscriber.uuid, '5aedf7195c084e7a9ee0890cab045996') insert = table.insert() data = dict( email_address='*****@*****.**', domain='example.org', ha1='84ed3e3a76703c1044da21c8609334a2', ha1b='2dc0ac0e03670d8474db6b1e62df8fd1', password='******', project_id='project1', user_id='user1', username='******') self.assertRaises(exc.IntegrityError, insert.execute, data)
def assertIndexNotExists(self, engine, table, index): t = db_utils.get_table(engine, table) index_names = [idx.name for idx in t.indexes] self.assertNotIn(index, index_names)
def assertColumnNotExists(self, engine, table, column): t = db_utils.get_table(engine, table) self.assertNotIn(column, t.c)