def test_default_get_client_username(self): expected = 'test-username' request = AxesHttpRequest() request.POST['username'] = expected actual = get_client_username(request) self.assertEqual(expected, actual)
def test_default_get_client_username_credentials(self): expected = 'test-username' expected_in_credentials = 'test-credentials-username' request = AxesHttpRequest() request.POST['username'] = expected credentials = {'username': expected_in_credentials} actual = get_client_username(request, credentials) self.assertEqual(expected_in_credentials, actual)
def test_custom_get_client_username_from_credentials(self): provided = 'test-username' provided_in_credentials = 'test-credentials-username' expected_in_credentials = 'prefixed-' + provided_in_credentials request = AxesHttpRequest() request.POST['username'] = provided credentials = {'username': provided_in_credentials} actual = get_client_username(request, credentials) self.assertEqual(expected_in_credentials, actual)
def test_default_get_client_username_credentials(self): expected = 'test-username' expected_in_credentials = 'test-credentials-username' request = AxesHttpRequest() request.POST['username'] = expected credentials = { 'username': expected_in_credentials } actual = get_client_username(request, credentials) self.assertEqual(expected_in_credentials, actual)
def get_lockout_response(request: AxesHttpRequest, credentials: dict = None) -> HttpResponse: status = 403 context = { 'failure_limit': settings.AXES_FAILURE_LIMIT, 'username': get_client_username(request, credentials) or '' } cool_off = get_cool_off() if cool_off: context.update({'cool_off': get_cool_off_iso8601(cool_off)}) if request.is_ajax(): return JsonResponse( context, status=status, ) if settings.AXES_LOCKOUT_TEMPLATE: return render( request, settings.AXES_LOCKOUT_TEMPLATE, context, status=status, ) if settings.AXES_LOCKOUT_URL: return HttpResponseRedirect(settings.AXES_LOCKOUT_URL, ) return HttpResponse( get_lockout_message(), status=status, )
def get_lockout_response(request: AxesHttpRequest, credentials: dict = None) -> HttpResponse: status = 403 context = { 'failure_limit': settings.AXES_FAILURE_LIMIT, 'username': get_client_username(request, credentials) or '' } cool_off = get_cool_off() if cool_off: context.update({ 'cooloff_time': get_cool_off_iso8601(cool_off), # differing old name is kept for backwards compatibility }) if request.is_ajax(): return JsonResponse( context, status=status, ) if settings.AXES_LOCKOUT_TEMPLATE: return render( request, settings.AXES_LOCKOUT_TEMPLATE, context, status=status, ) if settings.AXES_LOCKOUT_URL: return HttpResponseRedirect( settings.AXES_LOCKOUT_URL, ) return HttpResponse( get_lockout_message(), status=status, )
def setUp(self): self.request = AxesHttpRequest()
def setUp(self): self.request = AxesHttpRequest() self.request.method = 'GET'
def setUp(self): self.request = AxesHttpRequest() self.request.method = 'POST' self.request.META['REMOTE_ADDR'] = '127.0.0.1' self.request.axes_ip_address = '127.0.0.1'
def test_get_client_username_str(self): self.assertEqual( get_client_username(AxesHttpRequest(), {}), 'username', )
def test_get_client_username_not_callable(self): with self.assertRaises(TypeError): get_client_username(AxesHttpRequest(), {})
def test_get_client_username_invalid_callable_too_many_arguments(self): with self.assertRaises(TypeError): get_client_username(AxesHttpRequest(), {})
def test_get_client_username(self): self.assertEqual(get_client_username(AxesHttpRequest(), {}), 'example')