@@ -563,13 +563,24 @@ def test_send_unavaibility_period_ending_reminder(self):
563563
564564 def test_send_review_reminder_overdue_assignment (self ):
565565 today = datetime .date .today ()
566+
567+ # An assignment that's exactly on the date at which the grace period expires
566568 review_req = ReviewRequestFactory (state_id = 'assigned' , deadline = today - datetime .timedelta (5 ))
567569 reviewer = RoleFactory (name_id = 'reviewer' , group = review_req .team ,person__user__username = 'reviewer' ).person
568570 ReviewAssignmentFactory (review_request = review_req , state_id = 'assigned' , assigned_on = review_req .time , reviewer = reviewer .email_set .first ())
569571 secretary = RoleFactory (name_id = 'secr' , group = review_req .team , person__user__username = 'reviewsecretary' )
570572
573+ # A assignment that is not yet overdue
574+ not_overdue = today + datetime .timedelta (days = 1 )
575+ ReviewAssignmentFactory (review_request__team = review_req .team , review_request__state_id = 'assigned' , review_request__deadline = not_overdue , state_id = 'assigned' , assigned_on = not_overdue , reviewer = reviewer .email_set .first ())
576+
577+ # An assignment that is overdue but is not past the grace period
578+ in_grace_period = today - datetime .timedelta (days = 1 )
579+ ReviewAssignmentFactory (review_request__team = review_req .team , review_request__state_id = 'assigned' , review_request__deadline = in_grace_period , state_id = 'assigned' , assigned_on = in_grace_period , reviewer = reviewer .email_set .first ())
580+
571581 empty_outbox ()
572582 log = send_review_reminder_overdue_assignment (today )
583+ self .assertEqual (len (log ), 1 )
573584
574585 self .assertEqual (len (outbox ), 1 )
575586 self .assertTrue (secretary .person .email_address () in outbox [0 ]["To" ])
0 commit comments