
    ZeIi                         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 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  G d dee          Z G d dee          Z G d dee          ZdS )    )Column)ForeignKeyConstraint)Integer)MetaData)String)Table   )AutogenFixtureTest   )combinations)configeq_)mock)TestBasec                       e Zd ZdZdZd Zd Zd Zd Ze	j
        j        d             Zd Ze	j
        j        d	             Zd
 Zd ZdS )AutogenerateForeignKeysTestT)!foreign_key_constraint_reflectionc                    t                      }t                      }t          d|t          dt          d          d                     t          d|t          dt          d          t          dt          d	          d
          t          dt          d          d          t          dt          d                    t          dgdg                     t          d|t          dt          d          d                     t          d|t          dt          d          t          dt          d	          d
          t          dt          d          d          t          dt          d                               |                     ||          }|                     |d         dddgddgd           d S )N
some_tabletest
   Tprimary_keyuseridname2   Fnullablea1xserver_defaulttest2some_table.testr   	remove_fkservergeneratedconditional_namer   r   r   r   r   r   _fixture_assert_fk_diffselfm1m2diffss       k/var/www/html/MCyber-Diagnostic/venv/lib/python3.11/site-packages/alembic/testing/suite/test_autogen_fks.pytest_remove_fkz*AutogenerateForeignKeysTest.test_remove_fk   s   ZZZZ66"::4888	
 	
 	
 	4d33366"::6664C8887F2JJ'' '->,?@@	
 	
 	
 	66"::4888	
 	
 	
 	4d33366"::6664C8887F2JJ''	
 	
 	
 b"%%!HIH. 	 	
 	
 	
 	
 	
    c                    t                      }t                      }t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt	          d          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt	          d          d          t          dt	          d                    t          dgdg                     |                     ||          }|                     |d         dddgddg           d S )Nr   r   Tr   r   r   r   r   r   Fr   r!   r"   r#   r%   r&   r   add_fk)r   r   r   r   r   r   r,   r-   r.   s       r3   test_add_fkz'AutogenerateForeignKeysTest.test_add_fkC   s   ZZZZ4d33366"::&&		
 	
 	
 	4d33366"::6664C8887F2JJ''	
 	
 	
 	4d33366"::&&		
 	
 	
 	4d33366"::6664C8887F2JJ'' '->,?@@	
 	
 	
 b"%%!Hh	<&	
 	
 	
 	
 	
r5   c                    t                      }t                      }t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt	          d          d          t          dt                    t          dgdg                     t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt	          d          d          t          dt                    t          dgdg                     |                     ||          }t          |g            d S )Nr   r   Tr   r   r   r   r   r   Fr   r!   r"   r#   r%   some_table.id)r   r   r   r   r   r   r,   r   r.   s       r3   test_no_changez*AutogenerateForeignKeysTest.test_no_changen   s   ZZZZ4d33366"::&&		
 	
 	
 	4d33366"::6664C8887G$$ '_,=>>	
 	
 	
 	4d33366"::&&		
 	
 	
 	4d33366"::6664C8887G$$ '_,=>>	
 	
 	
 b"%%E2r5   c                 n   t                      }t                      }t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                    t          ddgddg                     t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                    t          ddgddg                     |                     ||          }t          |g            d S )Nr   id_1r   Tr   id_2r   r   r   r   Fr   r!   r"   r#   
other_id_1
other_id_2some_table.id_1some_table.id_2r   r   r   r   r   r   r,   r   r.   s       r3   test_no_change_composite_fkz7AutogenerateForeignKeysTest.test_no_change_composite_fk   s   ZZZZ66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,, |,"$56 	
 	
 	
 	66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,, |,"$56 	
 	
 	
 b"%%E2r5   c                    t                      }t                      }t          d|t          dt          d          d                     t          d|t          dt          d          t          dt          d	          d
          t          dt          d          d          t          dt          d                    t          dgdgd                     t          d|t          dt          d          d                     t          d|t          dt          d          t          dt          d	          d
          t          dt          d          d          t          dt          d                    t          dgdgd                     |                     ||          }|                     |d         dddgddgd           |                     |d         dddgddgd           d S )Nr   r   r   Tr   r   r   r   r   Fr   r!   r"   r#   r%   r&   MyFKr   myfkr   r'   r	   r7   r+   r.   s       r3   1test_casing_convention_changed_so_put_drops_firstzMAutogenerateForeignKeysTest.test_casing_convention_changed_so_put_drops_first   s   ZZZZ66"::4888	
 	
 	
 	4d33366"::6664C8887F2JJ'' '->,?fMMM	
 	
 	
 	66"::4888	
 	
 	
 	4d33366"::6664C8887F2JJ'' $*;)<6JJJ	
 	
 	
 b"%%!HIH 	 	
 	
 	
 	!HFH 	 	
 	
 	
 	
 	
