Exemplo n.º 1
0
 def test_find_providers_perfect_and_imperfect(self):
     providers = create_test_providers()
     logging.info("providers: %s" % providers)
     self.assertEqual(len(providers), Provider.query().count())
     # create booking request
     next_monday_at_9 = testutil.create_datetime_from_weekday_and_hour(
         testutil.MONDAY, 15)
     booking_request = Booking(request_category='physiotherapy',
                               request_location='mtl-downtown',
                               request_datetime=next_monday_at_9)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     for br in booking_responses:
         logging.info('providers %s on %s at %s' %
                      (br.provider.email, br.timeslot.start.date(),
                       br.timeslot.start.time()))
     # 2 responses
     self.assertEqual(2, len(booking_responses))
     # first provider is perfet match
     br1 = booking_responses[0]
     self.assertTrue(br1.is_perfect_match(booking_request))
     # second provider is not perfect match
     br2 = booking_responses[1]
     self.assertFalse(br2.is_perfect_match(booking_request))
     # assert top provider is p2
     self.assertEqual(providers[2][0], booking_responses[0].provider.key)
Exemplo n.º 2
0
 def test_find_providers_no_matches_wrong_category(self):
     providers = create_test_providers()
     # create booking request - Saturday at 10 PM
     sat_at_10 = testutil.create_datetime_from_weekday_and_hour(5, 22)
     booking_request = Booking(request_category='osteopath',
                               request_location='mtl-downtown',
                               request_datetime=sat_at_10)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     # assert top provider is p2
     self.assertEqual(0, len(booking_responses))
Exemplo n.º 3
0
 def test_find_providers_no_matches_wrong_category(self):
     providers = create_test_providers()
     # create booking request - Saturday at 10 PM
     sat_at_10 = testutil.create_datetime_from_weekday_and_hour(5, 22)
     booking_request = Booking(request_category='osteopath', request_location='mtl-downtown', request_datetime=sat_at_10)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     # assert top provider is p2
     self.assertEqual(0, len(booking_responses))
     
     
     
Exemplo n.º 4
0
 def test_find_providers_all_imperfect_matches(self):
     providers = create_test_providers()
     # create booking request - Saturday at 10 PM
     sat_at_10 = testutil.create_datetime_from_weekday_and_hour(testutil.MONDAY, 22)
     booking_request = Booking(request_category='physiotherapy', request_location='mtl-downtown', request_datetime=sat_at_10)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     for br in booking_responses:
         logging.info('providers %s on %s at %s' % (br.provider.email, br.timeslot.start.date(), br.timeslot.start.time()))
     for br in booking_responses:
         self.assertFalse(br.is_perfect_match(booking_request))
     # assert top provider is p2
     self.assertEqual(providers[1][0], booking_responses[0].provider.key)
Exemplo n.º 5
0
 def test_find_providers_all_imperfect_matches(self):
     providers = create_test_providers()
     # create booking request - Saturday at 10 PM
     sat_at_10 = testutil.create_datetime_from_weekday_and_hour(
         testutil.MONDAY, 22)
     booking_request = Booking(request_category='physiotherapy',
                               request_location='mtl-downtown',
                               request_datetime=sat_at_10)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     for br in booking_responses:
         logging.info('providers %s on %s at %s' %
                      (br.provider.email, br.timeslot.start.date(),
                       br.timeslot.start.time()))
     for br in booking_responses:
         self.assertFalse(br.is_perfect_match(booking_request))
     # assert top provider is p2
     self.assertEqual(providers[1][0], booking_responses[0].provider.key)
Exemplo n.º 6
0
 def test_find_providers_perfect_and_imperfect(self):
     providers = create_test_providers()
     logging.info("providers: %s" % providers)
     self.assertEqual(len(providers), Provider.query().count())
     # create booking request
     next_monday_at_9 = testutil.create_datetime_from_weekday_and_hour(testutil.MONDAY, 15)
     booking_request = Booking(request_category='physiotherapy', request_location='mtl-downtown', request_datetime=next_monday_at_9)
     booking_responses = db_search.provider_search(booking_request)
     logging.info('Booking Respones:')
     for br in booking_responses:
         logging.info('providers %s on %s at %s' % (br.provider.email, br.timeslot.start.date(), br.timeslot.start.time()))
     # 2 responses
     self.assertEqual(2, len(booking_responses))
     # first provider is perfet match
     br1 = booking_responses[0]
     self.assertTrue(br1.is_perfect_match(booking_request))
     # second provider is not perfect match
     br2 = booking_responses[1]
     self.assertFalse(br2.is_perfect_match(booking_request))
     # assert top provider is p2
     self.assertEqual(providers[2][0], booking_responses[0].provider.key)