diff --git a/backend/tests/__init__.py b/backend/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/backend/tests/test_template.py b/backend/tests/test_template.py deleted file mode 100644 index 4a3dda4..0000000 --- a/backend/tests/test_template.py +++ /dev/null @@ -1,16 +0,0 @@ -from django.test import TestCase -from workouts.models import Exercise - - -class User(TestCase): - def setUp(self): - Exercise.objects.create(name="Pushup", description="Pushup", unit="reps") - Exercise.objects.create(name="Running", description="Running", unit="minutes") - Exercise.objects.create(name="Dumbbell curl", description="Lifting dumbbells", unit="reps") - - def test_user_has_coach(self): - all_exercises = Exercise.objects.all() - num_reps = Exercise.objects.filter(unit="reps") - - self.assertEqual(len(all_exercises), 3) - self.assertEqual(len(num_reps), 2) diff --git a/backend/tests/test_user.py b/backend/tests/test_user.py new file mode 100644 index 0000000..6388e5f --- /dev/null +++ b/backend/tests/test_user.py @@ -0,0 +1,36 @@ +from django.test import TestCase +from users.models import User +from users.serializers import UserSerializer + +class TestUser(TestCase): + def test_signing_up_with_invalid_email(self): + data = { + "username": "test", + "password": "Tdt4141!?@abc", + "password1": "Tdt4141!?@abc", + "email": "mail.com", + "isCoach": False, + "athletes": [], + "workouts": [], + "coach_files": [], + "athlete_files": [] + } + serializer = UserSerializer(data=data) + self.assertFalse(serializer.is_valid()) + self.assertIn('email', serializer.errors) + + def test_password_below_minimum_length(self): + data = { + "username": "test", + "password": "Tdt4141!?@a", + "password1": "Tdt4141!?@a", + "email": "test@mail.com", + "isCoach": False, + "athletes": [], + "workouts": [], + "coach_files": [], + "athlete_files": [] + } + serializer = UserSerializer(data=data) + self.assertFalse(serializer.is_valid()) + self.assertIn('password', serializer.errors) \ No newline at end of file