o
    iâºc  ã                   @   s¬   d dl Zd dlm  mZ d dlmZ d dlm	Z	 d dl
mZmZ d dlZd dlmZ d dlZd dlmZ d dlmZ d dlmZ d d	lT eƒ Zd dlZd
d„ Zdd„ ZdS )é    N)Úchoice)Úreverse)ÚrenderÚredirect)ÚUser)ÚFaker)Úcolored)Úsettings)Ú*c           $      C   sœ  t jjdddddddd ¡  tj}|j}|ƒ }|j}|ƒ }d	}	||	k}
|
sjt d
|
fd||	f¡dt	 
¡ v s;t t¡r@t t¡ndt |¡t |¡t |¡t |¡t |¡t |	¡dœ }dd|i }tt |¡ƒ‚d  } } } } } }
}	td	dƒD ]M}|j}dgf|d< t ¡  d¡d	 t ¡  d¡d tj ¡ t ¡ |d ddœ}t ¡  d¡d	 t ¡  d¡d tj ¡ t ¡ |d dddœ}|jtdƒ|d}t |j¡}tt|jdƒƒ |d dkrÀ|jtdƒ|d}t |j¡}tj}|j}|ƒ }|j}|ƒ }d}|| }||k}
|
sht d
|
fd||f¡dt	 
¡ v s&t t¡r+t t¡ndt |¡t |¡t |¡t |¡t |¡dt	 
¡ v sMt |¡rRt |¡ndt |¡d œ }d!d"|i }tt |¡ƒ‚d  } } } } } }
 }}ttt |j¡dƒƒ |d }d#}||k}|s³t d
|fd$||f¡t |¡t |¡d%œ }d&d'|i }tt |¡ƒ‚d  } }}|d( }d)|d* › d+}||k}|sït d
|fd$||f¡t |¡t |¡d%œ }d&d'|i }tt |¡ƒ‚d  } }}|d	 }t|ƒ}d}|| }||k}|sft d
|fd,||f¡d-t	 
¡ v s!t t¡r&t t¡nd-d.t	 
¡ v s4t |¡r9t |¡nd.t |¡dt	 
¡ v sKt |¡rPt |¡ndt |¡d/œ } d0d1| i }!tt |!¡ƒ‚d  } } }}|j }d2}||k}|s°t d
|fd3||f¡d4t	 
¡ v s‘t |¡r–t |¡nd4t |¡t |¡d5œ }"d6d7|"i }#tt |#¡ƒ‚d  } }}t!j}|j}|ƒ }|j}|ƒ }d}|| }||k}
|
s+t d
|
fd||f¡d8t	 
¡ v sét t!¡rît t!¡nd8t |¡t |¡t |¡t |¡t |¡dt	 
¡ v st |¡rt |¡ndt |¡d œ }d!d"|i }tt |¡ƒ‚d  } } } } } }
 }}t"j}|j}|ƒ }|j}|ƒ }d}|| }||k}
|
s°t d
|
fd||f¡d9t	 
¡ v snt t"¡rst t"¡nd9t |¡t |¡t |¡t |¡t |¡dt	 
¡ v s•t |¡ršt |¡ndt |¡d œ }d!d"|i }tt |¡ƒ‚d  } } } } } }
 }}ttt |j¡d:ƒƒ q}d S );NúP-2E356653NJ554300BML54IQYÚBasicú
Basic planúBasic access for 5 daysé   çš™™™™™$@Úpaypal©Úplan_idÚ	plan_typeÚ	plan_nameÚdescribeÚduration_daysÚpriceÚpaymentSourcer   ©ú==©z”%(py10)s
{%(py10)s = %(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.objects
}.all
}()
}.count
}()
} == %(py13)sr   ©Úpy0Úpy2Úpy4Úpy6Úpy8Úpy10Zpy13úassert %(py15)sÚpy15é
   Úplanú é   ©Ú
