Skip to content

Commit e98295a

Browse files
committed
Updated base tests
1 parent dce2cd1 commit e98295a

File tree

2 files changed

+41
-4
lines changed

2 files changed

+41
-4
lines changed

appointment/tests/base/base_test.py

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
1+
from datetime import timedelta
2+
13
from django.test import TestCase
24

3-
from appointment.tests.mixins.base_mixin import (AppointmentMixin, AppointmentRequestMixin, ServiceMixin,
4-
StaffMemberMixin, UserMixin)
5+
from appointment.tests.mixins.base_mixin import (
6+
AppointmentMixin, AppointmentRequestMixin, ServiceMixin, StaffMemberMixin, UserMixin,
7+
AppointmentRescheduleHistoryMixin
8+
)
59

610

7-
class BaseTest(TestCase, UserMixin, StaffMemberMixin, ServiceMixin, AppointmentRequestMixin, AppointmentMixin):
11+
class BaseTest(TestCase, UserMixin, StaffMemberMixin, ServiceMixin, AppointmentRequestMixin, AppointmentMixin,
12+
AppointmentRescheduleHistoryMixin):
813
def setUp(self):
914
# Users
1015
self.user1 = self.create_user_(email="[email protected]", username="tester1")
@@ -37,3 +42,16 @@ def create_appointment_for_user2(self, appointment_request=None):
3742
if not appointment_request:
3843
appointment_request = self.create_appt_request_for_sm2()
3944
return self.create_appointment_(user=self.client2, appointment_request=appointment_request)
45+
46+
def create_appointment_reschedule_for_user1(self, appointment_request=None, reason_for_rescheduling="Reason"):
47+
if not appointment_request:
48+
appointment_request = self.create_appt_request_for_sm1()
49+
date_ = appointment_request.date + timedelta(days=1)
50+
return self.create_reschedule_history_(
51+
appointment_request=appointment_request,
52+
date_=date_,
53+
start_time=appointment_request.start_time,
54+
end_time=appointment_request.end_time,
55+
staff_member=appointment_request.staff_member,
56+
reason_for_rescheduling=reason_for_rescheduling,
57+
)

appointment/tests/mixins/base_mixin.py

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
from datetime import date, time, timedelta
22

3-
from appointment.models import Appointment, AppointmentRequest, Config, Service, StaffMember
3+
from appointment.models import (
4+
Appointment, AppointmentRequest, AppointmentRescheduleHistory, Config, Service, StaffMember
5+
)
46
from appointment.utils.db_helpers import get_user_model
57

68

@@ -74,6 +76,23 @@ def create_appointment_(cls, user, appointment_request, phone="1234567890", addr
7476
)
7577

7678

79+
class AppointmentRescheduleHistoryMixin:
80+
def __init__(self):
81+
pass
82+
83+
@classmethod
84+
def create_reschedule_history_(cls, appointment_request, date_, start_time, end_time, staff_member,
85+
reason_for_rescheduling=""):
86+
return AppointmentRescheduleHistory.objects.create(
87+
appointment_request=appointment_request,
88+
date=date_,
89+
start_time=start_time,
90+
end_time=end_time,
91+
staff_member=staff_member,
92+
reason_for_rescheduling=reason_for_rescheduling
93+
)
94+
95+
7796
class ConfigMixin:
7897
def __init__(self):
7998
pass

0 commit comments

Comments
 (0)