U
    ¶[Öe!  ã                   @   s  d dl Z d dlZd dlZd dlmZ d dlmZmZm	Z	m
Z
mZ d dlmZ dZG dd„ deƒZG dd	„ d	e	ƒZG d
d„ deƒZG dd„ de
ƒZG dd„ deƒZG dd„ deƒZG dd„ deƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZdS )é    N)ÚBaseStrategy)Ú	UserMixinÚ
NonceMixinÚAssociationMixinÚ	CodeMixinÚBaseStorage)ÚUserzImplement in subclassc                   @   s   e Zd ZdS )Ú
BrokenUserN©Ú__name__Ú
__module__Ú__qualname__© r   r   ú[/var/www/html/services/stratfitenv/lib/python3.8/site-packages/social/tests/test_storage.pyr	      s   r	   c                   @   s   e Zd ZdS )ÚBrokenAssociationNr
   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚBrokenNonceNr
   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )Ú
BrokenCodeNr
   r   r   r   r   r      s   r   c                   @   s   e Zd ZdS )ÚBrokenStrategyNr
   r   r   r   r   r      s   r   c                   @   s   e Zd Zdd„ ZdS )ÚBrokenStrategyWithSettingsc                 C   s
   t ƒ ‚d S ©N)ÚAttributeError)ÚselfÚnamer   r   r   Úget_setting$   s    z&BrokenStrategyWithSettings.get_settingN)r   r   r   r   r   r   r   r   r   #   s   r   c                   @   s   e Zd ZdS )ÚBrokenStorageNr
   r   r   r   r   r   (   s   r   c                   @   s\   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ ZdS )ÚBrokenUserTestsc                 C   s
   t | _d S r   )r	   Úuser©r   r   r   r   ÚsetUp.   s    zBrokenUserTests.setUpc                 C   s
   d | _ d S r   )r   r   r   r   r   ÚtearDown1   s    zBrokenUserTests.tearDownc              	   C   s,   |   tt¡ | j tdƒ¡ W 5 Q R X d S ©NÚfoobar)ÚassertRaisesRegexpÚNotImplementedErrorÚNOT_IMPLEMENTED_MSGr   Zget_usernamer   r   r   r   r   Útest_get_username4   s    z!BrokenUserTests.test_get_usernamec              	   C   s&   |   tt¡ | j ¡  W 5 Q R X d S r   )r"   r#   r$   r   Z
user_modelr   r   r   r   Útest_user_model8   s    zBrokenUserTests.test_user_modelc              	   C   s&   |   tt¡ | j ¡  W 5 Q R X d S r   )r"   r#   r$   r   Zusername_max_lengthr   r   r   r   Útest_username_max_length<   s    z(BrokenUserTests.test_username_max_lengthc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S )Né   )r"   r#   r$   r   Zget_userr   r   r   r   Útest_get_user@   s    zBrokenUserTests.test_get_userc              	   C   s*   |   tt¡ | j dd¡ W 5 Q R X d S )NÚfoor(   )r"   r#   r$   r   Zget_social_authr   r   r   r   Útest_get_social_authD   s    z$BrokenUserTests.test_get_social_authc              	   C   s,   |   tt¡ | j tdƒ¡ W 5 Q R X d S r    )r"   r#   r$   r   Zget_social_auth_for_userr   r   r   r   r   Útest_get_social_auth_for_userH   s    z-BrokenUserTests.test_get_social_auth_for_userc              	   C   s0   |   tt¡ | j tdƒdd¡ W 5 Q R X d S )Nr!   r(   r*   )r"   r#   r$   r   Zcreate_social_authr   r   r   r   r   Útest_create_social_authL   s    z'BrokenUserTests.test_create_social_authc              	   C   s*   |   tt¡ | j tƒ ¡ W 5 Q R X d S r   )r"   r#   r$   r   Z
disconnectr	   r   r   r   r   Útest_disconnectP   s    zBrokenUserTests.test_disconnectN)r   r   r   r   r   r%   r&   r'   r)   r+   r,   r-   r.   r   r   r   r   r   ,   s   r   c                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚBrokenAssociationTestsc                 C   s
   t | _d S r   )r   Úassociationr   r   r   r   r   V   s    zBrokenAssociationTests.setUpc                 C   s
   d | _ d S r   )r0   r   r   r   r   r   Y   s    zBrokenAssociationTests.tearDownc              	   C   s,   |   tt¡ | j dtƒ ¡ W 5 Q R X d S ©Núhttp://foobar.com)r"   r#   r$   r0   Ústorer   r   r   r   r   Ú
