o
    ~¨Êh¦	  ã                   @   sj   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZ eddd	d
�G dd„ deƒƒZdS )é    )ÚTestCase)Úoverride_settings)ÚMock)ÚCssCompressor)ÚJsCompressor)Úpost_compressT© Ú
nocompress)ÚCOMPRESS_ENABLEDÚCOMPRESS_PRECOMPILERSÚCOMPRESS_DEBUG_TOGGLEc                   @   s4   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ ZdS )ÚPostCompressSignalTestCasec                 C   s(   d| _ t| j ƒ| _d| _t| jƒ| _d S )NzÅ<link rel="stylesheet" href="/static/css/one.css" type="text/css" />
<style type="text/css">p { border:5px solid green;}</style>
<link rel="stylesheet" href="/static/css/two.css" type="text/css" />z}<script src="/static/js/one.js" type="text/javascript"></script>
<script type="text/javascript">obj.value = "value";</script>)Úcssr   Úcss_nodeÚjsr   Újs_node©Úselfr   r   úO/var/www/html/env/lib/python3.10/site-packages/compressor/tests/test_signals.pyÚsetUp   s   z PostCompressSignalTestCase.setUpc                 C   s   t  ¡  d S ©N)r   Ú
disconnectr   r   r   r   ÚtearDown   s   z#PostCompressSignalTestCase.tearDownc                 C   ó|   dd„ }t |d�}t |¡ | j ¡  |j\}}|  t|d ¡ |  d|d ¡ |  d|d ¡ |d	 }d
|d v s<J ‚d S )Nc                 [   ó   d S r   r   ©ÚsenderÚkwargsr   r   r   Úlistener!   ó   z@PostCompressSignalTestCase.test_js_signal_sent.<locals>.listener©Úwrapsr   r   ÚtypeÚfileÚmodeÚcontextÚurlÚ
compressed)r   r   Úconnectr   ÚoutputÚ	call_argsÚassertEqualr   ©r   r   ÚcallbackÚargsr   r%   r   r   r   Útest_js_signal_sent    ó   



z.PostCompressSignalTestCase.test_js_signal_sentc                 C   r   )Nc                 [   r   r   r   r   r   r   r   r   .   r   zAPostCompressSignalTestCase.test_css_signal_sent.<locals>.listenerr    r   r   r"   r#   r$   r%   r&   r'   )r   r   r(   r   r)   r*   r+   r   r,   r   r   r   Útest_css_signal_sent-   r0   z/PostCompressSignalTestCase.test_css_signal_sentc                 C   sB   d}t |ƒ}dd„ }t|d�}t |¡ | ¡  |  d|j¡ d S )Nzä<link rel="stylesheet" href="/static/css/one.css" media="handheld" type="text/css" />
<style type="text/css" media="print">p { border:5px solid green;}</style>
<link rel="stylesheet" href="/static/css/two.css" type="text/css" />c                 [   r   r   r   r   r   r   r   r   A   r   zVPostCompressSignalTestCase.test_css_signal_multiple_media_attributes.<locals>.listenerr    é   )r   r   r   r(   r)   r+   Ú
call_count)r   r   r   r   r-   r   r   r   Ú)test_css_signal_multiple_media_attributes:   s   

zDPostCompressSignalTestCase.test_css_signal_multiple_media_attributesN)Ú__name__Ú
__module__Ú__qualname__r   r   r/   r1   r4   r   r   r   r   r      s    r   N)Údjango.testr   Údjango.test.utilsr   Úmockr   Úcompressor.cssr   Úcompressor.jsr   Úcompressor.signalsr   r   r   r   r   r   Ú<module>   s    ý