diff --git a/tjdests/apps/destinations/migrations/0007_alter_decision_admission_status.py b/tjdests/apps/destinations/migrations/0007_alter_decision_admission_status.py new file mode 100644 index 0000000..2acfe0f --- /dev/null +++ b/tjdests/apps/destinations/migrations/0007_alter_decision_admission_status.py @@ -0,0 +1,32 @@ +# Generated by Django 3.2 on 2021-04-21 01:22 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("destinations", "0006_alter_college_ceeb_code"), + ] + + operations = [ + migrations.AlterField( + model_name="decision", + name="admission_status", + field=models.CharField( + choices=[ + ("ADMIT", "Admitted"), + ("WAITLIST", "Waitlisted"), + ("WAITLIST_ADMIT", "Waitlist-Admitted"), + ("WAITLIST_DENY", "Waitlist-Denied"), + ("DEFER", "Deferred"), + ("DEFER_ADMIT", "Deferred-Admitted"), + ("DEFER_DENY", "Deferred-Denied"), + ("DEFER_WL_A", "Deferred-Waitlisted-Admitted"), + ("DEFER_WL_D", "Deferred-Waitlisted-Denied"), + ("DENY", "Denied"), + ], + max_length=20, + ), + ), + ] diff --git a/tjdests/apps/destinations/migrations/0008_alter_decision_admission_status.py b/tjdests/apps/destinations/migrations/0008_alter_decision_admission_status.py new file mode 100644 index 0000000..875d22f --- /dev/null +++ b/tjdests/apps/destinations/migrations/0008_alter_decision_admission_status.py @@ -0,0 +1,32 @@ +# Generated by Django 3.2 on 2021-04-21 01:24 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("destinations", "0007_alter_decision_admission_status"), + ] + + operations = [ + migrations.AlterField( + model_name="decision", + name="admission_status", + field=models.CharField( + choices=[ + ("ADMIT", "Admitted"), + ("WAITLIST", "Waitlisted"), + ("WAITLIST_ADMIT", "Waitlist-Admitted"), + ("WAITLIST_DENY", "Waitlist-Denied"), + ("DEFER", "Deferred"), + ("DEFER_ADMIT", "Deferred-Admitted"), + ("DEFER_DENY", "Deferred-Denied"), + ("DEFER_WAITLIST_ADMIT", "Deferred-Waitlisted-Admitted"), + ("DEFER_WAITLIST_DENY", "Deferred-Waitlisted-Denied"), + ("DENY", "Denied"), + ], + max_length=20, + ), + ), + ] diff --git a/tjdests/apps/destinations/models.py b/tjdests/apps/destinations/models.py index 7caee07..548ee8e 100644 --- a/tjdests/apps/destinations/models.py +++ b/tjdests/apps/destinations/models.py @@ -43,6 +43,8 @@ class Decision(models.Model): WAITLIST = "WAITLIST" DEFER_ADMIT = "DEFER_ADMIT" DEFER_DENY = "DEFER_DENY" + DEFER_WL_A = "DEFER_WAITLIST_ADMIT" + DEFER_WL_D = "DEFER_WAITLIST_DENY" DEFER = "DEFER" DENY = "DENY" @@ -54,6 +56,8 @@ class Decision(models.Model): (DEFER, "Deferred"), (DEFER_ADMIT, "Deferred-Admitted"), (DEFER_DENY, "Deferred-Denied"), + (DEFER_WL_A, "Deferred-Waitlisted-Admitted"), + (DEFER_WL_D, "Deferred-Waitlisted-Denied"), (DENY, "Denied"), ] diff --git a/tjdests/apps/profile/forms.py b/tjdests/apps/profile/forms.py index db94828..abd66da 100644 --- a/tjdests/apps/profile/forms.py +++ b/tjdests/apps/profile/forms.py @@ -19,12 +19,7 @@ class ProfilePublishForm(forms.ModelForm): self.helper.add_input(Submit("submit", "Submit")) self.fields["attending_decision"].queryset = Decision.objects.filter( - user=self.instance, - admission_status__in=[ - Decision.ADMIT, - Decision.WAITLIST_ADMIT, - Decision.DEFER_ADMIT, - ], + user=self.instance, admission_status__contains="ADMIT" ) class Meta: diff --git a/tjdests/apps/profile/tests.py b/tjdests/apps/profile/tests.py index b3dcc43..0a13b09 100644 --- a/tjdests/apps/profile/tests.py +++ b/tjdests/apps/profile/tests.py @@ -75,6 +75,35 @@ class ProfileTest(TJDestsTestCase): ).count(), ) + # Test creating a non-admit decision, then setting that as our destination + college2 = College.objects.get_or_create(name="test university of alexandria")[ + 0 + ] + decision2 = Decision.objects.get_or_create( + college=college2, + user=user, + decision_type="ED", + admission_status=Decision.DEFER_WL_D, + )[0] + response = self.client.post( + reverse("profile:index"), + data={ + "biography": "hello2", + "attending_decision": decision2.id, + "publish_data": True, + }, + ) + self.assertEqual(200, response.status_code) + self.assertEqual( + 1, + User.objects.filter( + id=user.id, + biography="hello2", + attending_decision=decision, + publish_data=True, + ).count(), + ) + def test_testscore_create(self): """Tests creating test scores.""" diff --git a/tjdests/templates/destinations/student_list.html b/tjdests/templates/destinations/student_list.html index ad5da84..b4c000c 100644 --- a/tjdests/templates/destinations/student_list.html +++ b/tjdests/templates/destinations/student_list.html @@ -81,16 +81,16 @@