Skip to content
Snippets Groups Projects

Sort by date of visit lists

Merged Piotr Gawron requested to merge sort-by-date into master
2 files
+ 103
8
Compare changes
  • Side-by-side
  • Inline
Files
2
@@ -7,11 +7,19 @@ from functions import create_appointment, create_location, create_worker, create
from functions import create_subject
from functions import create_visit
from web.models import Appointment, Location
from web.views.notifications import get_exceeded_visit_notifications_count, \
from web.views.notifications import \
get_approaching_visits_for_mail_contact, \
get_approaching_visits_for_mail_contact_count, \
get_approaching_visits_without_appointments, \
get_approaching_visits_without_appointments_count, \
get_subject_with_no_visit_notifications_count, get_unfinished_appointments_count, \
get_approaching_visits_for_mail_contact_count, get_subjects_with_reminder_count, \
get_visits_without_appointments_count, get_today_midnight_date
get_exceeded_visit_notifications_count, \
get_subject_with_no_visit_notifications_count, \
get_subjects_with_reminder_count, \
get_visits_without_appointments_count, \
get_today_midnight_date, \
get_unfinished_appointments, \
get_unfinished_appointments_count, \
get_unfinished_visits
class NotificationViewTests(TestCase):
@@ -77,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()
@@ -112,6 +142,28 @@ class NotificationViewTests(TestCase):
notification = get_approaching_visits_without_appointments_count(self.user)
self.assertEquals(original_notification.count + 1, notification.count)
def test_get_approaching_visits_without_appointments_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_approaching_visits_without_appointments(self.user)
self.assertEquals(3, visits.count())
# 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_subject_with_no_visit_notifications_count(self):
original_notification = get_subject_with_no_visit_notifications_count(self.user)
create_subject()
@@ -181,6 +233,27 @@ class NotificationViewTests(TestCase):
notification = get_unfinished_appointments_count(self.user)
self.assertEquals(original_notification.count, notification.count)
def test_get_unfinished_appointments_order(self):
subject = create_subject()
visit = create_visit(subject)
appointment = create_appointment(visit, get_today_midnight_date() + datetime.timedelta(days=-10))
appointment.status = Appointment.APPOINTMENT_STATUS_SCHEDULED
appointment.save()
appointment = create_appointment(visit, get_today_midnight_date() + datetime.timedelta(days=-8))
appointment.status = Appointment.APPOINTMENT_STATUS_SCHEDULED
appointment.save()
appointment = create_appointment(visit, get_today_midnight_date() + datetime.timedelta(days=-12))
appointment.status = Appointment.APPOINTMENT_STATUS_SCHEDULED
appointment.save()
appointments = get_unfinished_appointments(self.user)
self.assertEquals(3, appointments.count())
# check sort order
self.assertTrue(appointments[0].datetime_when < appointments[1].datetime_when)
self.assertTrue(appointments[1].datetime_when < appointments[2].datetime_when)
def test_get_subject_with_no_visit_notifications_count_for_many_locations(self):
create_location("l1")
create_location("l2")
@@ -256,6 +329,28 @@ class NotificationViewTests(TestCase):
notification = get_approaching_visits_for_mail_contact_count(self.user)
self.assertEquals(original_notification.count, notification.count)
def test_get_approaching_visits_for_mail_contact_order(self):
subject = create_subject()
visit = create_visit(subject)
visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=110)
visit.save()
visit = create_visit(subject)
visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=108)
visit.save()
visit = create_visit(subject)
visit.datetime_begin = get_today_midnight_date() + datetime.timedelta(days=112)
visit.save()
visits = get_approaching_visits_for_mail_contact(self.user)
self.assertEquals(3, visits.count())
# 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_subjects_with_reminder_count(self):
original_without_visit_notification = get_subject_with_no_visit_notifications_count(self.user)
original_notification = get_subjects_with_reminder_count(self.user)
Loading