r5   c                 x   t                      }t                      }t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                               t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                    t          ddgddgd                     |                     ||          }|                     |d         ddddgdddgd           d S )Nr   r=   r   Tr   r>   r   r   r   r   Fr   r!   r"   r#   r?   r@   rA   rB   fk_test_namerG   r   r7   r+   r.   s       r3   test_add_composite_fk_with_namez;AutogenerateForeignKeysTest.test_add_composite_fk_with_name  s/   ZZZZ66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,,	
 	
 	
 	66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,, |,"$56#  	
 	
 	
 b"%%!H<(V 	 	
 	
 	
 	
 	
r5   c                 x   t                      }t                      }t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                    t          ddgddgd                     t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d
          d          t          dt          d          d          t          dt          d                    t          dt          d                               |                     ||          }|                     |d         ddddgdddgd           d S )Nr   r=   r   Tr   r>   r   r   r   r   Fr   r!   r"   r#   r?   r@   rA   rB   rK   rG   r   r'   r)   r+   r.   s       r3   test_remove_composite_fkz4AutogenerateForeignKeysTest.test_remove_composite_fk>  s/   ZZZZ66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,, |,"$56#  	
 	
 	
 	66"::488866"::4888		
 	
 	
 	4d33366"::6664C888<,,<,,	
 	
 	
 b"%%!H<(V+ 	 	
 	
 	
 	
 	
r5   c                    t                      }t                      }t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d                    t          d
t          d                               t          d|t          dt          d          dd          t          dt          d          dd                     t          d|t          dt          d          t          d	t          d          d          t          d
t          d          d          t          ddgddgd                     |                     ||          }|                     |d         ddd	d
gdddgd           d S )Nr   r=   r   Tr   r>   r   r   r?   r@   tid1keyr   tid2oid1rR   oid2some_table.tid1some_table.tid2rK   rG   r   r7   r+   r.   s       r3   test_add_fk_colkeysz/AutogenerateForeignKeysTest.test_add_fk_colkeysv  s   ZZZZ66"::488866"::4888		
 	
 	
 	4d333<,,<,,	
 	
 	
 	66"::6tDDD66"::6tDDD		
 	
 	
 	4d333<888<888  "$56#  	
 	
 	
 b"%%!H<(V 	 	
 	
 	
 	
 	
r5   c                    t                      }t                      }t          d|t          dt          d          d          t          dt          d          d                     t          d|t          dt          d          t          d	t          d                    t          d
t          d                    t          d	d
gddg                     t          d|t          dt          d          dd          t          dt          d          dd                     t          d|t          dt          d          t          d	t          d          d          t          d
t          d          d          t          ddgddg                     |                     ||          }t          |g            d S )Nr   r=   r   Tr   r>   r   r   r?   r@   rA   rB   rP   rQ   rS   rT   rU   rV   rW   rX   rC   r.   s       r3   test_no_change_colkeysz2AutogenerateForeignKeysTest.test_no_change_colkeys  s   ZZZZ66"::488866"::4888		
 	
 	
 	4d333<,,<,, |,"$56 
	
 
	
 
	
 	66"::6tDDD66"::6tDDD		
 	
 	
 	4d333<888<888  #46G"H 		
 		
 		
 b"%%E2r5   N)__name__
__module____qualname____backend____requires__r4   r8   r;   rD   r   requirementsforeign_key_name_reflectionrI   rL   no_name_normalizerN   rY   r[    r5   r3   r   r      s        K9L-
 -
 -
^)
 )
 )
