From 5be4f930c2a340f6cea02bc1a74ac460f1d4eb5c Mon Sep 17 00:00:00 2001 From: Noah Jonah Gente <fu2662cw@mi.fu-berlin.de> Date: Wed, 2 Jun 2021 14:37:07 +0200 Subject: [PATCH] Add tests and model for call to move --- .gitignore | 3 ++ .../quiz/fixtures/images/test_image.png | Bin 0 -> 22260 bytes .../migrations/0002_auto_20210601_1537.py | 38 ++++++++++++++ .../migrations/0003_auto_20210601_1549.py | 24 +++++++++ unisportomat/quiz/models.py | 5 ++ unisportomat/quiz/tests.py | 49 +++++++++++++++++- unisportomat/unisportomat/settings.py | 9 ++-- 7 files changed, 120 insertions(+), 8 deletions(-) create mode 100644 unisportomat/quiz/fixtures/images/test_image.png create mode 100644 unisportomat/quiz/migrations/0002_auto_20210601_1537.py create mode 100644 unisportomat/quiz/migrations/0003_auto_20210601_1549.py diff --git a/.gitignore b/.gitignore index 726c6a3..b9d9cb3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,8 @@ #SOURCE: https://www.codingforentrepreneurs.com/blog/django-virtualenv-python-gitignore-file/ +# Project related +/media + # Virtualenv related bin/ include/ diff --git a/unisportomat/quiz/fixtures/images/test_image.png b/unisportomat/quiz/fixtures/images/test_image.png new file mode 100644 index 0000000000000000000000000000000000000000..6bc0d74c8d2d1dcc063ab7e782a42dbcf466664d GIT binary patch literal 22260 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 XOfBP0ilT2ImmZ=duP#?EWA^rcUp^1p literal 0 HcmV?d00001 diff --git a/unisportomat/quiz/migrations/0002_auto_20210601_1537.py b/unisportomat/quiz/migrations/0002_auto_20210601_1537.py new file mode 100644 index 0000000..9504178 --- /dev/null +++ b/unisportomat/quiz/migrations/0002_auto_20210601_1537.py @@ -0,0 +1,38 @@ +# Generated by Django 3.2 on 2021-06-01 15:37 + +import django.core.validators +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("quiz", "0001_refactor_sport_and_add_criteria"), + ] + + operations = [ + migrations.CreateModel( + name="CallToMove", + fields=[ + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ], + ), + migrations.AlterField( + model_name="criterionrating", + name="rating", + field=models.IntegerField( + validators=[ + django.core.validators.MaxValueValidator(10), + django.core.validators.MinValueValidator(1), + ] + ), + ), + ] diff --git a/unisportomat/quiz/migrations/0003_auto_20210601_1549.py b/unisportomat/quiz/migrations/0003_auto_20210601_1549.py new file mode 100644 index 0000000..a1c8659 --- /dev/null +++ b/unisportomat/quiz/migrations/0003_auto_20210601_1549.py @@ -0,0 +1,24 @@ +# Generated by Django 3.2 on 2021-06-01 15:49 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("quiz", "0002_auto_20210601_1537"), + ] + + operations = [ + migrations.AddField( + model_name="calltomove", + name="image", + field=models.ImageField(null=True, upload_to=""), + ), + migrations.AddField( + model_name="calltomove", + name="text", + field=models.TextField(default=""), + preserve_default=False, + ), + ] diff --git a/unisportomat/quiz/models.py b/unisportomat/quiz/models.py index a3b25fd..c68fdad 100644 --- a/unisportomat/quiz/models.py +++ b/unisportomat/quiz/models.py @@ -54,3 +54,8 @@ class Criterion(models.Model): """ name = models.TextField() + + +class CallToMove(models.Model): + text = models.TextField() + image = models.ImageField(null=True, max_length=200) diff --git a/unisportomat/quiz/tests.py b/unisportomat/quiz/tests.py index 3c8a3f0..5f1d5c5 100644 --- a/unisportomat/quiz/tests.py +++ b/unisportomat/quiz/tests.py @@ -1,7 +1,14 @@ """ This module tests all our quiz models""" -from django.test import TestCase -from .models import Sport, Criterion +import os +import shutil +import tempfile + +from django.core.files import File +from django.core.files.uploadedfile import SimpleUploadedFile +from django.test import TestCase, override_settings +from .models import Sport, Criterion, CallToMove +from django.conf import settings class SportModelTest(TestCase): @@ -74,3 +81,41 @@ class CriterionModelTest(TestCase): Criterion(name=name).save() test_criterion = Criterion.objects.first() self.assertEqual(test_criterion.name, name) + + +FIXTURE_IMAGES = os.path.join(settings.BASE_DIR, "quiz", "fixtures", "images") +MEDIA_ROOT = tempfile.mkdtemp(suffix="testing") # Create a temp directory for files created during tests + + +@override_settings(MEDIA_ROOT=MEDIA_ROOT) +class InfoScreenTest(TestCase): + """Tests the Model for the info screen (Call To Move or Knowledge Snack)""" + + def setUp(self): + tempfile.mkdtemp(suffix="testing") # recreate tmp folder before each test + + self.text = "Kreise deine Arme vor der nächsten Frage 3x nach hinten" + self.image_name = "test_image.png" + self.image_path = os.path.join(FIXTURE_IMAGES, self.image_name) + self.image = SimpleUploadedFile( + name=self.image_name, + content=open(self.image_path, "rb").read(), + content_type="image/png", + ) + self.call_to_move = CallToMove(text=self.text, image=self.image) + self.call_to_move.save() + + def tearDown(self) -> None: + """ Delete the temp dir after each test """ + shutil.rmtree(MEDIA_ROOT, ignore_errors=True) + + def test_can_create_call_to_move(self): + """ A call to move can be correctly created """ + self.assertEqual(self.call_to_move.text, self.text) + self.assertEqual(self.call_to_move.image.name, self.image.name) + + def test_can_save_and_load_call_to_move(self): + """ A saved Call to Move can be loaded """ + call_to_move = CallToMove.objects.first() + self.assertEqual(call_to_move.text, self.text) + self.assertEqual(call_to_move.image.name, self.image.name) diff --git a/unisportomat/unisportomat/settings.py b/unisportomat/unisportomat/settings.py index 23f0cbd..626b566 100644 --- a/unisportomat/unisportomat/settings.py +++ b/unisportomat/unisportomat/settings.py @@ -9,12 +9,14 @@ https://docs.djangoproject.com/en/3.2/topics/settings/ For the full list of settings and their values, see https://docs.djangoproject.com/en/3.2/ref/settings/ """ - +import os from pathlib import Path # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent +# Where user uploaded files like images are stored +MEDIA_ROOT = os.path.join(BASE_DIR, 'media') # Quick-start development settings - unsuitable for production # See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/ @@ -27,7 +29,6 @@ DEBUG = True ALLOWED_HOSTS = [] - # Application definition INSTALLED_APPS = [ @@ -70,7 +71,6 @@ TEMPLATES = [ WSGI_APPLICATION = 'unisportomat.wsgi.application' - # Database # https://docs.djangoproject.com/en/3.2/ref/settings/#databases @@ -81,7 +81,6 @@ DATABASES = { } } - # Password validation # https://docs.djangoproject.com/en/3.2/ref/settings/#auth-password-validators @@ -100,7 +99,6 @@ AUTH_PASSWORD_VALIDATORS = [ }, ] - # Internationalization # https://docs.djangoproject.com/en/3.2/topics/i18n/ @@ -114,7 +112,6 @@ USE_L10N = True USE_TZ = True - # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/3.2/howto/static-files/ -- GitLab