Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Allow running of sql against the live DB.

Reordered the tables in the domain downgrade script to avoid breaking the integrity constraints

To run the test:
./run_tests.sh -N  test_sql_upgrade

This version removed all of the code specific to running against a live DB and merged it into the
standard tests.

Fixed a couple downgrade functions that were failing.  They had not
been tested

Change-Id: Ie1214e5543bd08fde95652af2464cc9c80db449d
  • Loading branch information...
commit ed252e0f92f0750a2f35871d72e52a2767569bef 1 parent acc810d
Adam Young authored
Showing with 20 additions and 1 deletion.
  1. +4 −0 tests/backend_sql.conf
  2. +16 −1 tests/test_sql_upgrade.py
View
4 tests/backend_sql.conf
@@ -1,5 +1,9 @@
[sql]
connection = sqlite://
+#To Test MySQL:
+#connection = mysql://root:keystone@localhost/keystone?charset=utf8
+#To Test PostgreSQL:
+#connection = postgresql://keystone:keystone@localhost/keystone?client_encoding=utf8
idle_timeout = 200
[identity]
View
17 tests/test_sql_upgrade.py
@@ -13,7 +13,18 @@
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
-
+"""
+To run these tests against a live database:
+1. Modify the file `tests/backend_sql.conf` to use the connection for your
+ live database
+2. Set up a blank, live database.
+3. run the tests using
+ ./run_tests.sh -N test_sql_upgrade
+ WARNING::
+ Your database will be wiped.
+ Do not do this against a Database with valuable data as
+ all data will be lost.
+"""
import copy
import json
import uuid
@@ -54,6 +65,10 @@ def setUp(self):
self.repo_path, 0)
def tearDown(self):
+ table = sqlalchemy.Table("migrate_version", self.metadata,
+ autoload=True)
+ self.downgrade(0)
+ table.drop(self.engine, checkfirst=True)
super(SqlUpgradeTests, self).tearDown()
def test_blank_db_to_start(self):
Please sign in to comment.
Something went wrong with that request. Please try again.