def test_catering_order_comment_visibility(user_api_client, user, user2, catering_order2, catering_order_comment, catering_order2_comment, test_unit, test_unit2): # two reservation comments made on own reservations, both should be visible response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment)) # the second comment is created by the other user, still both should be visible catering_order2_comment.created_by = user2 catering_order2_comment.save() response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment)) # the second comment is created by the other user to her reservation, it should be hidden catering_order2.reservation.user = user2 catering_order2.reservation.save() response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order_comment) # adding comment access perm to an unrelated unit, the hidden comment should still be hidden assign_perm('unit:can_access_reservation_comments', user, test_unit) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order_comment) # adding comment access perm to the second commit's unit, both comment should be visible once again assign_perm('unit:can_view_reservation_catering_orders', user, test_unit2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment))
def test_can_view_others_orders_if_has_perm(user_api_client, user2, catering_order, reservation): user_api_client.force_authenticate(user=user2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert not response.data['results'] assign_perm('unit:can_view_reservation_catering_orders', user2, reservation.resource.unit) user_api_client.force_authenticate(user=user2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order)
def test_unit_filter(user_api_client, catering_provider, catering_provider2, test_unit2, test_unit3): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_provider, catering_provider2)) response = user_api_client.get(LIST_URL + '?unit=%s' % test_unit2.pk) assert response.status_code == 200 assert_response_objects(response, catering_provider2) response = user_api_client.get(LIST_URL + '?unit=%s' % test_unit3.pk) assert response.status_code == 200 assert len(response.data['results']) == 0
def test_category_filter(user_api_client, catering_product_category, catering_product, catering_product2): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_product, catering_product2)) response = user_api_client.get(LIST_URL + '?category=%s' % catering_product_category.pk) assert response.status_code == 200 assert_response_objects(response, catering_product) response = user_api_client.get(LIST_URL + '?category=87568957858789698798') assert response.status_code == 400
def test_provider_filter(user_api_client, catering_provider, catering_product, catering_product2): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_product, catering_product2)) response = user_api_client.get(LIST_URL + '?provider=%s' % catering_provider.pk) assert response.status_code == 200 assert_response_objects(response, catering_product) response = user_api_client.get(LIST_URL + '?provider=87568957858789698798') assert response.status_code == 200 assert len(response.data['results']) == 0
def test_can_view_others_orders_if_has_perm(user_api_client, user2, catering_order, reservation): user_api_client.force_authenticate(user=user2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert not response.data['results'] assign_perm('unit:can_view_reservation_catering_orders', user2, reservation.resource.unit) user_api_client.force_authenticate(user=user2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order)
def test_provider_filter(user_api_client, catering_provider, catering_product_category, catering_product_category2): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_product_category, catering_product_category2)) response = user_api_client.get(LIST_URL + '?provider=%s' % catering_provider.pk) assert response.status_code == 200 assert_response_objects(response, catering_product_category) response = user_api_client.get(LIST_URL + '?provider=not_a_provider') assert response.status_code == 400
def test_unit_filter(user_api_client, catering_provider, catering_provider2, test_unit2, test_unit3): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_provider, catering_provider2)) response = user_api_client.get(LIST_URL + '?unit=%s' % test_unit2.pk) assert response.status_code == 200 assert_response_objects(response, catering_provider2) response = user_api_client.get(LIST_URL + '?unit=%s' % test_unit3.pk) assert response.status_code == 200 assert len(response.data['results']) == 0
def test_provider_filter(user_api_client, catering_provider, catering_product_category, catering_product_category2): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects( response, (catering_product_category, catering_product_category2)) response = user_api_client.get(LIST_URL + '?provider=%s' % catering_provider.pk) assert response.status_code == 200 assert_response_objects(response, catering_product_category) response = user_api_client.get(LIST_URL + '?provider=not_a_provider') assert response.status_code == 400
def test_reservation_filter(user_api_client, catering_order, reservation, reservation2, reservation3): catering_order2 = CateringOrder.objects.create( reservation=reservation2, provider=catering_order.provider, invoicing_data='123456', ) catering_order3 = CateringOrder.objects.create( reservation=reservation2, provider=catering_order.provider, invoicing_data='654321', ) catering_order_that_should_not_be_visible = CateringOrder.objects.create( reservation=reservation3, provider=catering_order.provider, invoicing_data='xxx', ) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order, catering_order2, catering_order3)) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation.pk) assert response.status_code == 200 assert_response_objects(response, catering_order) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation2.pk) assert response.status_code == 200 assert_response_objects(response, (catering_order2, catering_order3)) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation3.pk) assert response.status_code == 200 assert not len(response.data['results'])
def test_catering_order_comment_visibility(user_api_client, user, user2, catering_order2, catering_order_comment, catering_order2_comment, test_unit, test_unit2): # two reservation comments made on own reservations, both should be visible response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment)) # the second comment is created by the other user, still both should be visible catering_order2_comment.created_by = user2 catering_order2_comment.save() response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment)) # the second comment is created by the other user to her reservation, it should be hidden catering_order2.reservation.user = user2 catering_order2.reservation.save() response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order_comment) # adding comment access perm to an unrelated unit, the hidden comment should still be hidden assign_perm('unit:can_access_reservation_comments', user, test_unit) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, catering_order_comment) # adding comment access perm to the second commit's unit, both comment should be visible once again assign_perm('unit:can_view_reservation_catering_orders', user, test_unit2) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment))
def test_catering_order_comment_filtering(user_api_client, catering_order, catering_order_comment, catering_order2_comment, reservation_comment): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment, reservation_comment)) response = user_api_client.get(LIST_URL + '?target_type=catering_order') assert response.status_code == 200 assert_response_objects(response, (catering_order_comment, catering_order2_comment)) response = user_api_client.get(LIST_URL + '?target_type=catering_order&target_id=%s' % catering_order.id) assert response.status_code == 200 assert_response_objects(response, catering_order_comment)
def test_comment_filtering(user_api_client, user, reservation_comment, reservation2_comment, resource_group_comment, reservation): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (reservation_comment, reservation2_comment, resource_group_comment)) response = user_api_client.get(LIST_URL + '?target_type=reservation') assert response.status_code == 200 assert_response_objects(response, (reservation_comment, reservation2_comment)) response = user_api_client.get(LIST_URL + '?target_type=reservation&target_id=%s' % reservation.id) assert response.status_code == 200 assert_response_objects(response, reservation_comment)
def test_reservation_comment_filtering(user_api_client, reservation_comment, reservation2_comment, catering_order_comment, reservation): response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects( response, (reservation_comment, reservation2_comment, catering_order_comment)) response = user_api_client.get(LIST_URL + '?target_type=reservation') assert response.status_code == 200 assert_response_objects(response, (reservation_comment, reservation2_comment)) response = user_api_client.get(LIST_URL + '?target_type=reservation&target_id=%s' % reservation.id) assert response.status_code == 200 assert_response_objects(response, reservation_comment)
def test_reservation_filter(user_api_client, catering_order, reservation, reservation2, reservation3): catering_order2 = CateringOrder.objects.create( reservation=reservation2, provider=catering_order.provider, invoicing_data='123456', ) catering_order3 = CateringOrder.objects.create( reservation=reservation2, provider=catering_order.provider, invoicing_data='654321', ) catering_order_that_should_not_be_visible = CateringOrder.objects.create( reservation=reservation3, provider=catering_order.provider, invoicing_data='xxx', ) response = user_api_client.get(LIST_URL) assert response.status_code == 200 assert_response_objects(response, (catering_order, catering_order2, catering_order3)) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation.pk) assert response.status_code == 200 assert_response_objects(response, catering_order) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation2.pk) assert response.status_code == 200 assert_response_objects(response, (catering_order2, catering_order3)) response = user_api_client.get(LIST_URL + '?reservation=%s' % reservation3.pk) assert response.status_code == 200 assert not len(response.data['results'])