V( ( (T0 0 0d 4;
 ;
 54;
z4
 4
 4
l *5
 5
 +*5
n1
 1
 1
f+ + + + +r5   r   c                       e Zd ZdZdZ edd          ej        j        d                         Z	d Z
 edd          ej        j        d                         ZdS )	IncludeHooksTestT)fk_names)objectrG   c           	         t                      }t                      }t          d|t          dt          d                    }t          d|t          dt                    t          dt                              }|                    t          |j        j        g|j        j        gd	                     |                    t          |j        j	        g|j        j        gd
	                     t          d|t          dt          d                    }t          d|t          dt                    t          dt                               |dk    rd }| 
                    |||          }n!|dk    rd }| 
                    |||          }|                     |d         dddgddgd
           t          t          |          d           d S )Nrefr   Tr   tr"   yfk1rG   fk2rh   c                 J    t          | t                    o|dk    o|o|dk     S Nforeign_key_constraintrm   
isinstancer   object_r   type_	reflected
compare_tos        r3   include_objectzBIncludeHooksTest.test_remove_connection_fk.<locals>.include_object  s>    w(<== &!99&!& 	 r5   object_filtersr   c                 n    | dk    r.|dk    rdS t          |d           t          |d ddd           dS dS )Nrm   indexTrq   rk   schema_name
table_nameschema_qualified_table_nameFr   r   rv   parent_namess      r3   include_namez@IncludeHooksTest.test_remove_connection_fk.<locals>.include_name  s`    5==''#t7888$+/*-;>    !54r5   name_filtersr   r'   r)   r	   r   r   r   r   append_constraintr   cr"   r   rl   r,   r-   r   len)	r/   	hook_typer0   r1   rj   t1ry   r2   r   s	            r3   test_remove_connection_fkz*IncludeHooksTest.test_remove_connection_fk  s    ZZZZ4d333
 

 3  3  	
 
 	 "$&CEH:EBBB	
 	
 	
 	 "$&CEH:EBBB	
 	
 	
 4d333
 

 	3  3  		
 	
 	
      MM"bMHHEE&       " MM"b|MDDE!HEF" 	 	
 	
 	
 	CJJr5   c           	      Z   t                      }t                      }t          d|t          dt          d                     t          d|t          dt                    t          dt                               t          d|t          dt          d                    }t          d|t          dt                    t          dt                              }|                    t          |j        j        g|j        j        gd	                     |                    t          |j        j	        g|j        j        gd
	                     d }| 
                    |||          }|                     |d         dddgddgd
	           t          t          |          d           d S )Nrj   r   Tr   rk   r"   rl   rm   rG   rn   c                 L    t          | t                    o|dk    o| o|dk     S rp   rr   rt   s        r3   ry   z=IncludeHooksTest.test_add_metadata_fk.<locals>.include_objectL  s@    7$899 "55"!M" EM	 r5   rz   r   r7   r	   r   )r/   r0   r1   rj   t2ry   r2   s          r3   test_add_metadata_fkz%IncludeHooksTest.test_add_metadata_fk*  s   ZZZZ4d333	
 	
 	

 	3  3  		
 	
 	
 4d333
 

 3  3  	
 
 	 "$&CEH:EBBB	
 	
 	
 	 "$&CEH:EBBB	
 	
 	
	 	 	 b"^DD!HhcUED6 	 	
 	
 	
 	CJJr5   c           
         t                      }t                      }t          d|t          dt          d                    }t          d|t          dt          d          t          dt          d                     t          d|t          dt                    t          d	t                    t          d
t                              }|                    t          |j        j        g|j        j        gd                     |                    t          |j        j	        g|j        j        gd                     t          d|t          dt          d                     t          d|t          dt          d          t          dt          d                    }t          d|t          dt                    t          d	t                    t          d
t                              }|                    t          |j        j        |j        j
        g|j        j        |j        j        gd                     |                    t          |j        j	        |j        j
        g|j        j        |j        j        gd                     |dk    rd }|                     |||          }	n!|dk    rd }
|                     |||
          }	|dk    ri|                     |	d         ddd	gddgd           |                     |	d         ddd	d
gdddgd           t          t          |	          d           d S |dk    rt          d |	D             h d           d S d S )Nref_aaTr   ref_bbrk   r"   rl   zrm   rG   rn   rh   c                 F    t          | t                    o|dk    o|dk     S rp   rr   rt   s        r3   ry   z7IncludeHooksTest.test_change_fk.<locals>.include_object  s4    w(<== &!99& r5   rz   r   c                 n    |dk    rdS | dk    r&t          |d           t          |d ddd           dS dS )Nr}   Trm   rq   rk   r~   Fr   r   s      r3   r   z5IncludeHooksTest.test_change_fk.<locals>.include_name  s`    G##45==7888$+/*-;>    !54r5   r   r   r'   r	   r7      c                 8    h | ]}|d          |d         j         fS )r   r	   rG   ).0ds     r3   	<setcomp>z2IncludeHooksTest.test_change_fk.<locals>.<setcomp>  s'    222q!A$!	"222r5   >   r7   rm   r7   rn   r'   rn   )r   r   r   r   r   r   r   r"   r   rl   r   r   r,   r-   r   r   )r/   r   r0   r1   r1ar   r2br   ry   r2   r   s              r3   test_change_fkzIncludeHooksTest.test_change_fk[  s    ZZZZ3T222
 

 	3T2223T222		
 	
 	
 3  3  3  
 
 	 "$&CEG95AAA	
 	
 	
 	 "$&CEG95AAA	
 	
 	
 	3T222	
 	
 	

 3T2223T222	
 
 3  3  3  
 
 	  357CEG"45  	
 	
 	

 	  357CEG"45  	
 	
 	
      MM"bMHHEE&       $ MM"b|MDDE    a+sSE7SE !      ac
