3 from django
.urls
import resolve
4 from django
.contrib
.auth
.models
import AnonymousUser
5 from django
.test
.client
import RequestFactory
6 from django
.contrib
.auth
import get_user_model
8 from mygpo
.utils
import random_token
11 def create_auth_string(username
, password
):
12 pwdstr
= "{0}:{1}".format(username
, password
).rstrip()
13 credentials
= base64
.b64encode(pwdstr
.encode("utf-8"))
14 auth_string
= "Basic " + credentials
.decode("ascii")
18 def anon_request(url
):
19 """Emulates an anonymous request, returns the response"""
20 factory
= RequestFactory()
21 request
= factory
.get(url
)
22 request
.user
= AnonymousUser()
25 response
= view
.func(request
, *view
.args
, **view
.kwargs
)
30 """Create a user with random data"""
31 User
= get_user_model()
32 password
= random_token(10)
33 username
= random_token(8)
34 user
= User(username
=username
, email
=username
+ "@example.com")
35 user
.set_password(password
)