Skip to content

Commit 1cc6a8c

Browse files
committed
Clean up tests
1 parent 6d4ca5c commit 1cc6a8c

2 files changed

Lines changed: 45 additions & 33 deletions

File tree

app/tests/challenges_tests/test_forms.py

Lines changed: 39 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -16,37 +16,40 @@
1616

1717
@pytest.mark.django_db
1818
def test_challenge_request_budget_fields_required():
19-
user = UserFactory.build()
20-
# fill all fields except for budget and input / output fields
19+
user = UserFactory()
20+
required_fields = [
21+
"title",
22+
"short_name",
23+
"start_date",
24+
"end_date",
25+
"abstract",
26+
"contact_email",
27+
"organizers",
28+
"challenge_setup",
29+
"data_set",
30+
"submission_assessment",
31+
"challenge_publication",
32+
"code_availability",
33+
"expected_number_of_teams",
34+
"number_of_tasks",
35+
"challenge_fee_agreement",
36+
"algorithm_inputs",
37+
"algorithm_outputs",
38+
"average_size_of_test_image_in_mb",
39+
"inference_time_average_minutes",
40+
"algorithm_selectable_gpu_type_choices",
41+
"algorithm_maximum_settable_memory_gb",
42+
"phase_1_number_of_submissions_per_team",
43+
"phase_2_number_of_submissions_per_team",
44+
"phase_1_number_of_test_images",
45+
"phase_2_number_of_test_images",
46+
]
2147
data = {
2248
"creator": user,
2349
"title": "Test request",
2450
"short_name": "example1234",
2551
"start_date": datetime.date.today(),
2652
"end_date": datetime.date.today() + datetime.timedelta(days=1),
27-
"expected_number_of_participants": 10,
28-
"abstract": "test",
29-
"contact_email": "test@test.com",
30-
"organizers": "test",
31-
"challenge_setup": "test",
32-
"data_set": "test",
33-
"submission_assessment": "test",
34-
"challenge_publication": "test",
35-
"code_availability": "test",
36-
"expected_number_of_teams": 10,
37-
"number_of_tasks": 1,
38-
"challenge_fee_agreement": True,
39-
}
40-
form = ChallengeRequestForm(data=data, creator=user)
41-
assert not form.is_valid()
42-
43-
data2 = {
44-
"creator": user,
45-
"title": "Test request",
46-
"short_name": "example1234",
47-
"start_date": datetime.date.today(),
48-
"end_date": datetime.date.today() + datetime.timedelta(days=1),
49-
"expected_number_of_participants": 10,
5053
"abstract": "test",
5154
"contact_email": "test@test.com",
5255
"organizers": "test",
@@ -69,8 +72,17 @@ def test_challenge_request_budget_fields_required():
6972
"phase_1_number_of_test_images": 1,
7073
"phase_2_number_of_test_images": 1,
7174
}
72-
form2 = ChallengeRequestForm(data=data2, creator=user)
73-
assert form2.is_valid()
75+
form = ChallengeRequestForm(data=data, creator=user)
76+
assert form.is_valid(), form.errors
77+
78+
for required_field in required_fields:
79+
incomplete_data = data.copy()
80+
incomplete_data.pop(required_field)
81+
82+
form = ChallengeRequestForm(data=incomplete_data, creator=user)
83+
assert not form.is_valid()
84+
assert required_field in form.errors
85+
assert form.errors[required_field] == ["This field is required."]
7486

7587

7688
@pytest.mark.django_db

app/tests/challenges_tests/test_views.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -433,6 +433,9 @@ def test_challenge_request_date_check(client):
433433
"algorithm_outputs": "foo",
434434
"average_size_of_test_image_in_mb": 1,
435435
"inference_time_average_minutes": 11,
436+
"algorithm_maximum_settable_memory_gb": 32,
437+
"algorithm_selectable_gpu_type_choices": ["", "T4"],
438+
"number_of_tasks": 1,
436439
"phase_1_number_of_submissions_per_team": 1,
437440
"phase_2_number_of_submissions_per_team": 1,
438441
"phase_1_number_of_test_images": 1,
@@ -442,10 +445,7 @@ def test_challenge_request_date_check(client):
442445
)
443446
assert response.status_code == 200
444447
assert response.context["form"].errors == {
445-
"algorithm_maximum_settable_memory_gb": ["This field is required."],
446-
"algorithm_selectable_gpu_type_choices": ["This field is required."],
447448
"end_date": ["This field is required."],
448-
"number_of_tasks": ["This field is required."],
449449
"start_date": ["This field is required."],
450450
}
451451

@@ -472,6 +472,9 @@ def test_challenge_request_date_check(client):
472472
"algorithm_outputs": "foo",
473473
"average_size_of_test_image_in_mb": 1,
474474
"inference_time_average_minutes": 11,
475+
"algorithm_maximum_settable_memory_gb": 32,
476+
"algorithm_selectable_gpu_type_choices": ["", "T4"],
477+
"number_of_tasks": 1,
475478
"phase_1_number_of_submissions_per_team": 1,
476479
"phase_2_number_of_submissions_per_team": 1,
477480
"phase_1_number_of_test_images": 1,
@@ -482,9 +485,6 @@ def test_challenge_request_date_check(client):
482485
assert response.status_code == 200
483486
assert response.context["form"].errors == {
484487
"__all__": ["The start date needs to be before the end date."],
485-
"algorithm_maximum_settable_memory_gb": ["This field is required."],
486-
"algorithm_selectable_gpu_type_choices": ["This field is required."],
487-
"number_of_tasks": ["This field is required."],
488488
}
489489

490490

0 commit comments

Comments
 (0)