User インスタンスでフィクスチャを作成する
{
"pk": 15,
"model": "auth.user",
"fields": {
"username": "user",
"first_name": "user",
"last_name": "userov",
"is_active": true,
"is_superuser": false,
"is_staff": false,
"last_login": "2012-07-20 15:37:03",
"groups": [],
"user_permissions": [],
"password": "!",
"email": "",
"date_joined": "2012-07-18 13:29:53"
}
}
このような SocialAuthUser インスタンスでフィクスチャを作成します
{
"pk": 7,
"model": "social_auth.usersocialauth",
"fields": {
"uid": "1234567",
"extra_data": "%some account social data%",
"user": 15,
"provider": "linkedin"
}
}
したがって、実際のユーザーと同じ振る舞いをし、必要なすべてのソーシャル データを持っているユーザーを取得できます。新しいパスワードを設定すると、認証メカニズムを使用してこのユーザーをログインできます。
...
user.set_password('password')
user.save()
logged_in = self.client.login(username='user', password='password')
次に、ログインが必要なビューを呼び出すだけです
self.client.get("some/url")
django.contrib.auth.backends.ModelBackend
これは必要でありdjango.contrib.sessions
、INTALLED_APPS タプルにある必要があることを忘れないでください
また、標準認証を使用する利点は、oauth トークンなどを取得するためにサーバー リクエストを行う必要がないことです。