diff options
author | Mike Linksvayer <ml@gondwanaland.com> | 2012-12-20 12:50:43 -0800 |
---|---|---|
committer | Mike Linksvayer <ml@gondwanaland.com> | 2012-12-20 12:50:43 -0800 |
commit | 1d0148aef1493467dacb6c39c4e080ee4a5246d2 (patch) | |
tree | 5213418660d4e079eb8dac6bc8ea2e4fdc140088 /mediagoblin/tests/test_sql_migrations.py | |
parent | 200433dc38a2139462e0331be36ee49a80a81a12 (diff) | |
parent | 5c99cd01a70f2d597ac7669e8d944ddf79b05281 (diff) | |
download | mediagoblin-1d0148aef1493467dacb6c39c4e080ee4a5246d2.tar.lz mediagoblin-1d0148aef1493467dacb6c39c4e080ee4a5246d2.tar.xz mediagoblin-1d0148aef1493467dacb6c39c4e080ee4a5246d2.zip |
Merge branch 'master' of git://gitorious.org/mediagoblin/mediagoblin
Conflicts:
docs/source/siteadmin/media-types.rst
Diffstat (limited to 'mediagoblin/tests/test_sql_migrations.py')
-rw-r--r-- | mediagoblin/tests/test_sql_migrations.py | 29 |
1 files changed, 26 insertions, 3 deletions
diff --git a/mediagoblin/tests/test_sql_migrations.py b/mediagoblin/tests/test_sql_migrations.py index e3b55634..6383d096 100644 --- a/mediagoblin/tests/test_sql_migrations.py +++ b/mediagoblin/tests/test_sql_migrations.py @@ -322,6 +322,28 @@ def creature_power_hitpower_to_float(db_conn): creature_power.c.hitpower.alter(type=Float) +@RegisterMigration(8, FULL_MIGRATIONS) +def creature_power_name_creature_unique(db_conn): + """ + Add a unique constraint to name and creature on creature_power. + + We don't want multiple creature powers with the same name per creature! + """ + # Note: We don't actually check to see if this constraint is set + # up because at present there's no way to do so in sqlalchemy :\ + + metadata = MetaData(bind=db_conn.bind) + + creature_power = Table( + 'creature_power', metadata, + autoload=True, autoload_with=db_conn.bind) + + cons = changeset.constraint.UniqueConstraint( + 'name', 'creature', table=creature_power) + + cons.create() + + def _insert_migration1_objects(session): """ Test objects to insert for the first set of things @@ -660,7 +682,7 @@ def test_set1_to_set3(): u'__main__', SET3_MODELS, SET3_MIGRATIONS, Session(), printer) - assert migration_manager.latest_migration == 7 + assert migration_manager.latest_migration == 8 assert migration_manager.database_current_migration == 0 # Migrate @@ -679,14 +701,15 @@ def test_set1_to_set3(): + Running migration 5, "level_exit_index_from_and_to_level"... done. + Running migration 6, "creature_power_index_creature"... done. + Running migration 7, "creature_power_hitpower_to_float"... done. + + Running migration 8, "creature_power_name_creature_unique"... done. """ # Make sure version matches expected migration_manager = MigrationManager( u'__main__', SET3_MODELS, SET3_MIGRATIONS, Session(), printer) - assert migration_manager.latest_migration == 7 - assert migration_manager.database_current_migration == 7 + assert migration_manager.latest_migration == 8 + assert migration_manager.database_current_migration == 8 # Check all things in database match expected |