o
    h
                     @   sF   d dl mZ d dlmZ d dlmZ ddlmZ G dd deeZdS )	    )TestCase)OAuth2TestsMixinMockedResponse   )DataportenProviderc                       sT   e Zd ZejZ fddZdddZdd Zdd	 Z	d
d Z
dd Zdd Z  ZS )DataportenTestc                    s*   t t|   ddgdddi gd| _d S )Nz$76a7a061-3c55-430d-8ee0-6f82ec42501fzfeide:andreas@uninett.nou   Andreas Åkre Solbergandreas.solberg@uninett.noz&p:a3019954-902f-45a3-b4ee-bca7b48ab507)userid
userid_secnameemailprofilephotogroups)superr   setUp	mock_dataself	__class__ k/var/www/html/env_mimamsha/lib/python3.10/site-packages/allauth/socialaccount/providers/dataporten/tests.pyr      s   zDataportenTest.setUpTc                 C   s   d}|rd}d| S )N z,"refresh_token": "testrf"z{
            "access_token":"testac",
            "expires_in":3600,
            "scope": "userid profile groups"
            %s
        }r   )r   with_refresh_tokenrtr   r   r   get_login_response_json   s   z&DataportenTest.get_login_response_jsonc                 C   s   t ddddidS )N   u  {
                "user": {
                    "userid": "76a7a061-3c55-430d-8ee0-6f82ec42501f",
                    "userid_sec": ["feide:andreas@uninett.no"],
                    "name": "Andreas Åkre Solberg",
                    "email": "andreas.solberg@uninett.no",
                    "profilephoto": "p:a3019954-902f-45a3-b4ee-bca7b48ab507"
                },
                "audience": "app123id"
            }zcontent-typezapplication/json)status_codecontentheadersr   r   r   r   r   get_mocked_response%   s
   
z"DataportenTest.get_mocked_responsec                 C   s   dS )Nr	   r   r   r   r   r   get_expected_to_str5   s   z"DataportenTest.get_expected_to_strc                 C   s$   | j | j}| || jd  d S )Nr
   )providerextract_uidr   assertEqual)r   uidr   r   r   test_extract_uid8   s   zDataportenTest.test_extract_uidc                 C   s    | j | j}| || j d S )N)r#   extract_extra_datar   r%   )r   
extra_datar   r   r   test_extract_extra_data<   s   z&DataportenTest.test_extract_extra_datac                 C   sP   | j | j}| |d d t| j}g |d< | j |}| |d d d S )Nusernameandreasr   zandreas.solberg)r#   extract_common_fieldsr   r%   dict)r   common_fieldsnew_mock_datanew_common_fieldsr   r   r   test_extract_common_fieldsB   s   
z)DataportenTest.test_extract_common_fields)T)__name__
__module____qualname__r   idprovider_idr   r   r!   r"   r'   r*   r2   __classcell__r   r   r   r   r   	   s    
r   N)	django.testr   allauth.socialaccount.testsr   allauth.testsr   r#   r   r   r   r   r   r   <module>   s
    