first_nameÚ	last_nameÚemailÚpasswordÚsessionÚ
membershipÚ8071106362699621PúaA21AALrDjl8qdG3psAL0OXp18uWQ7qdlOcH0IpMKMEF6COtX0JcABunbkfEElf1s43scSCGgZ2HZzo-POo4n-6ofljlg5faCw©r+   r,   r-   r.   r/   ÚOrderIDÚConversationIDúaccounts:signup©ÚpathÚdataÚyellowÚresultúFound Success©r9   ©z¡%(py10)s
{%(py10)s = %(py8)s
{%(py8)s = %(py6)s
{%(py6)s = %(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.objects
}.all
}()
}.count
}()
} == (%(py12)s + %(py14)s)Úi©r   r   r    r!   r"   r#   Zpy12Zpy14úassert %(py17)sÚpy17Úsuccess©z%(py1)s == %(py4)s©Úpy1r    úassert %(py6)sr!   Úmessageú$You are signed up. Check your email r-   ú to activate your account.)z<%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} == (%(py5)s + %(py7)s)ÚlenÚ
mailoutbox)r   rF   Úpy3Úpy5Úpy7zassert %(py10)sr#   ú UseVoice. | Account Confirmation©z/%(py2)s
{%(py2)s = %(py0)s.subject
} == %(py5)sÚmail©r   r   rN   úassert %(py7)srO   ÚProfileÚPaymentÚblue)#ÚPlanÚobjectsÚcreateÚsaver   ÚallÚcountÚ
@pytest_arÚ_call_reprcompareÚ@py_builtinsÚlocalsÚ_should_repr_global_nameÚ	_safereprÚAssertionErrorÚ_format_explanationÚranger/   ÚfakerÚnameÚsplitÚuniquer-   ÚbbanÚpostr   ÚjsonÚloadsÚcontentÚprintr   Ústatus_coderK   ÚsubjectrU   rV   )$ÚdbÚclientrL   Úuser_signup_data_already_signupÚ@py_assert1Ú@py_assert3Ú@py_assert5Ú@py_assert7Ú@py_assert9Ú@py_assert12Ú@py_assert11Ú@py_format14Ú@py_format16r?   r/   r9   Údata_1ÚresponseÚjson_responseÚresÚjs_resÚ@py_assert13Ú@py_assert15Ú@py_format18Ú@py_assert0Ú@py_assert2Ú@py_format5Ú@py_format7rR   Z@py_assert6Z@py_assert8Ú@py_assert4Ú@py_format9Ú@py_format11Ú@py_format6Ú@py_format8© r   úO/var/www/html/docker_usevoice/src/apps/accounts/tests/test_multi_subscribers.pyÚ-test_100_signup_user_with_one_membership_type   sV   ÿÒûø
þ lxêþ þ Ûr’   c                  C   sä  t jjdddddddd ¡  t jjd	d
dddddd ¡  t jjdddddddd ¡  tj}|j}|ƒ }|j}|ƒ }d}||k}	|	sˆt d|	fd||f¡dt	 
¡ v sYt t¡r^t t¡ndt |¡t |¡t |¡t |¡t |¡t |¡dœ }
dd|
i }tt |¡ƒ‚d  } } } } } }	}g d¢}tddƒD ]Ï}| j}t |¡|d< tt|d dƒƒ t ¡  d¡d t ¡  d¡d tj ¡ t ¡ |d |d dœ}t ¡  d¡d t ¡  d¡d tj ¡ t ¡ |d ddd œ}| jtd!ƒ|d"}t |j¡}tt|j d#ƒƒ |d$ d%kro| jtd!ƒ|d&}t |j¡}ttt |j¡d#ƒƒ |d$ }d'}||k}|s\t d|fd(||f¡t |¡t |¡d)œ }d*d+|i }tt |¡ƒ‚d  } }}|d, }d-|d. › d/}||k}|s˜t d|fd(||f¡t |¡t |¡d)œ }d*d+|i }tt |¡ƒ‚d  } }}t!j}|j}|ƒ }|j}|ƒ }d}|| }||k}	|	st d|	fd0||f¡d1t	 
¡ v sÑt t!¡rÖt t!¡nd1t |¡t |¡t |¡t |¡t |¡d2t	 
¡ v søt |¡rýt |¡nd2t |¡d3œ }d4d5|i }tt |¡ƒ‚d  } } } } } }	 }}|d }|j"}d6}||k}|sit d|fd7||f¡d8t	 
¡ v sJt |¡rOt |¡nd8t |¡t |¡d9œ }d:d;|i }tt |¡ƒ‚d  } }}qŸd S )<Nr   r   r   r   r   r   r   r   ÚdemoÚFreezFree access for 5 daysr   úP-2E356653NJ554300BML54IUYZProzPro planzPro access for 5 daysr   r   r   r   r$   r%   )r   r“   r•   r&   r'   Úredr(   r)   r*   r1   r2   r3   r6   r7   r:   r;   r<   r=   rC   rD   rE   rG   r!   rH   rI   r-   rJ   r>   ÚSubscriptionr?   r@   rA   rB   rP   rQ   rR   rS   rT   rO   )#rX   rY   rZ   r[   r   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   r/   Úrandomr   rp   r   rg   rh   ri   rj   r-   rk   rl   r   rm   rn   ro   rq   r—   rr   ) rt   rs   rL   rv   rw   rx   ry   rz   r{   r|   r}   r~   Úplanesr?   r/   r9   r   r€   r   r‚   rƒ   r‡   rˆ   r‰   rŠ   r„   r…   r†   rR   r‹   rŽ   r   r   r   r‘   Ú0test_multi_subscribers_with_different_membershis?   s`   ÿÿÿÒûø
lxþ €Ýrš   )Úbuiltinsr`   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter^   Úsecretsr   Údjango.urlsr   Údjango.shortcutsr   r   ÚpytestZapps.accounts.modelsr   rm   rg   r   Ú	termcolorr   Údjango.confr	   Zapps.subscriptions.modelsr˜   r’   rš   r   r   r   r‘   Ú<module>   s   & .