U
    {h                     @   s   d dl m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mZmZmZ d dlmZmZ d dlmZmZ G d	d
 d
eZdS )    )forms)TestCaseoverride_settings)models)widgets)AdminDateTimeInput)BaseDocumentFormget_document_base_formget_document_formget_document_multi_form)AlternateDocumentFormOverriddenWidget)CustomRestaurantDocumentRestaurantTagc                   @   s|   e Zd Zdd Zdd Zdd Zdd Zd	d
 Zedddd Z	edddd Z
edddd Zedddd ZdS )TestDocumentFormOverridec                 C   s   |  t t d S N)assertIsr	   r   self r   s/var/www/dating/data/www/fatepal.com/env/lib/python3.8/site-packages/wagtail/documents/tests/test_form_overrides.pytest_get_document_base_form   s    z4TestDocumentFormOverride.test_get_document_base_formc                 C   s(   t tjj}| t| | t| d S r   )r
   r   Document	__bases__assertInr   assertNotInr   r   basesr   r   r   test_get_document_form   s    z/TestDocumentFormOverride.test_get_document_formc                 C   sX   t tj}| }| |jd jtj | |jd jj	t
j | |jd jtj d S )Ntagsfile)r
   r   r   assertIsInstancefieldswidgetr   AdminTagWidgetassertEqual	tag_modeltaggit_modelsTagr   Z	FileInputr   form_clsformr   r   r   test_get_document_form_widgets   s
    
z7TestDocumentFormOverride.test_get_document_form_widgetsc                 C   s>   t t}| }| |jd jtj | |jd jjt	 d S )Nr   )
r
   r   r!   r"   r#   r   r$   r%   r&   r   r)   r   r   r   &test_tags_widget_with_custom_tag_model"   s    z?TestDocumentFormOverride.test_tags_widget_with_custom_tag_modelc                 C   sp   d}dt |gd}ttj}||}| |  | d|j | |jd d dj	|t
jjdjd d S )	NZlongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtaglongtagzTest Document)titler    r   r   r   z5Tag(s) ['{val}'] are over {max_tag_length} charactersname)valZmax_tag_length)r   r
   r   r   ZassertFalseZis_validr   errorsr%   formatr'   ZTagBase_meta	get_field
max_length)r   Z
long_valueZ	form_datar*   r+   r   r   r   $test_tags_longer_than_max_characters(   s     
z=TestDocumentFormOverride.test_tags_longer_than_max_charactersz6wagtail.test.testapp.media_forms.AlternateDocumentForm)ZWAGTAILDOCS_DOCUMENT_FORM_BASEc                 C   s   |  t t d S r   )r   r	   r   r   r   r   r   test_overridden_base_form>   s    z2TestDocumentFormOverride.test_overridden_base_formc                 C   s(   t tjj}| t| | t| d S r   )r
   r   r   r   r   r   r   r   r   r   r   r   !test_get_overridden_document_formD   s    z:TestDocumentFormOverride.test_get_overridden_document_formc                 C   s(   t tjj}| t| | t| d S r   )r   r   r   r   r   r   r   r   r   r   r   r   'test_get_overridden_document_multi_formL   s    z@TestDocumentFormOverride.test_get_overridden_document_multi_formc                 C   s^   t tj}| }| |jd jt | |jd jt | d|j | |j	j
d t d S )Nr   r    Zform_only_field)r
   r   r   r!   r"   r#   r   r   r   ZMetar   r   r)   r   r   r   )test_get_overridden_document_form_widgetsT   s    
zBTestDocumentFormOverride.test_get_overridden_document_form_widgetsN)__name__
__module____qualname__r   r   r,   r-   r6   r   r7   r8   r9   r:   r   r   r   r   r      s*   


r   N)djangor   Zdjango.testr   r   Ztaggitr   r'   Zwagtail.adminr   Zwagtail.admin.widgetsr   Zwagtail.documentsZwagtail.documents.formsr   r	   r
   r   Z wagtail.test.testapp.media_formsr   r   Zwagtail.test.testapp.modelsr   r   r   r   r   r   r   <module>   s   