diff options
author | Dolph Mathews <dolph.mathews@gmail.com> | 2012-08-29 02:57:38 -0500 |
---|---|---|
committer | Dolph Mathews <dolph.mathews@gmail.com> | 2012-11-19 14:50:26 -0600 |
commit | 827fc4c731189352a58390b464ea4efb5141461b (patch) | |
tree | 1d04e355ca7091c4a98d8c704c860dc17a68ab7c /tests/test_sql_upgrade.py | |
parent | 71692f7805b62329f7367a120700b6ed050b20b4 (diff) | |
download | keystone-827fc4c731189352a58390b464ea4efb5141461b.tar.gz keystone-827fc4c731189352a58390b464ea4efb5141461b.tar.xz keystone-827fc4c731189352a58390b464ea4efb5141461b.zip |
v3 Policies
- v3 policy (bp rbac-keystone-api)
- v3 policy tests (bug 1023935)
- v3 policy implementation (bug 1023939)
Change-Id: I163fbb67726c295fe9ed09b68cd18d2273345d29
Diffstat (limited to 'tests/test_sql_upgrade.py')
-rw-r--r-- | tests/test_sql_upgrade.py | 32 |
1 files changed, 25 insertions, 7 deletions
diff --git a/tests/test_sql_upgrade.py b/tests/test_sql_upgrade.py index f314a5bc..9b67fd5f 100644 --- a/tests/test_sql_upgrade.py +++ b/tests/test_sql_upgrade.py @@ -50,8 +50,7 @@ class SqlUpgradeTests(test.TestCase): super(SqlUpgradeTests, self).tearDown() def test_blank_db_to_start(self): - self.assertFalse(self.is_user_table_created(), - "User should not be defined yet") + self.assertTableDoesNotExist('user') def test_start_version_0(self): version = migration.db_version() @@ -66,7 +65,7 @@ class SqlUpgradeTests(test.TestCase): def test_upgrade_0_to_1(self): self.assertEqual(self.schema.version, 0, "DB is at version 0") self._migrate(self.repo_path, 1) - self.assertEqual(self.schema.version, 1, "DB is at version 0") + self.assertEqual(self.schema.version, 1, "DB is at version 1") self.assertTableColumns("user", ["id", "name", "extra"]) self.assertTableColumns("tenant", ["id", "name", "extra"]) self.assertTableColumns("role", ["id", "name"]) @@ -75,6 +74,16 @@ class SqlUpgradeTests(test.TestCase): self.assertTableColumns("metadata", ["user_id", "tenant_id", "data"]) self.populate_user_table() + def test_upgrade_5_to_6(self): + self._migrate(self.repo_path, 5) + self.assertEqual(self.schema.version, 5) + self.assertTableDoesNotExist('policy') + + self._migrate(self.repo_path, 6) + self.assertEqual(self.schema.version, 6) + self.assertTableExists('policy') + self.assertTableColumns('policy', ['id', 'type', 'blob', 'extra']) + def populate_user_table(self): for user in default_fixtures.USERS: extra = copy.deepcopy(user) @@ -92,12 +101,21 @@ class SqlUpgradeTests(test.TestCase): s = sqlalchemy.select([table]) return s - def is_user_table_created(self): + def assertTableExists(self, table_name): + """Asserts that a given table exists can be selected by name.""" try: - self.select_table("user") - return True + self.select_table(table_name) except sqlalchemy.exc.NoSuchTableError: - return False + raise AssertionError('Table "%s" does not exist' % table_name) + + def assertTableDoesNotExist(self, table_name): + """Asserts that a given table exists cannot be selected by name.""" + try: + self.assertTableExists(table_name) + except AssertionError: + pass + else: + raise AssertionError('Table "%s" already exists' % table_name) def _migrate(self, repository, version): upgrade = True |