test_store\   s    z!BrokenAssociationTests.test_storec              	   C   s&   |   tt¡ | j ¡  W 5 Q R X d S r   )r"   r#   r$   r0   Úgetr   r   r   r   Útest_get`   s    zBrokenAssociationTests.test_getc              	   C   s.   |   tt¡ | j dddg¡ W 5 Q R X d S )Nr(   é   é   )r"   r#   r$   r0   Úremover   r   r   r   Útest_removed   s    z"BrokenAssociationTests.test_removeN)r   r   r   r   r   r4   r6   r:   r   r   r   r   r/   U   s
   r/   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚBrokenNonceTestsc                 C   s
   t | _d S r   )r   Únoncer   r   r   r   r   j   s    zBrokenNonceTests.setUpc                 C   s
   d | _ d S r   )r<   r   r   r   r   r   m   s    zBrokenNonceTests.tearDownc              	   C   s,   |   tt¡ | j ddd¡ W 5 Q R X d S )Nr2   irƒ[QZ	foobar123)r"   r#   r$   r<   Zuser   r   r   r   Útest_usep   s    zBrokenNonceTests.test_useN)r   r   r   r   r   r=   r   r   r   r   r;   i   s   r;   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )ÚBrokenCodeTestc                 C   s
   t | _d S r   )r   Úcoder   r   r   r   r   v   s    zBrokenCodeTest.setUpc                 C   s
   d | _ d S r   )r?   r   r   r   r   r   y   s    zBrokenCodeTest.tearDownc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S r    )r"   r#   r$   r?   Úget_coder   r   r   r   Útest_get_code|   s    zBrokenCodeTest.test_get_codeN)r   r   r   r   r   rA   r   r   r   r   r>   u   s   r>   c                   @   s”   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd„ Zdd „ Zd!d"„ Zd#S )$ÚBrokenStrategyTestsc                 C   s   t td| _d S )N©Ústorage)r   r   Ústrategyr   r   r   r   r   ‚   s    zBrokenStrategyTests.setUpc                 C   s
   d | _ d S r   )rE   r   r   r   r   r   …   s    zBrokenStrategyTests.tearDownc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S r1   )r"   r#   r$   rE   Úredirectr   r   r   r   Útest_redirectˆ   s    z!BrokenStrategyTests.test_redirectc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S r    )r"   r#   r$   rE   r   r   r   r   r   Útest_get_settingŒ   s    z$BrokenStrategyTests.test_get_settingc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S )Nú<p>foobar</p>)r"   r#   r$   rE   Úhtmlr   r   r   r   Ú	test_html   s    zBrokenStrategyTests.test_htmlc              	   C   s&   |   tt¡ | j ¡  W 5 Q R X d S r   )r"   r#   r$   rE   Zrequest_datar   r   r   r   Útest_request_data”   s    z%BrokenStrategyTests.test_request_datac              	   C   s&   |   tt¡ | j ¡  W 5 Q R X d S r   )r"   r#   r$   rE   Úrequest_hostr   r   r   r   Útest_request_host˜   s    z%BrokenStrategyTests.test_request_hostc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S r    )r"   r#   r$   rE   Zsession_getr   r   r   r   Útest_session_getœ   s    z$BrokenStrategyTests.test_session_getc              	   C   s*   |   tt¡ | j dd¡ W 5 Q R X d S )Nr!   é{   )r"   r#   r$   rE   Zsession_setr   r   r   r   Útest_session_set    s    z$BrokenStrategyTests.test_session_setc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S r    )r"   r#   r$   rE   Zsession_popr   r   r   r   Útest_session_pop¤   s    z$BrokenStrategyTests.test_session_popc              	   C   s(   |   tt¡ | j d¡ W 5 Q R X d S )Nz/foobar)r"   r#   r$   rE   Zbuild_absolute_urir   r   r   r   Útest_build_absolute_uri¨   s    z+BrokenStrategyTests.test_build_absolute_uric              	   C   s,   |   tt¡ | jjdi d W 5 Q R X d S )Nzfoobar.html)Úcontext©r"   r#   r$   rE   Úrender_htmlr   r   r   r   Útest_render_html_with_tpl¬   s    z-BrokenStrategyTests.test_render_html_with_tplc              	   C   s,   |   tt¡ | jjdi d W 5 Q R X d S )NrI   )rJ   rT   rU   r   r   r   r   Útest_render_html_with_html°   s    z.BrokenStrategyTests.test_render_html_with_htmlc              	   C   s&   |   td¡ | j ¡  W 5 Q R X d S )Nz#Missing template or html parameters)r"   Ú
ValueErrorrE   rV   r   r   r   r   Útest_render_html_with_none´   s    ÿz.BrokenStrategyTests.test_render_html_with_nonec              	   C   s*   |   tt¡ | jj d ¡ W 5 Q R X d S r   )r"   r#   r$   rE   rD   Zis_integrity_errorr   r   r   r   Útest_is_integrity_error¹   s    z+BrokenStrategyTests.test_is_integrity_errorc                 C   s   |   t| j ¡ tjƒ¡ d S r   )Ú
assertTrueÚ
isinstancerE   Úrandom_stringÚsixÚstring_typesr   r   r   r   Útest_random_string½   s    ÿz&BrokenStrategyTests.test_random_stringc                 C   sD   dd„ }t tdd ƒ}|t_ttd}|  t| ¡ tj	ƒ¡ |t_d S )Nc                   S   s
   t ƒ ‚d S r   )r#   r   r   r   r   ÚSystemRandomÂ   s    zQBrokenStrategyTests.test_random_string_without_systemrandom.<locals>.SystemRandomrb   rC   )
ÚgetattrÚrandomrb   r   r   r\   r]   r^   r_   r`   )r   rb   Zorig_randomrE   r   r   r   Ú'test_random_string_without_systemrandomÁ   s    
z;BrokenStrategyTests.test_random_string_without_systemrandomN)r   r   r   r   r   rG   rH   rK   rL   rN   rO   rQ   rR   rS   rW   rX   rZ   r[   ra   re   r   r   r   r   rB      s"   rB   )r_   rd   Z	unittest2ZunittestZsocial.strategies.baser   Zsocial.storage.baser   r   r   r   r   Zsocial.tests.modelsr   r$   r	   r   r   r   r   r   r   ZTestCaser   r/   r;   r>   rB   r   r   r   r   Ú<module>   s$   )