This is based on conversations in issues #553, #554, and #284
- Introduces a django_user fixture, which is a user with no additional
priveleges. Similar to admin_user.
- A user_client, based on django_user. Similar to admin_client.
- 3 new RequestFactory based fixtures, for unauthenticated,
authenticated, and admin users:
- rf_unauth: relies on AnonymousUser, similar to django docs
- rf_admin: relies on admin_user fixture
- rf_user: relies on new django_user fixture
In addition, these 3 fixtures differ from rf in that they:
- Mimic AuthenticationMiddleware by add the user attribute to
the request object
- Mimic SessionMiddleware by adding the 'session' attribute
to the request object. This is an in-memory session store object
This fills the gaps left over by not having normal and unauthenticated
user objects, clients, and request factories (when admin ones were
available), and also covers a common case likely present in Django
projects - anonymous (not logged in), authenticated, and admin users.
Also, Update fixtures.py with changes from @blueyed