o
    eÞ¯U  ã                   @   sZ   d dl Z d dlZd dlmZ d dlmZ d dlmZ d dlm	Z	 dgZ
G dd„ de	ƒZdS )é    N)Úparse)ÚEmailMultiAlternatives)ÚMailbox)ÚEmailMessageTestCaseÚTestImapc                       s,   e Zd Z‡ fdd„Zdd„ Zdd„ Z‡  ZS )r   c                    sn   t t| ƒ ¡  tj d¡| _| j| j| j| j	| j
g}t|ƒs#|  d¡ tjjd|  ¡ d�| _tt ¡ ƒ| _d S )NÚEMAIL_IMAP_SERVERz¤Integration tests are not available without having the the following environment variables set: EMAIL_ACCOUNT, EMAIL_PASSWORD, EMAIL_SMTP_SERVER, EMAIL_IMAP_SERVER.zIntegration Test Imap)ÚnameÚuri)Úsuperr   ÚsetUpÚosÚenvironÚgetÚtest_imap_serverÚtest_accountÚtest_passwordÚtest_smtp_serverÚtest_from_emailÚallÚskipTestr   ÚobjectsÚcreateÚget_connection_stringÚmailboxÚstrÚuuidÚuuid4Úarbitrary_identifier)ÚselfÚrequired_settings©Ú	__class__© ú\/var/www/html/env/lib/python3.10/site-packages/django_mailbox/tests/test_integration_imap.pyr      s$   
ÿûÿþzTestImap.setUpc                 C   s"   dj t | j¡t | j¡| jd�S )Nz(imap+ssl://{account}:{password}@{server})ÚaccountÚpasswordÚserver)Úformatr   Úquoter   r   r   ©r   r"   r"   r#   r   ,   s
   

ýzTestImap.get_connection_stringc                    st   d}t ˆ j|ˆ jˆ jgƒ}| ¡  ˆ jˆ j‡ fdd„d�}ˆ  dt|ƒ¡ ˆ  |d j	ˆ j¡ ˆ  |d j
|¡ d S )NzThis is some contentc                    s   | d ˆ j kS )NÚsubject)r   )Úmr)   r"   r#   Ú<lambda>A   s    z0TestImap.test_get_imap_message.<locals>.<lambda>)Ú	conditioné   r   )r   r   r   r   ÚsendÚ_get_new_messagesr   ÚassertEqualÚlenr*   Útext)r   Útext_contentÚmsgÚmessagesr"   r)   r#   Útest_get_imap_message3   s    ÿü
þzTestImap.test_get_imap_message)Ú__name__Ú
__module__Ú__qualname__r   r   r7   Ú__classcell__r"   r"   r    r#   r      s    )r   r   Úsix.moves.urllibr   Údjango.core.mailr   Údjango_mailbox.modelsr   Údjango_mailbox.tests.baser   Ú__all__r   r"   r"   r"   r#   Ú<module>   s    