From e0dcac6b578cc40eba4c74e2cb57035d3d3a94c7 Mon Sep 17 00:00:00 2001 From: Florian Aucomte <33633200+faucomte97@users.noreply.github.com> Date: Fri, 1 Feb 2019 22:35:39 +0000 Subject: [PATCH] Removes user levels from episodes (#1006) * New migration removes user levels from episodes * Uses filters instead of ifs and try excepts --- ...=> 0069_remove_user_levels_from_episodes.py} | 17 ++++++----------- .../test_migration_fix_episodes_order.py | 2 +- 2 files changed, 7 insertions(+), 12 deletions(-) rename game/migrations/{0069_fix_episodes_order_part_2.py => 0069_remove_user_levels_from_episodes.py} (86%) diff --git a/game/migrations/0069_fix_episodes_order_part_2.py b/game/migrations/0069_remove_user_levels_from_episodes.py similarity index 86% rename from game/migrations/0069_fix_episodes_order_part_2.py rename to game/migrations/0069_remove_user_levels_from_episodes.py index 05d5e4bbf..6a7c01b99 100644 --- a/game/migrations/0069_fix_episodes_order_part_2.py +++ b/game/migrations/0069_remove_user_levels_from_episodes.py @@ -38,22 +38,17 @@ def update_episodes_level_order(apps, schema_editor): + Episode = apps.get_model('game', 'Episode') Level = apps.get_model('game', 'Level') - episode7_levels = [] - episode8_levels = [] - - for episode7_level_name in range(51, 61): - episode7_levels.append(Level.objects.get(name=episode7_level_name)) - - for episode8_level_name in range(61, 68): - episode8_levels.append(Level.objects.get(name=episode8_level_name)) - Episode = apps.get_model('game', 'Episode') episode7 = Episode.objects.get(id=7) episode8 = Episode.objects.get(id=8) - episode7.level_set = episode7_levels - episode8.level_set = episode8_levels + episode7_new_levels = Level.objects.filter(episode=episode7, owner=None) + episode8_new_levels = Level.objects.filter(episode=episode8, owner=None) + + episode7.level_set = episode7_new_levels + episode8.level_set = episode8_new_levels episode7.save() episode8.save() diff --git a/game/tests/migrations/test_migration_fix_episodes_order.py b/game/tests/migrations/test_migration_fix_episodes_order.py index 58e7a4c83..77895f712 100644 --- a/game/tests/migrations/test_migration_fix_episodes_order.py +++ b/game/tests/migrations/test_migration_fix_episodes_order.py @@ -40,7 +40,7 @@ class TestMigrationReorderEpisodes(MigrationTestCase): start_migration = '0067_level_score_27' - dest_migration = '0069_fix_episodes_order_part_2' + dest_migration = '0069_remove_user_levels_from_episodes' def test_episodes_renamed_properly(self): Episode = self.django_application.get_model('game', 'Episode')