Skip to content

Commit

Permalink
finish password tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Emilorv committed Apr 3, 2025
1 parent cf03910 commit 795c6d3
Showing 1 changed file with 44 additions and 32 deletions.
76 changes: 44 additions & 32 deletions backend/tests/test_password.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,56 +10,68 @@
class TestPassword(TestCase):
def setUp(self):
self.client = APIClient()
self.user = get_user_model().objects.create_user(username="testuser", password="password")
self.client.force_authenticate(self.user)

def test_signup_valid_password(self): #
response = self.client.post("/api/workouts/", {
"name": "Morning Run",
"date": now().isoformat(),
"notes": "5km run",
"visibility": "PU", # Adding visibility field which is required
"owner": self.user.id, # Adding owner field which seems to be required
"exercise_instances": [] # Adding exercise_instances field which is required
response = self.client.post("/api/users/", {
"username": "validuser",
"password": "024680!!",
"password1": "024680!!",
"email": "validuser@example.com",
"athletes":[],
"workouts": [],
"coach_files":[],
"athlete_files":[],
"isCoach":"false"
}, format="json")


assert response.status_code == 201
assert Workout.objects.count() == 1
assert get_user_model().objects.filter(username="validuser").exists()

def test_signup_short_password(self): #
response = self.client.post("/api/workouts/", {
"name": "Invalid Run",
"date": "invalid_date",
"notes": "Wrong format",
"visibility": "PU", # Adding required field
"owner": self.user.id, # Adding required field
"exercise_instances": [] # Adding required field
response = self.client.post("/api/users/", {
"username": "invaliduser",
"password": "1b3",
"password1": "1b3",
"email": "invaliduser@example.com",
"athletes":[],
"workouts": [],
"coach_files":[],
"athlete_files":[],
"isCoach":"false"
}, format="json")

assert response.status_code == 400 # Should return validation error
assert "password" in response.data

def test_signup_simple_password(self): #
response = self.client.post("/api/workouts/", {
"name": "Invalid Run",
"date": "invalid_date",
"notes": "Wrong format",
"visibility": "PU", # Adding required field
"owner": self.user.id, # Adding required field
"exercise_instances": [] # Adding required field
response = self.client.post("/api/users/", {
"username": "invaliduser",
"password": "password",
"password1": "password",
"email": "invaliduser@example.com",
"athletes":[],
"workouts": [],
"coach_files":[],
"athlete_files":[],
"isCoach":"false"
}, format="json")

assert response.status_code == 400 # Should return validation error
assert "password" in response.data

def test_signup_only_numeric_password(self):
response = self.client.post("/api/workouts/", {
"name": "Invalid Run",
"date": "invalid_date",
"notes": "Wrong format",
"visibility": "PU", # Adding required field
"owner": self.user.id, # Adding required field
"exercise_instances": [] # Adding required field
response = self.client.post("/api/users/", {
"username": "invaliduser",
"password": "12345678",
"password1": "12345678",
"email": "invaliduser@example.com",
"athletes":[],
"workouts": [],
"coach_files":[],
"athlete_files":[],
"isCoach":"false"
}, format="json")

assert response.status_code == 400 # Should return validation error
assert "password" in response.data

0 comments on commit 795c6d3

Please sign in to comment.