Ë
    †V.jÀ  ã                   ó¨   — 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 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y)é    N)ÚColumn)ÚInteger)ÚMetaData)ÚTable)Úsqla_compaté   )ÚAutogenFixtureTesté   )Útesting)Úconfig)Úeq_)Úis_true)ÚTestBasec                   ó^  — e Zd ZdZdZd„ Zd„ Zd„ Zd„ Z e	j                  d ed¬	«      f ed¬	«      df ed¬	«       edd
¬«      f ed¬«       ed¬«      f edddd¬«       edddd¬«      f eddd¬«       eddd¬«      f«      ej                  j                  d„ «       «       Zd„ Zd„ Zy)ÚAutogenerateIdentityTest)Úidentity_columnsTc                 ót  — t        «       }t        «       }t        d|t        dt        j                  «      «       t        d|t        dt        j                  «      t        dt
        t        j                  dd¬«      d¬«      «       | j                  ||«      }t        |d	   d	   d
«       t        |d	   d   d«       t        |d	   d   j                  d«       |d	   d   j                  }t        t        |t        j                  «      «       t        |j                  d«       t        |j                  d«       y )NÚuserÚotherÚidé   é   ©ÚstartÚ	incrementT©Úprimary_keyr   Ú
add_columné   r
   )r   r   r   ÚsaÚTextr   ÚIdentityÚ_fixturer   ÚnameÚidentityr   Ú
isinstancer   r   )ÚselfÚm1Úm2ÚdiffsÚis        úmC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\alembic/testing/suite/test_autogen_identity.pyÚtest_add_identity_columnz1AutogenerateIdentityTest.test_add_identity_column   sñ   € Ü‹ZˆÜ‹Zˆäˆf�bœ& ¬"¯'©'Ó2Ô3äØØÜ�7œBŸG™GÓ$ÜØÜÜ—‘ !¨qÔ1Ø ô	ô	
	
ð —‘˜b "Ó%ˆäˆE�!‰H�Q‰K˜Ô&ÜˆE�!‰H�Q‰K˜Ô ÜˆE�!‰H�Q‰K×Ñ˜dÔ#Ø�!‰H�Q‰K× Ñ ˆä”
˜1œbŸk™kÓ*Ô+ÜˆA�G‰G�QŒÜˆA�K‰K˜Õó    c                 ó,  — t        «       }t        «       }t        d|t        dt        t	        j
                  dd¬«      d¬«      «       t        d|«       | j                  ||«      }t        |d   d   d	«       t        |d   d   d«       |d   d   }t        |j                  d«       t        t        |j                  t        j
                  «      «       t        |j                  j                  d«       t        |j                  j                  d«       y )
Nr   r   r   r
   r   Tr   r   Úremove_column)r   r   r   r   r    r"   r#   r   r$   r   r&   r%   r   r   )r'   r(   r)   r*   Úcs        r,   Útest_remove_identity_columnz4AutogenerateIdentityTest.test_remove_identity_column1   s×   € Ü‹ZˆÜ‹ZˆäØØÜØÜÜ—‘ !¨qÔ1Ø ô	ô		
