import random import string import time from mock import patch import mockredis from django.test import TestCase from django.contrib.auth.models import User from django.core.urlresolvers import NoReverseMatch from django.core.urlresolvers import reverse from defender.decorators import ( COOLOFF_TIME, FAILURE_LIMIT, reset_failed_attempts) redis_client = mockredis.mock_strict_redis_client() # Django >= 1.7 compatibility try: ADMIN_LOGIN_URL = reverse('admin:login') LOGIN_FORM_KEY = '