diff options
author | Justin Shepherd <jshepher@rackspace.com> | 2012-11-26 17:37:02 +0000 |
---|---|---|
committer | Adam Young <ayoung@redhat.com> | 2012-12-05 17:18:54 -0500 |
commit | 0ea864b26e6e2e9be44785af61fd90a9b13b5265 (patch) | |
tree | a4d2a532087b2aeb3bf1192e5b920e07a6399cdd /tests/test_sql_upgrade.py | |
parent | 38c7e46a640a94da4da89a39a5a1ea9c081f1eb5 (diff) | |
download | keystone-0ea864b26e6e2e9be44785af61fd90a9b13b5265.tar.gz keystone-0ea864b26e6e2e9be44785af61fd90a9b13b5265.tar.xz keystone-0ea864b26e6e2e9be44785af61fd90a9b13b5265.zip |
Adding downgrade steps for migration scripts.
Also updated test_sql_upgrade to check the actions from 007_add_domain_tables.
Fixes: bug #1081167
Change-Id: I194c7de9ae8a3bb8f2f9f37d3a91f4fac2fe2913
Diffstat (limited to 'tests/test_sql_upgrade.py')
-rw-r--r-- | tests/test_sql_upgrade.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/test_sql_upgrade.py b/tests/test_sql_upgrade.py index 6ade77f7..fac9986f 100644 --- a/tests/test_sql_upgrade.py +++ b/tests/test_sql_upgrade.py @@ -124,6 +124,30 @@ class SqlUpgradeTests(test.TestCase): self._migrate(self.repo_path, 9) self._migrate(self.repo_path, 7, False) + def test_downgrade_to_0(self): + self._migrate(self.repo_path, 9) + self._migrate(self.repo_path, 0, False) + for table_name in ["user", "token", "role", "user_tenant_membership", + "metadata"]: + self.assertTableDoesNotExist(table_name) + + def test_upgrade_6_to_7(self): + self._migrate(self.repo_path, 6) + self.assertEqual(self.schema.version, 6, "DB is at version 6") + self.assertTableDoesNotExist('credential') + self.assertTableDoesNotExist('domain') + self.assertTableDoesNotExist('user_domain_metadata') + self._migrate(self.repo_path, 7) + self.assertEqual(self.schema.version, 7, "DB is at version 7") + self.assertTableExists('credential') + self.assertTableColumns('credential', ['id', 'user_id', 'project_id', + 'blob', 'type', 'extra']) + self.assertTableExists('domain') + self.assertTableColumns('domain', ['id', 'name', 'extra']) + self.assertTableExists('user_domain_metadata') + self.assertTableColumns('user_domain_metadata', + ['user_id', 'domain_id', 'data']) + def populate_user_table(self): for user in default_fixtures.USERS: extra = copy.deepcopy(user) |