diff --git a/smash/web/tests/test_view_notifications.py b/smash/web/tests/test_view_notifications.py index d0a95c201c5335cf005d878e62cdf12ae61a2662..435027842e8c2a92b38e2489c7f70830a91e43f3 100644 --- a/smash/web/tests/test_view_notifications.py +++ b/smash/web/tests/test_view_notifications.py @@ -18,7 +18,8 @@ from web.views.notifications import \ get_visits_without_appointments_count, \ get_today_midnight_date, \ get_unfinished_appointments, \ - get_unfinished_appointments_count + get_unfinished_appointments_count, \ + get_unfinished_visits class NotificationViewTests(TestCase): @@ -84,6 +85,28 @@ class NotificationViewTests(TestCase): notification = get_visits_without_appointments_count(self.user) self.assertEquals(original_notification.count + 1, notification.count) + def test_get_unfinished_visits_order(self): + subject = create_subject() + + visit = create_visit(subject) + visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=-10) + visit.save() + + visit = create_visit(subject) + visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=-8) + visit.save() + + visit = create_visit(subject) + visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=-12) + visit.save() + + visits = get_unfinished_visits(self.user) + self.assertEquals(3, len(visits)) + + # check sort order + self.assertTrue(visits[0].datetime_begin < visits[1].datetime_begin) + self.assertTrue(visits[1].datetime_begin < visits[2].datetime_begin) + def test_get_approaching_visits_without_appointments_count(self): original_notification = get_approaching_visits_without_appointments_count(self.user) subject = create_subject() diff --git a/smash/web/views/notifications.py b/smash/web/views/notifications.py index 553faf7a4792e3ee2d637b23475545222e0951b7..4cebc3205163f0bb3ed06a1b9e90090ae67c712f 100644 --- a/smash/web/views/notifications.py +++ b/smash/web/views/notifications.py @@ -218,7 +218,7 @@ def get_active_visits_without_appointments(user): datetime_end__gt=today, is_finished=False, subject__default_location__in=get_filter_locations(user), - my_count=0) + my_count=0).order_by('datetime_begin') def get_filter_locations(user):