Skip to content
This repository was archived by the owner on Jan 26, 2021. It is now read-only.

Commit d122b88

Browse files
committed
Added database checks for shift cancellation/registration, edit profile
1 parent 041f86a commit d122b88

File tree

5 files changed

+51
-9
lines changed

5 files changed

+51
-9
lines changed

vms/event/tests/test_shiftSignUp.py

+13-6
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from django.contrib.staticfiles.testing import LiveServerTestCase
22

33
from job.models import Job
4+
from shift.models import VolunteerShift
45

56
from pom.pages.eventSignUpPage import EventSignUpPage
67
from pom.pages.authenticationPage import AuthenticationPage
@@ -31,7 +32,7 @@ def setUpClass(cls):
3132
super(ShiftSignUp, cls).setUpClass()
3233

3334
def setUp(self):
34-
create_volunteer()
35+
self.volunteer = create_volunteer()
3536
self.login_volunteer()
3637

3738
def tearDown(self):
@@ -53,9 +54,9 @@ def test_events_page_with_no_events(self):
5354

5455
def test_signup_shifts_with_registered_shifts(self):
5556

56-
register_event_utility()
57-
register_job_utility()
58-
register_shift_utility()
57+
created_event = register_event_utility()
58+
created_job = register_job_utility()
59+
created_shift = register_shift_utility()
5960

6061
sign_up_page = self.sign_up_page
6162

@@ -83,7 +84,12 @@ def test_signup_shifts_with_registered_shifts(self):
8384
self.assertEqual(sign_up_page.get_shift_start_time(),'9 a.m.')
8485
self.assertEqual(sign_up_page.get_shift_end_time(),'3 p.m.')
8586

86-
def test_signup_for_same_shift_again(self):
87+
# database check to ensure volunteer has signed up for the shift
88+
self.assertEqual(len(VolunteerShift.objects.all()), 1)
89+
self.assertNotEqual(len(VolunteerShift.objects.filter(
90+
volunteer_id=self.volunteer.id, shift_id = created_shift.id)), 0)
91+
92+
"""def test_signup_for_same_shift_again(self):
8793
8894
register_event_utility()
8995
register_job_utility()
@@ -207,7 +213,8 @@ def test_search_event(self):
207213
# verify that no event shows up on event page
208214
self.assertEqual(sign_up_page.get_info_box().text,sign_up_page.no_event_message)
209215
210-
"""# enter only incorrect starting date
216+
# comm
217+
# enter only incorrect starting date
211218
date = ['10/08/2016', '']
212219
sign_up_page.fill_search_form(date)
213220
# verify that no event shows up on event page

vms/shift/tests/test_manageVolunteerShift.py

+12
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from selenium import webdriver
88
from selenium.common.exceptions import NoSuchElementException
99

10+
from shift.models import VolunteerShift, Shift
1011
from shift.utils import (
1112
create_admin,
1213
create_volunteer_with_details,
@@ -245,6 +246,11 @@ def test_assign_shifts_with_registered_shifts(self):
245246
manage_shift_page.select_volunteer(1)
246247
self.check_job_details(['job name', 'May 20, 2017', '9 a.m.', '3 p.m.'])
247248

249+
# database check to ensure volunteer has been assigned the shift
250+
self.assertEqual(len(VolunteerShift.objects.all()), 1)
251+
self.assertNotEqual(len(VolunteerShift.objects.filter(
252+
volunteer_id=v1.id, shift_id = s1.id)), 0)
253+
248254
def test_slots_remaining_in_shift(self):
249255
sign_up_page = self.sign_up_page
250256
manage_shift_page = self.manage_shift_page
@@ -336,6 +342,9 @@ def test_cancel_assigned_shift(self):
336342
manage_shift_page.select_volunteer(1)
337343
self.check_job_details(['job name', 'May 20, 2017', '9 a.m.', '3 p.m.'])
338344

345+
# database check to ensure volunteer is registered
346+
self.assertEqual(len(VolunteerShift.objects.all()), 1)
347+
339348
# cancel assigned shift
340349
self.assertEqual(manage_shift_page.get_cancel_shift().text, 'Cancel Shift Registration')
341350
manage_shift_page.cancel_shift()
@@ -356,6 +365,9 @@ def test_cancel_assigned_shift(self):
356365
self.assertEqual(slots_remaining_before_assignment,
357366
slots_after_cancellation)
358367

368+
# database check to ensure registration is cancelled
369+
self.assertEqual(len(VolunteerShift.objects.all()), 0)
370+
359371
def test_assign_same_shift_to_volunteer_twice(self):
360372
sign_up_page = self.sign_up_page
361373
manage_shift_page = self.manage_shift_page

vms/shift/tests/test_viewVolunteerShift.py

+5
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
from pom.pages.authenticationPage import AuthenticationPage
55
from pom.pages.manageShiftPage import ManageShiftPage
66

7+
from shift.models import VolunteerShift
8+
79
from shift.utils import (
810
create_volunteer,
911
create_event_with_details,
@@ -133,3 +135,6 @@ def test_cancel_shift_registration(self):
133135
upcoming_shift_page.no_shift_message)
134136
with self.assertRaises(NoSuchElementException):
135137
upcoming_shift_page.get_result_container()
138+
139+
# database check to ensure shift registration is cancelled
140+
self.assertEqual(len(VolunteerShift.objects.all()), 0)

vms/shift/utils.py

+9-3
Original file line numberDiff line numberDiff line change
@@ -189,29 +189,35 @@ def create_volunteer():
189189
return volunteer
190190

191191
def register_event_utility():
192-
Event.objects.create(
192+
event = Event.objects.create(
193193
name = 'event',
194194
start_date = '2016-05-10',
195195
end_date = '2018-06-16'
196196
)
197197

198+
return event
199+
198200
def register_job_utility():
199-
Job.objects.create(
201+
job = Job.objects.create(
200202
name = 'job',
201203
start_date = '2016-05-10',
202204
end_date = '2017-06-15',
203205
event = Event.objects.get(name = 'event')
204206
)
205207

208+
return job
209+
206210
def register_shift_utility():
207-
Shift.objects.create(
211+
shift = Shift.objects.create(
208212
date = '2017-06-15',
209213
start_time = '09:00',
210214
end_time = '15:00',
211215
max_volunteers ='6',
212216
job = Job.objects.get(name = 'job')
213217
)
214218

219+
return shift
220+
215221
def register_volunteer_for_shift_utility(shift, volunteer):
216222
vol_shift = VolunteerShift.objects.create(
217223
shift=shift,

vms/volunteer/tests/test_volunteerProfile.py

+12
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,18 @@ def test_edit_profile(self):
101101
found_org = re.search(new_details[9], page_source)
102102
self.assertNotEqual(found_org, None)
103103

104+
# database check to ensure that profile has been updated
105+
self.assertEqual(len(Volunteer.objects.all()), 1)
106+
self.assertNotEqual(len(Volunteer.objects.filter(
107+
first_name = new_details[0],
108+
last_name = new_details[1],
109+
email=new_details[2],
110+
address = new_details[3],
111+
city = new_details[4],
112+
state = new_details[5],
113+
country = new_details[6],
114+
phone_number = new_details[7])), 0)
115+
104116
def test_upload_resume(self):
105117
pass
106118
'''

0 commit comments

Comments
 (0)