Exemplo n.º 1
0
 def test_add_request_to_time_frame_correctly(self):
     session_id = 'someId'
     volunteer_id = str(ObjectId())
     volunteer = Volunteer('login', 'pw', 'first', 'last', volunteer_id)
     self.volunteer_handler.active_user_sessions[session_id] = volunteer
     time_frame = TimeFrame(volunteer_id,
                            datetime.fromisoformat('2020-10-25 12:00:00'),
                            datetime.fromisoformat('2020-10-25 14:00:00'),
                            [])
     time_frame.id = self.dao.store_one(time_frame.to_db_object())
     request_1 = Request(requester=str(ObjectId()),
                         status=RequestStatus.IN_PROGRESS,
                         items=[],
                         volunteer=volunteer_id)
     request_2 = Request(requester=str(ObjectId()),
                         status=RequestStatus.IN_PROGRESS,
                         items=[],
                         volunteer=volunteer_id)
     request_1.id = self.requests_dao.store_one(request_1.to_db_object())
     request_2.id = self.requests_dao.store_one(request_2.to_db_object())
     self.time_frame_handler.add_request_to_time_frame(
         time_frame.id, request_1.id, session_id)
     self.time_frame_handler.add_request_to_time_frame(
         time_frame.id, request_2.id, session_id)
     time_frames = self.dao.get_time_frames_by_volunteer(volunteer_id)
     self.assertEqual(len(time_frames), 1)
     self.assertEqual(str(time_frames[0]['_id']), time_frame.id)
     self.assertEqual(len(time_frames[0]['requests']), 2)
     self.assertEqual(str(time_frames[0]['requests'][0]), request_1.id)
     self.assertEqual(str(time_frames[0]['requests'][1]), request_2.id)
Exemplo n.º 2
0
 def test_add_request_to_time_frame_with_incorrect_time_frame_id(self):
     session_id = 'someId'
     volunteer_id = str(ObjectId())
     volunteer = Volunteer('login', 'pw', 'first', 'last', volunteer_id)
     self.volunteer_handler.active_user_sessions[session_id] = volunteer
     request = Request(requester=str(ObjectId()),
                       status=RequestStatus.IN_PROGRESS,
                       items=[],
                       volunteer=volunteer_id)
     request.id = self.requests_dao.store_one(request.to_db_object())
     self.assertEqual(len(self.dao.get_all()), 0)
     with self.assertRaises(ObjectIdNotFoundError):
         self.time_frame_handler.add_request_to_time_frame(
             str(ObjectId()), request.id, session_id)
Exemplo n.º 3
0
 def test_add_request_to_time_frame_with_incorrect_volunteer_id_at_request(
         self):
     session_id = 'someId'
     volunteer_id = str(ObjectId())
     other_volunteer_id = str(ObjectId())
     volunteer = Volunteer('login', 'pw', 'first', 'last', volunteer_id)
     self.volunteer_handler.active_user_sessions[session_id] = volunteer
     time_frame = TimeFrame(volunteer_id,
                            datetime.fromisoformat('2020-10-25 12:00:00'),
                            datetime.fromisoformat('2020-10-25 14:00:00'),
                            [])
     time_frame.id = self.dao.store_one(time_frame.to_db_object())
     request = Request(requester=str(ObjectId()),
                       status=RequestStatus.IN_PROGRESS,
                       items=[],
                       volunteer=other_volunteer_id)
     request.id = self.requests_dao.store_one(request.to_db_object())
     with self.assertRaises(UnauthorizedAccessError):
         self.time_frame_handler.add_request_to_time_frame(
             time_frame.id, request.id, session_id)