
    -h                         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g)    )	bindparam)Column)Integer)select)String)Table)testing)text)eq_)fixturesc                      \ rS rSrSrSrSr\S 5       r\S 5       r	S r
S rS	 r\R                  R                  S
 5       rS rS rS r\R                  R(                  S 5       r\R                  R(                  S 5       rSrg)RowCountTest   ztest rowcount functionality)sane_rowcountTc                     [        SU[        S[        SSS9[        S[        S5      5      [        S[        S	5      5      5        g )
N	employeesemployee_idFT)autoincrementprimary_keyname2   
department   )r   r   r   r   )clsmetadatas     {C:\Users\ROHAN GUPTA\OneDrive\Desktop\mathbuddy-assessment\venv\Lib\site-packages\sqlalchemy/testing/suite/test_rowcount.pydefine_tablesRowCountTest.define_tables   sB    # 	 66":&<+	
    c                     / SQ=U l         nU R                  R                  nUR                  UR	                  5       [        U5       VVVs/ s H  u  nu  pVXEUS.PM     snnn5        g s  snnnf )N)	)AngelaA)Andrewr"   )Anandr"   )BobB)Bobetter&   )Buffyr&   )CharlieC)Cynthiar*   )Chrisr*   )r   r   r   )datatablesr   executeinsert	enumerate)r   
connectionr-   employees_tableinds          r   insert_dataRowCountTest.insert_data(   sn    

 
	
4 **..""$ "+4!0IAv !"A>!0	
s   A)c                 F   U R                   R                  n[        UR                  R                  UR                  R
                  5      R                  UR                  R                  5      nUR                  U5      R                  5       n[        X@R                  5        g )N)r.   r   r   cr   r   order_byr   r/   fetchallr   r-   )selfr2   r3   srowss        r   
test_basicRowCountTest.test_basic?   sx    ++//""O$5$5$@$@

(?$$00
1 	
 !!!$--/D))r   c                     U R                   R                  nUR                  R                  nUR	                  UR                  5       R                  US:H  5      SS05      nUR                  S:X  d   eg )Nr*   r   Z   )r.   r   r:   r   r/   updatewhererowcountr=   r2   r3   r   rs        r   test_update_rowcount1"RowCountTest.test_update_rowcount1H   sj    ++// %&&11
""$**:+<=3
 zzQr   c                     U R                   R                  nUR                  R                  nUR	                  UR                  5       R                  US:H  5      SS05      n[        UR                  S5        g )Nr*   r   rD   )	r.   r   r:   r   r/   rE   rF   r   rG   rH   s        r   test_update_rowcount2"RowCountTest.test_update_rowcount2S   sh    ++// %&&11
""$**:+<=3
 	AJJr   c                 R   U R                   R                  nUR                  R                  nUR	                  5       R                  US:H  5      R                  UR                  R                  S-   S9R                  5       nUR                  U5      n[        UR                  S5        g )Nr*   rC   )r   rD   )r.   r   r:   r   rE   rF   valuesreturn_defaultsr/   r   rG   )r=   r2   r3   r   stmtrI   s         r   $test_update_rowcount_return_defaults1RowCountTest.test_update_rowcount_return_defaults_   s    ++//$&&11
""$U:$%V**55;V<_	 	 t$AJJr   c                 R    UR                  S5      n[        UR                  S5        g Nz8update employees set department='Z' where department='C'rD   )exec_driver_sqlr   rG   r=   r2   results      r   test_raw_sql_rowcount"RowCountTest.test_raw_sql_rowcountn   s%    ++F
 	FOOQr   c                 d    UR                  [        S5      5      n[        UR                  S5        g rV   )r/   r
   r   rG   rX   s      r   test_text_rowcountRowCountTest.test_text_rowcountu   s+    ##NO
 	FOOQr   c                     U R                   R                  nUR                  R                  nUR	                  UR                  5       R                  US:H  5      5      n[        UR                  S5        g )Nr*   rD   )	r.   r   r:   r   r/   deleterF   r   rG   rH   s        r   test_delete_rowcount!RowCountTest.test_delete_rowcount|   s`    ++// %&&11
""$**:+<=
 	AJJr   c                 *   U R                   R                  nUR                  5       R                  UR                  R
                  [        S5      :H  5      R                  SS9nUR                  USS0SS0SS0/5      n[        UR                  S5        g )Nemp_namer*   )r   r%   r+   nonexistent   )r.   r   rE   rF   r:   r   r   rP   r/   r   rG   r=   r2   r3   rR   rI   s        r   test_multi_update_rowcount'RowCountTest.test_multi_update_rowcount   s    ++//""$U?$$))Yz-BBCVsV# 	 U#Y']+
 	AJJr   c                    U R                   R                  nUR                  5       R                  UR                  R
                  [        S5      :H  5      nUR                  USS0SS0SS0/5      n[        UR                  S5        g )Nrd   r%   r+   re   rf   )
r.   r   r`   rF   r:   r   r   r/   r   rG   rg   s        r   test_multi_delete_rowcount'RowCountTest.test_multi_delete_rowcount   s    ++//%%'--""i
&;;
 U#Y']+
 	AJJr    N)__name__
__module____qualname____firstlineno____doc____requires____backend__classmethodr   r7   r@   rJ   rM   r	   requiressane_rowcount_w_returningrS   rZ   r]   ra   sane_multi_rowcountrh   rk   __static_attributes__rm   r   r   r   r      s    %%LK
 
 
 
,	
 // 0   )) *& )) *r   r   N)
sqlalchemyr   r   r   r   r   r   r	   r
   sqlalchemy.testingr   r   
TablesTestr   rm   r   r   <module>r}      s9    !        " 'X8&& Xr   