c
 !    E

A&  22E222LLL     ! r5   N)r\   r]   r^   r_   r`   r   r   ra   rc   r   r   r   rd   r5   r3   rf   rf     s        K L\+y))*K K +* *)KZ/ / /b \+y))*l l +* *)l l lr5   rf   c                   h   e Zd ZdZd Zej        j        d             Zej        j        d             Z	d Z
ej        j        d             Zej        j        d             Zej        j        d             Zej        j        d	             Zej        j        d
             Zej        j        d             Zej        j        d             Zej        j        d             Zej        j        d             Zej        j        ej        j        d                         Zej        j        d             Zej        j        d             Zej        j        ej        j        d                         Zej        j        ej        j        d                         Zej        j        ej        j        d                         Z ej        j        ej        j        d                         Z!ej        j        ej        j        d                         Z"ej        j        d             Z#ej        j$        d             Z%dS )AutogenerateFKOptionsTestTc                 
   t                      }t                      }t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt                    t          dgdgfi |           t          d|t          dt          d          t          dt	          d                               t          d|t          dt          d          t          dt	          d	          d
          t          dt                    t          dgdgfi |           |                     ||          S )Nr   r   Tr   r   r   r   r   r   Fr   tidr:   )r   r   r   r   r   r   r,   )r/   old_optsnew_optsr0   r1   s        r3   _fk_opts_fixturez*AutogenerateFKOptionsTest._fk_opts_fixture  s|   ZZZZ4d33366"::&&		
 	
 	
 	4d33366"::6665'"" %?*;HHxHH	
 	
 	
 	4d33366"::&&		
 	
 	
 	4d33366"::6665'"" %?*;HHxHH	
 	
 	
 }}R$$$r5   c           
          |                      i ddi          }|                     |d         dddgddgd d	
           |                     |d         dddgddgd           d S )Nondeletecascader   r'   r   r   r   r   r(   r   r*   r	   r7   r   r   r-   r/   r2   s     r3   test_add_ondeletez+AutogenerateFKOptionsTest.test_add_ondelete      %%b:y*ABB!HGF. 	 		
 		
 		
 	!HGF 	 	
 	
 	
 	
 	
r5   c           
          |                      ddii           }|                     |d         dddgddgdd	
           |                     |d         dddgddgd            d S )Nr   CASCADEr   r'   r   r   r   r   r(   r   r	   r7   r   r   r   s     r3   test_remove_ondeletez.AutogenerateFKOptionsTest.test_remove_ondelete      %%z9&=rBB!HGF. 	 		
 		
 		
 	!HGF 	 	
 	
 	
 	
 	
r5   c                 Z    |                      ddiddi          }t          |g            dS )test case sensitivityr   caSCAdeCasCadeNr   r   r   s     r3   test_nochange_ondeletez0AutogenerateFKOptionsTest.test_nochange_ondelete'  s9    %%#j)%<
 
 	E2r5   c           
          |                      i ddi          }|                     |d         dddgddgd d	
           |                     |d         dddgddgd           d S )Nonupdater   r   r'   r   r   r   r   r(   r   r*   r	   r7   r   r   r   s     r3   test_add_onupdatez+AutogenerateFKOptionsTest.test_add_onupdate.  r   r5   c           
          |                      ddii           }|                     |d         dddgddgdd	
           |                     |d         dddgddgd            d S )Nr   r   r   r'   r   r   r   r   r(   r   r	   r7   r   r   r   s     r3   test_remove_onupdatez.AutogenerateFKOptionsTest.test_remove_onupdateG  r   r5   c                 Z    |                      ddiddi          }t          |g            dS )r   r   r   r   Nr   r   s     r3   test_nochange_onupdatez0AutogenerateFKOptionsTest.test_nochange_onupdate`  s;     %%#j)%<
 
 	E2r5   c                 Z    |                      ddiddi          }t          |g            dS )6test the RESTRICT option which MySQL doesn't report onr   restrictNr   r   s     r3   test_nochange_ondelete_restrictz9AutogenerateFKOptionsTest.test_nochange_ondelete_restricth  ;     %%$z:&>
 
 	E2r5   c                 Z    |                      ddiddi          }t          |g            dS )r   r   r   Nr   r   s     r3   test_nochange_onupdate_restrictz9AutogenerateFKOptionsTest.test_nochange_onupdate_restrictq  r   r5   c                 Z    |                      ddiddi          }t          |g            dS )<test the NO ACTION option which generally comes back as Noner   	no actionNr   r   s     r3   test_nochange_ondelete_noactionz9AutogenerateFKOptionsTest.test_nochange_ondelete_noactionz  ;     %%%
