import pytest
from rest_framework.test import APIClient
from django.contrib.auth import get_user_model
from model_bakery import baker

Users = get_user_model()


@pytest.fixture
def authenticate_user():
    def _authenticate(user=None):
        if user is None:
            user = baker.make(Users, is_staff=False, is_superuser=False)

        client = APIClient()
        client.force_authenticate(user=user)
        return client

    return _authenticate
