
    5h&                     j   S SK Jr  S SK Jr  S SKJr  S SKJr  S SKJr  S SKJr  S SK	J
r
  S SK	Jr  S	S
K Jr  S	SK Jr  S	SK Jr  S	SK Jr  S	SK Jr  S	SK Jr   " S S\R$                  5      r " S S\R(                  \R*                  5      r " S S\R$                  5      r " S S\R*                  5      rg)   )config)fixtures)eq_)is_true)requirements)normalize_sequence)Column)Table   )inspect)Integer)MetaData)Sequence)String)testingc                      \ rS rSrSrSrSr\S 5       rS r	S r
S r\R                  S	 5       rS
 rS r\R$                  " SSSS9\R&                  R(                  S 5       5       r\R&                  R(                  S 5       rSrg)SequenceTest   	sequencesTeachc                    [        SU[        S[        [        [        [        S5      5      SS9[        S[        S5      5      5        [        SU[        S[        [        [        [        S[        SS	95      SS9[        S[        S5      5      5        [        S
U[        S[        [        [        [        S5      5      SS9[        S[        S5      5      SS9  [        R                  R                  R                  (       ab  [        SU[        S[        [        [        [        S[        R                  S95      SS9[        S[        S5      5      S[        R                  S9  g g )Nseq_pkid
tab_id_seqTprimary_keydata2   
seq_opt_pk)	data_typeoptionalseq_no_returningnoret_id_seqF)implicit_returningseq_no_returning_schnoret_sch_id_seqschemar%   r)   )r
   r	   r   r   r   r   r   r   requiresschemasenabledtest_schemaclsmetadatas     q/var/www/html/cementerio_25MayoBackend/env/lib/python3.13/site-packages/sqlalchemy/testing/suite/test_sequence.pydefine_tablesSequenceTest.define_tables   sD   "68L+AB 	 66":&
	
 	"\WtL ! 66":&	
 	"68N+CD 	 66":&$	
 ##++&& .v7I7I !%
 vvbz*#())! ,    c                     UR                  U R                  R                  R                  5       [	        SS95        U R                  U R                  R                  U5        g N	some datar   )executetablesr   insertdict_assert_round_tripself
connections     r2   test_insert_roundtrip"SequenceTest.test_insert_roundtrip]   sD    4;;--446+8NO 2 2J?r5   c                     UR                  U R                  R                  R                  5       [	        SS95      n[        UR                  [        R                  R                  R                  45        g r7   )r:   r;   r   r<   r=   r   inserted_primary_keyr   dbdialectdefault_sequence_baser@   rA   rs      r2   test_insert_lastrowid"SequenceTest.test_insert_lastrowida   sW    KK%%';)?
 	""WZZ%7%7%M%M$O	
r5   c                     UR                  U R                  R                  R                  R                  R
                  5      n[        U[        R                  R                  R                  5        g N)scalarr;   r   cr   defaultr   r   rF   rG   rH   rI   s      r2   test_nextval_direct SequenceTest.test_nextval_directi   sH    dkk002255==>Awzz!!778r5   c                     UR                  U R                  R                  R                  5       [	        SS95      n[        UR                  S5        g )Nr8   r9   )   )r:   r;   r    r<   r=   r   rE   rI   s      r2   test_optional_seqSequenceTest.test_optional_seqm   sA    KK""))+T{-C
 	A""D)r5   c                     UR                  UR                  5       5      R                  5       n[        U[        R
                  R                  R                  S45        g )Nr8   )r:   selectfirstr   r   rF   rG   rH   )r@   tableconnrows       r2   r>   SequenceTest._assert_round_tript   s>    ll5<<>*002C'**$$::KHIr5   c                     UR                  U R                  R                  R                  5       [	        SS95        U R                  U R                  R                  U5        g r7   )r:   r;   r#   r<   r=   r>   r?   s     r2   +test_insert_roundtrip_no_implicit_returning8SequenceTest.test_insert_roundtrip_no_implicit_returningx   sI    KK((//14[3I	
 	 < <jIr5   )T)Fr%   )argnamesc                 L   [        S[        5       [        S[        [	        [
        [        SSS95      SS9[        S[        S	5      5      USS
9nUR                  S[
        R                  0S9nUR                  UR                  5       [        SS95        U R                  X15        g )Nr&   r   r'   
alt_schemar(   Tr   r   r   r*   schema_translate_mapr8   r9   )r
   r   r	   r   r   r   r   r   execution_optionsr.   r:   r<   r=   r>   )r@   rA   r%   r#   s       r2   test_insert_roundtrip_translate,SequenceTest.test_insert_roundtrip_translate~   s     !"J"H%7M ! 66":&1
   11".0B0B!C 2 

 	+224d6LM 0=r5   c                     [        [        [        SSS95      nUR                  S[        R                  0S9nUR                  U5      n[        U[        R                  R                  R                  5        g )Nr'   rd   r(   re   )r   r   r   rg   r.   rO   r   r   rF   rG   rH   )r@   rA   seqrJ   s       r2   $test_nextval_direct_schema_translate1SequenceTest.test_nextval_direct_schema_translate   sj     H/E
  11".0B0B!C 2 

 c"Awzz!!778r5    N)__name__
__module____qualname____firstlineno____requires____backend__run_create_tablesclassmethodr3   rB   rK   rR   r   sequences_optionalrV   r>   r`   r   combinationsr+   r,   rh   rl   __static_attributes__rn   r5   r2   r   r      s    !LK; ;z@
9 $$* %*JJ '86JK>  L>. 	9 	9r5   r   c                   "    \ rS rSrSrSrS rSrg)SequenceCompilerTest   r   Tc                    [        S[        5       [        S[        [	        [
        [        S5      5      5      [        S[        5      5      nUR                  5       R                  SS9nUR                  R                  S UR                  S9R                  [	        [
        [        S5      5      5      nU R                  USU< S	3S
UR                  S9  g )Nxyy_seqq   )r   )	statementrG   zINSERT INTO x (y, q) VALUES (z, 5)T)literal_bindsrG   )r
   r   r	   r   r   r   r   r<   valuesrG   statement_compilervisit_sequenceassert_compile)r@   rA   r[   stmtseq_nextvals        r2   !test_literal_binds_inline_compile6SequenceCompilerTest.test_literal_binds_inline_compile   s    JW0'9JK 3 
 ||~$$q$) ((;;J$6$6 < 

.+FHW4EF
G 	 	5@B&&	 	 	
r5   rn   N)ro   rp   rq   rr   rs   rt   r   ry   rn   r5   r2   r{   r{      s    !LK
r5   r{   c                      \ rS rSrSrSrSr\S 5       rS r	S r
S r\R                  R                  S	 5       rS
 r\R                  R                  S 5       r\R                  R                  S 5       r\R                  R                  S 5       rS r\R                  R                  S 5       r\R                  R                  S 5       rSrg)HasSequenceTest   Nr   Tc           
         [        [        [        SUS95        [        [        [        SUSSS95        [        R                  R
                  R                  (       aN  [        [        [        S[        R                  US95        [        [        [        S[        R                  US95        [        SU[        S	[        SS
95        g )Nuser_id_seqr1   	other_seqT)r1   
nomaxvalue
nominvalue)r)   r1   
schema_sequser_id_tabler   r   )r   r   r   r   r+   r,   r-   r.   r
   r	   r   r/   s     r2   r3   HasSequenceTest.define_tables   s    68MH#MN!		
 ##++!&*<*<x  ););h 	4d3	
r5   c                 L    [        [        U5      R                  S5      S5        g )Nr   Tr   r   has_sequencer?   s     r2   test_has_sequence!HasSequenceTest.test_has_sequence   s    GJ,,];TBr5   c                    [        U5      n[        UR                  S5      S5        [        [        [        SUS95      n[        UR                  S5      S5        UR                  U5         [        UR                  S5      S5        UR                  5         [        UR                  S5      S5        UR                  U5        g ! UR                  U5        f = f)Nr   Tnew_seqr   F)	r   r   r   r   r   r   createclear_cachedrop)r@   rA   r1   inspsss        r2   test_has_sequence_cache'HasSequenceTest.test_has_sequence_cache   s    z"Dm,d3X(NODi(%0
		*	 !!),e4!!),d3GGJBGGJs   ,AC Cc                 L    [        [        U5      R                  S5      S5        g )Nr   Fr   r?   s     r2   test_has_sequence_other_object.HasSequenceTest.test_has_sequence_other_object       GJ,,_=uEr5   c                 f    [        [        U5      R                  S[        R                  S9S5        g )Nr   r(   Tr   r   r   r   r.   r?   s     r2   test_has_sequence_schema(HasSequenceTest.test_has_sequence_schema   s2    J,,f&8&8 -  		
r5   c                 L    [        [        U5      R                  S5      S5        g )Nsome_sequenceFr   r?   s     r2   test_has_sequence_neg%HasSequenceTest.test_has_sequence_neg   r   r5   c                 f    [        [        U5      R                  S[        R                  S9S5        g )Nr   r(   Fr   r?   s     r2   test_has_sequence_schemas_neg-HasSequenceTest.test_has_sequence_schemas_neg  s2    J,,(:(: -  		
r5   c                 f    [        [        U5      R                  S[        R                  S9S5        g )Nother_sequencer(   Fr   r?   s     r2   'test_has_sequence_default_not_in_remote7HasSequenceTest.test_has_sequence_default_not_in_remote  s2    J,, );); -  		
r5   c                 L    [        [        U5      R                  S5      S5        g )Nr   Fr   r?   s     r2   'test_has_sequence_remote_not_in_default7HasSequenceTest.test_has_sequence_remote_not_in_default  s    GJ,,\:EBr5   c                     SS1n[        [        U5      R                  5       5      n[        UR	                  U5      U:H  5        [        SU;  5        g )Nr   r   r   )setr   get_sequence_namesr   intersection)r@   rA   express       r2   test_get_sequence_names'HasSequenceTest.test_get_sequence_names  sI    M*'*%88:;  %,-C'(r5   c                 d    [        [        U5      R                  [        R                  S9/ 5        g )Nr(   )r   r   r   r   test_schema_2r?   s     r2   *test_get_sequence_names_no_sequence_schema:HasSequenceTest.test_get_sequence_names_no_sequence_schema   s0    J22++ 3  		
r5   c                 z    [        [        [        U5      R                  [        R
                  S95      SS/5        g )Nr(   r   r   )r   sortedr   r   r   r.   r?   s     r2   (test_get_sequence_names_sequences_schema8HasSequenceTest.test_get_sequence_names_sequences_schema)  s=    
#66!-- 7 
 =)	
r5   rn   )ro   rp   rq   rr   run_deletesrs   rt   rv   r3   r   r   r   r   r+   r,   r   r   r   r   r   r   r   r   ry   rn   r5   r2   r   r      s   K!LK
 
<C F 
 
F 
 
 
 
 C C) 
 
 
 
r5   r   c                   "    \ rS rSrSrSrS rSrg)HasSequenceTestEmptyi5  r   Tc                 J    [        [        U5      R                  5       / 5        g rN   )r   r   r   r?   s     r2   #test_get_sequence_names_no_sequence8HasSequenceTestEmpty.test_get_sequence_names_no_sequence9  s    J224	
r5   rn   N)ro   rp   rq   rr   rs   rt   r   ry   rn   r5   r2   r   r   5  s    !LK
r5   r   N) r   r   
assertionsr   r   r   	provisionr   r)   r	   r
   r   r   r   r   r   r   
TablesTestr   AssertsCompiledSQLTestBaser{   r   r   rn   r5   r2   <module>r      s         ! *        H98&& H9V
755x7H7H 
6s
h)) s
l
8,, 
r5   