K'@
 
 	E2r5   c                 Z    |                      ddiddi          }t          |g            dS )r   r   r   Nr   r   s     r3   test_nochange_onupdate_noactionz9AutogenerateFKOptionsTest.test_nochange_onupdate_noaction  r   r5   c                     |                      ddiddi          }|                     |d         dddgdd	gd
t          j        d	  	         |                     |d         dddgdd	gd
d           d
S )r   r   r   r   r   r'   r   r   r   r   Nr(   r   r   r*   r	   r7   r   r   r   r-   r   ANYr   s     r3   "test_change_ondelete_from_restrictz<AutogenerateFKOptionsTest.test_change_ondelete_from_restrict  s     %%$z9&=
 
 	!HGFX. 	 
	
 
	
 
	
 	!HGF 	 		
 		
 		
 		
 		
r5   c                     |                      ddiddi          }|                     |d         dddgdd	gt          j        d
d	  	         |                     |d         dddgdd	gdd
           d
S )r   r   r   r   r   r'   r   r   r   r   Nr(   r   r	   r7   r   r   r   s     r3   "test_change_onupdate_from_restrictz<AutogenerateFKOptionsTest.test_change_onupdate_from_restrict  s     %%$z9&=
 
 	!HGFX. 	 
	
 
	
 
	
 	!HGF 	 		
 		
 		
 		
 		
r5   c                     |                      dddddd          }|                     |d         dddgd	d
gddd	  	         |                     |d         dddgd	d
gdd           d S )Nr   zSET NULLr   RESTRICTr   r'   r   r   r   r   r(   r   r	   r7   r   r   s     r3   test_ondelete_onupdate_comboz6AutogenerateFKOptionsTest.test_ondelete_onupdate_combo  s     %%"
;;#<<
 

 	!HGF. 	 
	
 
	
 
	
 	!HGF 	 		
 		
 		
 		
 		
r5   c           
          |                      i ddi          }|                     |d         dddgddgd d	
           |                     |d         dddgddgd           d S )N	initiallydeferredr   r'   r   r   r   r   r(   r   r*   r	   r7   r   r   r   s     r3   test_add_initially_deferredz5AutogenerateFKOptionsTest.test_add_initially_deferred  s    %%b;
*CDD!HGF. 	 		
 		
 		
 	!HGF  	 	
 	
 	
 	
 	
