def test_disallowed_methods(enforcer_api_client, enforcer, url_kind): create_permit(active=True, owner=enforcer.user, domain=enforcer.enforced_domain) permit_item = PermitLookupItem.objects.first() url = get_url(url_kind, permit_item) disallowed_methods = ('post', 'put', 'patch', 'delete') check_method_status_codes( enforcer_api_client, [url], disallowed_methods, 405)
def test_registration_number_and_time_filter(enforcer_api_client, enforcer): create_permit(active=True, owner=enforcer.user, domain=enforcer.enforced_domain, subject_count=2, area_count=1) permit_1 = PermitLookupItem.objects.first() response = get(enforcer_api_client, list_url_for(reg_num=permit_1.registration_number, time=timezone.now())) assert len(response['results']) == 1 assert response['results'][0]['registration_number'] == permit_1.registration_number
def test_permission_checks(api_client, operator_api_client, enforcer, url_kind): create_permit(active=True, owner=enforcer.user, domain=enforcer.enforced_domain) permit_item = PermitLookupItem.objects.first() url = get_url(url_kind, permit_item) check_method_status_codes( api_client, [url], ALL_METHODS, HTTP_401_UNAUTHORIZED) check_method_status_codes( operator_api_client, [url], ALL_METHODS, HTTP_403_FORBIDDEN, error_code='permission_denied')
def test_list_endpoint_data(enforcer_api_client, enforcer, operator_factory): operator_factory(user=enforcer.user) create_permit(active=True, owner=enforcer.user, domain=enforcer.enforced_domain, subject_count=1, area_count=1) assert PermitLookupItem.objects.count() == 1 permit_item = PermitLookupItem.objects.first() data = get(enforcer_api_client, get_url('list_by_reg_num', permit_item)) assert len(data['results']) == 1 permit_item_data = data['results'][0] check_permit_item_data_keys(permit_item_data) check_permit_item_data_matches_permitlookuptem_object(data['results'][0], permit_item)
def test_time_filter(enforcer_api_client, enforcer): create_permit(active=True, owner=enforcer.user, domain=enforcer.enforced_domain, subject_count=2, area_count=1) permit_1 = PermitLookupItem.objects.all()[0] permit_2 = PermitLookupItem.objects.all()[1] response = get(enforcer_api_client, list_url_for(time=timezone.now())) assert len(response['results']) == 2 permit_2.end_time = timezone.now() - datetime.timedelta(seconds=900) permit_2.save() response = get(enforcer_api_client, list_url_for(time=timezone.now())) assert len(response['results']) == 1 assert response['results'][0]['registration_number'] == permit_1.registration_number