From c951949c0042c1f6a888a448645b3fbe194e5559 Mon Sep 17 00:00:00 2001 From: Florian Aucomte <33633200+faucomte97@users.noreply.github.com> Date: Mon, 14 Aug 2023 01:59:27 +0200 Subject: [PATCH] fix: Revert worksheet ID type (#1804) * fix: Revert worksheet ID type * fix test --- aimmo/serializers.py | 8 ++++---- aimmo/tests/test_views.py | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/aimmo/serializers.py b/aimmo/serializers.py index 9a6b8c022..3f5d6e7c9 100644 --- a/aimmo/serializers.py +++ b/aimmo/serializers.py @@ -11,7 +11,7 @@ class GameSerializer(serializers.Serializer): settings = serializers.SerializerMethodField("get_settings_as_dict") status = serializers.CharField(max_length=1, required=False) class_id = serializers.SerializerMethodField() - worksheet_id = serializers.IntegerField() + worksheet_id = serializers.CharField(max_length=1, required=False) era = serializers.SerializerMethodField("get_worksheet_era") def get_class_id(self, game: Game): @@ -22,9 +22,9 @@ def get_class_id(self, game: Game): def get_worksheet_id(self, game: Game): try: - return game.worksheet.id + return str(game.worksheet.id) except AttributeError: - return 1 + return "1" def get_worksheet_era(self, game: Game): try: @@ -46,7 +46,7 @@ def update(self, instance, validated_data): if "worksheet_id" in validated_data: avatars = Avatar.objects.filter(game=instance) - worksheet = WORKSHEETS.get(instance.worksheet_id) + worksheet = WORKSHEETS.get(int(instance.worksheet_id)) for avatar in avatars: avatar.code = worksheet.starter_code diff --git a/aimmo/tests/test_views.py b/aimmo/tests/test_views.py index b28c76abf..ede67442f 100644 --- a/aimmo/tests/test_views.py +++ b/aimmo/tests/test_views.py @@ -369,7 +369,7 @@ def expected_game_detail(class_id, worksheet_id): "status": "r", "settings": '{"GENERATOR": "Main", "OBSTACLE_RATIO": 0.1, "PICKUP_SPAWN_CHANCE": 0.1, "SCORE_DESPAWN_CHANCE": 0.05, "START_HEIGHT": 31, "START_WIDTH": 31, "TARGET_NUM_CELLS_PER_AVATAR": 16.0, "TARGET_NUM_PICKUPS_PER_AVATAR": 0.0, "TARGET_NUM_SCORE_LOCATIONS_PER_AVATAR": 0.5}', "class_id": str(class_id), - "worksheet_id": worksheet_id, + "worksheet_id": str(worksheet_id), } expected_game_list = { @@ -501,7 +501,7 @@ def expected_game_detail(class_id, worksheet_id): "status": "r", "settings": '{"GENERATOR": "Main", "OBSTACLE_RATIO": 0.1, "PICKUP_SPAWN_CHANCE": 0.1, "SCORE_DESPAWN_CHANCE": 0.05, "START_HEIGHT": 31, "START_WIDTH": 31, "TARGET_NUM_CELLS_PER_AVATAR": 16.0, "TARGET_NUM_PICKUPS_PER_AVATAR": 0.0, "TARGET_NUM_SCORE_LOCATIONS_PER_AVATAR": 0.5}', "class_id": str(class_id), - "worksheet_id": worksheet_id, + "worksheet_id": str(worksheet_id), } expected_game_list = {