ô 	ˆf�bÔà—‘˜b "Ó%ˆäˆE�!‰H�Q‰K˜Ô)ÜˆE�!‰H�Q‰K˜Ô Ø�!‰H�Q‰KˆÜˆA�F‰F�DÔä”
˜1Ÿ:™:¤r§{¡{Ó3Ô4ÜˆA�J‰J×Ñ˜aÔ ÜˆA�J‰J× Ñ  !Õ$r.   c           
      óÞ   — t        «       }t        «       }||fD ]4  }t        j                  d¬«      }t        d|t	        dt
        |«      «       Œ6 | j                  ||«      }t        |g «       y )Nr   ©r   r   r   )r   r    r"   r   r   r   r#   r   )r'   r(   r)   ÚmÚid_r*   s         r,   Útest_no_change_identity_columnz7AutogenerateIdentityTest.test_no_change_identity_columnM   s\   € Ü‹ZˆÜ‹Zˆà�b“ˆAÜ—+‘+ AÔ&ˆCÜ�&˜!œV D¬'°3Ó7Õ8ð ð —‘˜b "Ó%ˆäˆE�2�r.   c                 óô  — t        «       }t        «       }t        j                  rdddœ}ndddœ}t        d|t	        dt
        t        j                  d¬«      «      «       t        j                  dddi|¤Ž}t        d|t	        dt
        |«      «       | j                  ||«      }t        j                  j                  d	k(  r+t        t        |«      d
«       t        |d   d   d   d«       y t        |g «       y )NT)Úoracle_on_nullÚoracle_order)Úon_nullÚorderr   r   r   r4   r   Úoracler   r   Úmodify_default© )r   r   Úidentity_has_dialect_kwargsr   r   r   r    r"   r#   r   Údbr$   r   Úlenr   )r'   r(   r)   Úargsr6   r*   s         r,   Útest_dialect_kwargs_changesz4AutogenerateIdentityTest.test_dialect_kwargs_changesY   sÄ   € Ü‹ZˆÜ‹Zˆä×2Ò2Ø&*¸DÑA‰Dà#¨dÑ3ˆDäˆf�bœ& ¤w´·±À!Ô0DÓEÔFÜ�k‰kÑ* Ð* TÑ*ˆÜˆf�bœ& ¤w°Ó4Ô5à—‘˜b "Ó%ˆÜ�9‰9�>‰>˜XÒ%Ü”C˜“J Ô"Ü��a‘˜‘˜A‘Ð 0Õ1ä��r�Nr.   Nr   r4   r   r   F)Úalwaysr   r   éd   )r   ÚminvalueÚmaxvalueÚcycleé
   r
   i'  )r   r   rH   i  c           	      ód  — |rt        j                  di |¤Žfnd}|rt        j                  di |¤Žfnd}t        «       }t        «       }t        d|t	        dt
        g|¢­Ž t	        dt         j                  «      «       t        d|t	        dt
        g|¢­Ž t	        dt         j                  «      «       | j                  ||«      }t        t        |d   «      d«       |d   d   }t        |d   d«       t        |d   d«       t        |d	   d«       |d
   }|d   }	d„ }
 |
||«        |
||	«       y )Nr?   r   r   r   r   r   r>   r   r
   r   é   c                 óÆ   — | rRt        t        |t        j                  «      «       | j	                  «       D ]  \  }}t        t        ||«      |«       Œ y t        |dv «       y )N)NF)r   r&   r    r"   Úitemsr   Úgetattr)ÚkwÚidtÚkÚvs       r,   Úcheckz<AutogenerateIdentityTest.test_change_identity.<locals>.check›   sK   € ÙÜœ
 3¬¯©Ó4Ô5ØŸH™HžJ‘D�A�qÜœ  Q›¨Õ+ñ 'ô ˜˜}Ð,Õ-r.   )
r    r"   r   r   r   r   r!   r#   r   rB   )r'   ÚbeforeÚafterÚ
arg_beforeÚ	arg_afterr(   r)   r*   ÚoldÚnewrT   s              r,   Útest_change_identityz-AutogenerateIdentityTest.test_change_identitym   s#  € ñ  28”b—k‘kÑ+ FÑ+Ñ-¸Rˆ
Ù/4”R—[‘[Ñ) 5Ñ)Ñ+¸"ˆ	ä‹ZˆÜ‹ZˆäØØÜ�4œÐ. :Ò.Ü�7œBŸG™GÓ$ô		
ô 	ØØÜ�4œÐ- 9Ò-Ü�7œBŸG™GÓ$ô		
ð —‘˜b "Ó%ˆäŒC��a‘‹M˜1ÔØ�a‘˜‘ˆÜˆE�!‰HÐ&Ô'ÜˆE�!‰H�fÔÜˆE�!‰H�dÔØ�A‰hˆØ�A‰hˆò	.ñ 	ˆf�cÔÙˆe�SÕr.   c                 ó¬  — t        «       }t        «       }t        d|t        dt        «      t        dt        j
                  «      «       t        d|t        dt        t	        j                  dd¬«      «      t        dt        j
                  «      «       | j                  ||«      }t        t        |d   «      d«       |d   d   }t        |d   d	«       t        |d   d«       t        |d
   d«       t        |d   d «       |d   }t        t        |t        j                  «      «       t        |j                  d«       t        |j                  d«       y )Nr   r   r   r   éè  ©r   rH   r   r   r>   r
   r   rL   )r   r   r   r   r    r!   r"   r#   r   rB   r   r&   r   rH   )r'   r(   r)   r*   Úaddeds        r,   Útest_add_identity_to_columnz4AutogenerateIdentityTest.test_add_identity_to_column¦   s  € Ü‹ZˆÜ‹ZˆäØØÜ�4œÓ!Ü�7œBŸG™GÓ$ô		
