def setUp(self): super().setUp() self.instance0 = FactoryFloor.TripFactory() self.instance1 = FactoryFloor.TripFactory() self.instance2 = FactoryFloor.TripFactory(lead=RegionFactory()) self.instance3 = FactoryFloor.TripFactory( is_adm_approval_required=True) self.test_url0 = reverse_lazy('travel:trip_delete', kwargs={ "pk": self.instance0.pk, "type": "adm-hit-list" }) self.test_url1 = reverse_lazy('travel:trip_delete', kwargs={ "pk": self.instance1.pk, "type": "region-1" }) self.test_url2 = reverse_lazy('travel:trip_delete', kwargs={ "pk": self.instance2.pk, "type": "back_to_verify" }) self.test_url3 = reverse_lazy('travel:trip_delete', kwargs={ "pk": self.instance3.pk, "type": "all" }) self.expected_template = 'travel/confirm_delete.html'
def test_start_trip_review_process(self): trip = FactoryFloor.TripFactory(status=41) for i in range(0, 5): # add a status date just to make sure it is removed FactoryFloor.TripReviewerFactory(trip=trip, status=23, status_date=timezone.now(), comments="123") for r in trip.reviewers.all(): self.assertEqual(r.status, 23) self.assertIsNotNone(r.status_date) utils.start_trip_review_process(trip, False) self.assertEqual(trip.status, 31) for r in trip.reviewers.all(): self.assertEqual(r.status, 24) self.assertIsNone(r.status_date) # do it again but with rest=True trip = FactoryFloor.TripFactory(status=41) for i in range(0, 5): # add a status date just to make sure it is removed FactoryFloor.TripReviewerFactory(trip=trip, status=23, status_date=timezone.now(), comments="123") for r in trip.reviewers.all(): self.assertEqual(r.status, 23) self.assertIsNotNone(r.status_date) utils.start_trip_review_process(trip, True) self.assertEqual(trip.status, 41) for r in trip.reviewers.all(): self.assertEqual(r.status, 24) self.assertIsNotNone(r.status_date)
def setUp(self): super().setUp() self.instance1 = FactoryFloor.TripFactory(is_adm_approval_required=True) self.instance2 = FactoryFloor.TripFactory(is_adm_approval_required=False) self.test_url1 = reverse_lazy('travel:trip_verify', args=[self.instance1.pk]) self.test_url2 = reverse_lazy('travel:trip_verify', args=[self.instance2.pk]) self.expected_template = 'travel/trip_verification_form.html' self.regional_admin_user = self.get_and_login_user(in_group="travel_admin") self.ncr_admin_user = self.get_and_login_user(in_group="travel_adm_admin")
def setUp(self): super().setUp() self.instance1 = FactoryFloor.TripFactory( is_adm_approval_required=True) self.instance2 = FactoryFloor.TripFactory( is_adm_approval_required=False) self.test_url1 = reverse_lazy('travel:trip_delete', args=[self.instance1.pk]) self.test_url2 = reverse_lazy('travel:trip_delete', args=[self.instance2.pk]) self.expected_template = 'travel/confirm_delete.html' self.regional_admin_user = self.get_and_login_regional_admin() self.ncr_admin_user = self.get_and_login_admin()
def test_trip_review_process(self): activate('en') # actors trip = FactoryFloor.TripFactory(status_id=41) # unreviewed, verified reviewer1 = FactoryFloor.TripReviewerFactory(trip=trip, order=1) reviewer2 = FactoryFloor.TripReviewerFactory(trip=trip, order=2) reviewer3 = FactoryFloor.TripReviewerFactory(trip=trip, order=3) self.assertIsNone(trip.review_start_date) utils.start_trip_review_process(trip) self.assertEqual(trip.status_id, 31) self.assertIsNotNone(trip.review_start_date) for reviewer in trip.reviewers.all(): self.assertEqual(reviewer.status_id, 24) self.assertIsNone(reviewer.status_date) # now let's end the review process utils.end_trip_review_process(trip) self.assertEqual(trip.status_id, 41) # the timestamp should not be undone self.assertIsNotNone(trip.review_start_date) for reviewer in trip.reviewers.all(): self.assertEqual(reviewer.status_id, 23) self.assertIsNone(reviewer.status_date)
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.test_url = reverse_lazy('travel:trip_detail', args=[self.instance.pk]) self.expected_template = 'travel/trip_detail.html' self.user = self.get_and_login_user()
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.test_url1 = reverse_lazy('travel:trip_new', args=[]) self.test_url2 = reverse_lazy('travel:trip_new', args=[]) + "?pop=true" self.expected_template = 'travel/trip_form.html' self.user = self.get_and_login_user()
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.user = self.get_and_login_user(in_group="travel_adm_admin") self.test_url = reverse_lazy('travel:trip_review_toggle', kwargs={"pk": self.instance.pk}) self.expected_template = 'travel/trip_review_process_form.html'
def setUp(self): super().setUp() self.trip_request = FactoryFloor.TripRequestFactory() self.trip = FactoryFloor.TripFactory() self.test_url1 = reverse_lazy('travel:export_cfts_list', args=[]) self.test_url2 = reverse_lazy('travel:export_cfts_request', args=[self.trip_request.id]) self.test_url3 = reverse_lazy('travel:export_cfts_trip', args=[self.trip.id]) self.user = self.get_and_login_user(in_group="travel_admin")
def setUp(self): super().setUp() self.instance1 = FactoryFloor.TripFactory( is_adm_approval_required=True) self.test_url1 = reverse_lazy('travel:trip_review_toggle', args=[self.instance1.pk]) self.expected_template = 'travel/form.html' self.ncr_admin_user = self.get_and_login_admin()
def setUp(self): super().setUp() self.test_url2 = reverse_lazy('travel:trip_list', kwargs={"type": "upcoming"}) # should be accessible by anyone self.test_url3 = reverse_lazy('travel:trip_list', kwargs={"type": "adm-hit-list"}) self.test_url1 = reverse_lazy('travel:trip_list', kwargs={"type": "all"}) self.expected_template = 'travel/trip_list.html' self.admin_user = self.get_and_login_user(in_group="travel_admin") # in order for this to work, we have to make sure there is a trip obj in the db FactoryFloor.TripFactory()
def test_view(self): self.assert_not_broken(self.test_url) self.assert_non_public_view(test_url=self.test_url, expected_template=self.expected_template, user=self.user) # if there is an inappropriate trip, we should get 302 response reviewed_trip = FactoryFloor.TripFactory(status_id=32) cancelled_trip = FactoryFloor.TripFactory(status_id=43) self.test_url1 = reverse_lazy('travel:trip_review_toggle', kwargs={"pk": reviewed_trip.pk}) self.test_url2 = reverse_lazy('travel:trip_review_toggle', kwargs={"pk": cancelled_trip.pk}) self.assert_non_public_view(test_url=self.test_url1, expected_code=302, user=self.user) self.assert_non_public_view(test_url=self.test_url2, expected_code=302, user=self.user)
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.test_url = reverse_lazy('travel:trip_verify', kwargs={ "pk": self.instance.pk, "region": 0, "adm": 0 }) self.expected_template = 'travel/trip_verification_form.html' self.admin_user = self.get_and_login_user(in_group="travel_admin")
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.test_url0 = reverse_lazy('travel:trip_detail', kwargs={ "pk": self.instance.pk, "type": "upcoming" }) self.test_url1 = reverse_lazy('travel:trip_detail', kwargs={ "pk": self.instance.pk, "type": "region-1" }) self.expected_template = 'travel/trip_detail.html'
def test_get_adm_eligible_trips(self): trip = FactoryFloor.TripFactory(is_adm_approval_required=False, start_date=timezone.now(), trip_subcategory_id=8) self.assertNotIn(trip, utils.get_adm_eligible_trips()) trip.is_adm_approval_required = True trip.save() self.assertNotIn(trip, utils.get_adm_eligible_trips()) trip.status = 41 trip.save() self.assertNotIn(trip, utils.get_adm_eligible_trips()) trip_request = FactoryFloor.TripRequestFactory(trip=trip) FactoryFloor.TravellerFactory(request=trip_request) self.assertNotIn(trip, utils.get_adm_eligible_trips()) trip_request.status = 12 trip_request.save() self.assertIn(trip, utils.get_adm_eligible_trips())
def test_get_trip_reviewers(self): # create your cast of people ncr_coord2, created = models.DefaultReviewer.objects.get_or_create(user=UserFactory(), special_role=3, order=2) ncr_coord1, created = models.DefaultReviewer.objects.get_or_create(user=UserFactory(), special_role=3, order=1) adm_recommender, created = models.DefaultReviewer.objects.get_or_create(user=UserFactory(), special_role=4) adm, created = models.DefaultReviewer.objects.get_or_create(user=UserFactory(), special_role=5) trip = FactoryFloor.TripFactory(status=41, is_adm_approval_required=True) self.assertEqual(trip.reviewers.count(), 0) utils.get_trip_reviewers(trip) supposed_reviewer_list = [ ncr_coord1.user, ncr_coord2.user, adm_recommender.user, adm.user, ] actual_reviewer_list = [r.user for r in trip.reviewers.all()] self.assertEqual(supposed_reviewer_list, actual_reviewer_list)
def setUp(self): super().setUp() self.instance = FactoryFloor.TripFactory() self.test_url0 = reverse_lazy('travel:trip_edit', kwargs={ "pk": self.instance.pk, "type": "upcoming" }) self.test_url1 = reverse_lazy('travel:trip_edit', kwargs={ "pk": self.instance.pk, "type": "pop" }) self.test_url2 = reverse_lazy('travel:trip_edit', kwargs={ "pk": self.instance.pk, "type": "region-1" }) self.expected_template = 'travel/trip_form.html' self.expected_template1 = 'travel/trip_form_popout.html' self.admin_user = self.get_and_login_user(in_group="travel_admin")
def setUp(self): super().setUp() for i in range(0, 10): FactoryFloor.TripFactory() self.test_url1 = reverse_lazy('travel:export_trip_list', args=[]) self.user = self.get_and_login_user(in_group="travel_admin")
def test_is_trip_approver(self): user = self.get_and_login_user() trip = FactoryFloor.TripFactory(status=31) self.assertFalse(utils.is_trip_approver(user, trip)) FactoryFloor.TripReviewerFactory(user=user, trip=trip, status=25) self.assertTrue(utils.is_trip_approver(user, trip))
def setUp(self): super().setUp() for i in range(0, 10): FactoryFloor.TripFactory() self.test_url1 = reverse_lazy('travel:export_upcoming_trips', args=[]) self.user = self.get_and_login_regional_admin()