o
    ["<f                     @   s|   d dl Z d dlmZ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e jdZd	d
 ZG dd deZdS )    N)Mockpatch)	urlencode)FlatPage)HttpResponse)TestCase)render_to_image_listwc                 C   s   d |  S )N )joinsplit)s r   G/var/www/html/kck/venv/lib/python3.10/site-packages/tests/test_views.pycompress_whitespace   s   r   c                   @   s   e Zd Zeddd Zeddd Zeddd Zeddd	 Zedd
d Zdd Z	eddd Z
dd Zeddddd ZdS )	TestViewsztinymce.views.enchantc                 C   r   t  }d|j_||j_tdddd}| jjd|dd}d	i i}| d
|j | d|d  | ||	  d S )NT
spellchecktesatenmethodtextlang/tinymce/spellchecker/!application/x-www-form-urlencodedcontent_typewords   application/jsonContent-Type
r   checkreturn_valueDictr   clientpostassertEqualstatus_codejsonselfenchant_mockchecker_mockbodyresponseoutputr   r   r   test_spell_check_words      z TestViews.test_spell_check_wordsc                 C   s   dg}t  }d|j_||j_||j_tdddd}| jjd|dd	}d
ddgii}| d|j	 | d|d  | ||
  d S )NsampleFr   smapler   r   r   r   r   r   r   r    r!   )r   r#   r$   suggestr%   r   r&   r'   r(   r)   r*   )r,   r-   resultr.   r/   r0   r1   r   r   r   test_spell_check_suggest%   s   z"TestViews.test_spell_check_suggestc                 C   r   )NTr    r   r   r   r   r   r   r   r    r!   r"   r+   r   r   r   test_spell_check_empty8   r3   z TestViews.test_spell_check_emptyc                 C   s   t dddd}tdt | jjd|dd}W d    n1 s!w   Y  dd	i}| d
|j | d|d  | ||  d S )Ntestr   r   
sys.stderrr   r   r   errorzGot an unexpected method 'test'r   r    r!   )r   r   devnullr&   r'   r(   r)   r*   r,   r-   r/   r0   r1   r   r   r   test_spell_check_unknown_methodI   s   z)TestViews.test_spell_check_unknown_methodc                 C   s   d|j _tdddd}tdt | jjd|dd	}W d    n1 s%w   Y  d
di}| d|j | d|d  | ||	  d S )NFr   r;   r   r   r<   r   r   r   r=   z8Dictionary not found for language 'en', check pyenchant.r   r    r!   )
dict_existsr$   r   r   r>   r&   r'   r(   r)   r*   r?   r   r   r   test_spell_check_unknown_langW   s   z'TestViews.test_spell_check_unknown_langc                 C   sP   t jjddd | jd}d}| d|j | d|d  | ||j d S )	Nz	/test/urlz
Test Title)urltitlez/tinymce/flatpages_link_list/s4   var tinyMCELinkList = [["Test Title", "/test/url"]];r   application/x-javascriptr!   )r   objectscreater&   getr(   r)   contentr,   r0   	result_okr   r   r   test_flatpages_link_listg   s   z"TestViews.test_flatpages_link_listztinymce.views.gzip_compressorc                 C   s\   t ddd}||_| jd}| d|j | d|d  | |j|j | |j d S )Nr;   ztext/javascriptr   z/tinymce/compressor/r   r!   )	r   r$   r&   rH   r(   r)   rI   
assertTruecalled_once)r,   	gzip_mockresponse_okr0   r   r   r   test_compressorr   s   zTestViews.test_compressorc                 C   s>   t dg}d}| d|j | d|d  | ||j d S )N)r;   ztest.jpgs.   var tinyMCEImageList = [["test", "test.jpg"]];r   rE   r!   )r   r(   r)   rI   rJ   r   r   r   test_render_to_image_list~   s
   
z#TestViews.test_render_to_image_listztinymce.views.reversez/filebrowser)r$   c                 C   st   | j d}td}| }W d    n1 sw   Y  |dd}| d|j | t|t|j	  d S )Nz/tinymce/filebrowser/z(tinymce/templates/tinymce/filebrowser.jsz{{ fb_url }}zhttp://testserver/filebrowserr   )
r&   rH   openreadreplacer(   r)   r   rI   decode)r,   reverse_mockr0   frP   r   r   r   test_filebrowser   s   

zTestViews.test_filebrowserN)__name__
__module____qualname__r   r2   r8   r:   r@   rB   rL   rQ   rR   rY   r   r   r   r   r      s"    






r   )osunittest.mockr   r   urllib.parser   django.contrib.flatpages.modelsr   django.httpr   django.testr   tinymce.viewsr   rS   r>   r   r   r   r   r   r   <module>   s    