ô 	ØØÜ�4œ¤"§+¡+°AÀÔ"EÓFÜ�7œBŸG™GÓ$ô		
ð —‘˜b "Ó%ˆäŒC��a‘‹M˜1ÔØ�a‘˜‘ˆÜˆE�!‰HÐ&Ô'ÜˆE�!‰H�fÔÜˆE�!‰H�dÔÜˆE�!‰H�dÔØ�a‘ˆä”
˜5¤"§+¡+Ó.Ô/ÜˆE�K‰K˜ÔÜˆE�N‰N˜DÕ!r.   c                 óT  — t        «       }t        «       }t        d|t        dt        t	        j
                  dd¬«      «      t        dt        j                  «      «       t        d|t        dt        «      t        dt        j                  «      «       | j                  ||«      }t        t        |d   «      d«       |d   d   }t        |d   d	«       t        |d   d«       t        |d
   d«       t        |d   d «       |d   }t        t        |t        j
                  «      «       y )Nr   r   r   r]   r^   r   r   r   r>   r
   rL   r   )r   r   r   r   r    r"   r!   r#   r   rB   r   r&   )r'   r(   r)   r*   Úremoveds        r,   Ú test_remove_identity_from_columnz9AutogenerateIdentityTest.test_remove_identity_from_columnÆ   sñ   € Ü‹ZˆÜ‹ZˆäØØÜ�4œ¤"§+¡+°AÀÔ"EÓFÜ�7œBŸG™GÓ$ô		
ô 	ØØÜ�4œÓ!Ü�7œBŸG™GÓ$ô		
ð —‘˜b "Ó%ˆäŒC��a‘‹M˜1ÔØ�a‘˜‘ˆÜˆE�!‰HÐ&Ô'ÜˆE�!‰H�fÔÜˆE�!‰H�dÔÜˆE�!‰H�dÔØ˜‘(ˆä”
˜7¤B§K¡KÓ0Õ1r.   )Ú__name__Ú
__module__Ú__qualname__Ú__requires__Ú__backend__r-   r2   r7   rD   r   ÚcombinationsÚdictr   ÚrequirementsÚidentity_columns_alterr[   r`   rc   r?   r.   r,   r   r      sà   „ Ø(€LØ€Kòò:%ò8
òð( €W×ÑØ	‰t˜!Œ}ÐÙ	�AŒ˜ÐÙ	�AŒ™ 1°Ô2Ð3Ù	�UÔ	™T¨Ô.Ð/á�q 1¨s¸$Ô?Ù�q 1¨s¸%Ô@ð	
ñ
 �r Q°Ô6Ù�r Q°Ô6ð	
óð ×Ñ×/Ñ/ñ(ó 0óð(òT"ó@2r.   r   )Ú
sqlalchemyr    r   r   r   r   Úalembic.utilr   Ú_autogen_fixturesr	   Ú r   r   r   r   r   r   r?   r.   r,   Ú<module>rq      s:   ðÛ Ý Ý Ý Ý å $Ý 1Ý Ý Ý Ý Ý ôR2Ð1°8õ R2r.   