r5   c                     |                      ddii           }|                     |d         dddgddgd	d
d	  	         |                     |d         dddgddgd            d S )Nr   r   r   r'   r   r   r   r   DEFERREDTr(   r   
deferrabler*   r	   r7   r   r   r   s     r3   test_remove_initially_deferredz8AutogenerateFKOptionsTest.test_remove_initially_deferred  s    %%{J&?DD!HGF . 	 
	
 
	
 
	
 	!HGF 	 	
 	
 	
 	
 	
r5   c           
          |                      i ddd          }|                     |d         dddgdd	gd d
           |                     |d         dddgdd	gdd           d S )N	immediateTr   r   r   r'   r   r   r   r   r(   r   r	   r7   r   r   s     r3   ,test_add_initially_immediate_plus_deferrablezFAutogenerateFKOptionsTest.test_add_initially_immediate_plus_deferrable  s     %%k>>
 
 	!HGF. 	 		
 		
 		
 	!HGF! 	 		
 		
 		
 		
 		
r5   c                     |                      dddi           }|                     |d         dddgdd	gd dd
	  	         |                     |d         dddgdd	gd d            d S )Nr   Tr   r   r'   r   r   r   r   r(   r   r	   r7   r   r   s     r3   /test_remove_initially_immediate_plus_deferrablezIAutogenerateFKOptionsTest.test_remove_initially_immediate_plus_deferrable;  s     %%%T::B
 
 	!HGF. 	 
	
 
	
 
	
 	!HGF 	 		
 		
 		
 		
 		
r5   c                 ^    |                      dddddd          }t          |g            d S )NTr   r   r   r   r   s     r3   *test_add_initially_deferrable_nochange_onezDAutogenerateFKOptionsTest.test_add_initially_deferrable_nochange_oneY  sB     %%k::k::
 

 	E2r5   c                 ^    |                      dddddd          }t          |g            d S )NTr   r   r   r   s     r3   *test_add_initially_deferrable_nochange_twozDAutogenerateFKOptionsTest.test_add_initially_deferrable_nochange_twoc  B     %%j99j99
 

 	E2r5   c                 ^    |                      d ddd dd          }t          |g            d S )Nr   r   r   r   s     r3   ,test_add_initially_deferrable_nochange_threezFAutogenerateFKOptionsTest.test_add_initially_deferrable_nochange_threem  r   r5   c           
          |                      i ddi          }|                     |d         dddgddgd d	
           |                     |d         dddgddgd           d S Nr   Tr   r'   r   r   r   r   r(   )r   r*   r	   r7   )r   r   r   s     r3   test_add_deferrablez-AutogenerateFKOptionsTest.test_add_deferrablew  s    %%b<*>??!HGF. 	 		
 		
 		
 	!HGF 	 	
 	
 	
 	
 	
r5   c           
          |                      ddii           }|                     |d         dddgddgdd	
           |                     |d         dddgddgd            d S r   r   r   s     r3   test_remove_deferrablez0AutogenerateFKOptionsTest.test_remove_deferrable  s    %%|T&:B??!HGF. 	 		
 		
 		
 	!HGF 	 	
 	
 	
 	
 	
r5   N)&r\   r]   r^   r_   r   r   ra   fk_ondelete_is_reflectedr   r   r   fk_onupdate_is_reflectedr   r   fk_onupdater   fk_ondelete_restrictr   fk_onupdate_restrictr   fk_ondelete_noactionr   r   r   r   r   fk_initiallyr   r   fk_deferrabler   r   r   r   r   r   fk_deferrable_is_reflectedr   rd   r5   r3   r   r     sh       K$% $% $%L 1
 
 21
0 1
 
 21
0   1
 
 21
0 1
 
 21
0 $  %$ -  .- -  .- -  .- $  %$ -
 
 .-
> -
 
 .-
> 11
 
 21 21
: %
 
 &%
0 %
 
 &%
2 &%
 
 &% '&
6 &%
 
 &% '&
8 %&  '& &% %&  '& &% %&  '& &% &
 
 '&
0 3
 
 43
 
 
r5   r   N)
sqlalchemyr   r   r   r   r   r   _autogen_fixturesr
   testingr   r   r   r   r   r   rf   r   rd   r5   r3   <module>r     s         + + + + + +                         1 1 1 1 1 1 # # # # # #                        D D D D D"4h D D DNr r r r r)8 r r rj[
 [
 [
 [
 [
 2H [
 [
 [
 [
 [
r5   