
    hr                         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j                        Zy)   )fixtures)eq_)Column)Table   )Integer)select)testing)unionc                       e Zd ZdZed        Zed        ZddZd Zd Z	e
j                  j                  e
j                  j                  d               Ze
j                  j                  d        Zd	 Zd
 Zy)DeprecatedCompoundSelectTestTc           
      z    t        d|t        dt        d      t        dt              t        dt                     y )N
some_tableidT)primary_keyxy)r   r   r   )clsmetadatas     SD:\EasyAligner\venv\Lib\site-packages\sqlalchemy/testing/suite/test_deprecations.pydefine_tablesz*DeprecatedCompoundSelectTest.define_tables   s0    4d33 3 	
    c           
          |j                  | j                  j                  j                         ddddddddddddddddg       y )N   r   )r   r   r   r         )executetablesr   insert)r   
connections     r   insert_dataz(DeprecatedCompoundSelectTest.insert_data    sS    JJ!!((*qq)qq)qq)qq)		
r   c                 X    t        |j                  ||      j                         |       y )N)r   r   fetchall)selfconnr	   resultparamss        r   _assert_resultz+DeprecatedCompoundSelectTest._assert_result,   s     DLL(113V<r   c                    | j                   j                  }t        |      j                  |j                  j
                  dk(        }t        |      j                  |j                  j
                  dk(        }t        ||      }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wNr   r   AThe SelectBase.c and SelectBase.columns attributes are deprecatedr   r   r   r   r   r   )r   r   r	   wherecr   r   r
   expect_deprecatedr(   order_byr$   r    tables1s2u1s         r   test_plain_unionz-DeprecatedCompoundSelectTest.test_plain_union/   s    &&E]  q1E]  q12r]&&(
 BKK09i2H	
 
 
s   9CC%c                    | j                   j                  }t        |      j                  |j                  j
                  dk(        }t        |      j                  |j                  j
                  dk(        }t        ||      j                         j                         }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wr*   )r   r   r	   r.   r/   r   r   aliasr
   r0   r(   r1   r2   s         r   "_dont_test_select_from_plain_unionz?DeprecatedCompoundSelectTest._dont_test_select_from_plain_unionD   s    &&E]  q1E]  q12r]  "))+&&(
 BKK09i2H	
 
 
s   69C88Dc                    | j                   j                  }t        |      j                  |j                  j
                  dk(        j                  d      j                  |j                  j
                        }t        |      j                  |j                  j
                  dk(        j                  d      j                  |j                  j
                        }t        ||      j                  d      }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wNr   r   r   r+   r,   r-   )r   r   r	   r.   r/   r   limitr1   r   r
   r0   r(   r2   s         r   &test_limit_offset_selectable_in_unionszCDeprecatedCompoundSelectTest.test_limit_offset_selectable_in_unionsR   s     &&E]  q177:CCEGGJJOE]  q177:CCEGGJJO2r]  #&&(
 BKK09i2H	
 
 
s   9EEc                 z   | j                   j                  }t        |      j                  |j                  j
                  dk(        j                  |j                  j
                        }t        |      j                  |j                  j
                  dk(        j                  |j                  j
                        }t        ||      j                  d      }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wr*   )r   r   r	   r.   r/   r   r1   r   r=   r
   r0   r(   r2   s         r   "test_order_by_selectable_in_unionsz?DeprecatedCompoundSelectTest.test_order_by_selectable_in_unionsb   s    &&E]  q1::577::FE]  q1::577::F2r]  #&&(
 BKK09i2H	
 
 
s   /9D11D:c                 &   | j                   j                  }t        |      j                  |j                  j
                  dk(        j                         }t        |      j                  |j                  j
                  dk(        j                         }t        ||      j                  d      }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wr*   )r   r   r	   r.   r/   r   distinctr   r=   r
   r0   r(   r1   r2   s         r   "test_distinct_selectable_in_unionsz?DeprecatedCompoundSelectTest.test_distinct_selectable_in_unionsq   s    &&E]  q1::<E]  q1::<2r]  #&&(
 BKK09i2H	
 
 
s   9DDc                 &   | j                   j                  }t        |      j                  |j                  j
                  dk(        j                  d      j                  |j                  j
                        j                         j                         }t        |      j                  |j                  j
                  dk(        j                  d      j                  |j                  j
                        j                         j                         }t        ||      j                  d      }t        j                  d      5  | j                  ||j                  |j                  j
                        ddg       d d d        y # 1 sw Y   y xY wr<   )r   r   r	   r.   r/   r   r=   r1   r9   r   r
   r0   r(   r2   s         r   .test_limit_offset_aliased_selectable_in_unionszKDeprecatedCompoundSelectTest.test_limit_offset_aliased_selectable_in_unions   s   &&5MU577::?#U1XXeggjj!UWVX 	 5MU577::?#U1XXeggjj!UWVX 	 2r]  #&&(
 BKK09i2H	
 
 
s   9FFN) )__name__
__module____qualname____backend__classmethodr   r!   r(   r7   r:   r
   requiresorder_by_col_from_union/parens_in_union_contained_select_w_limit_offsetr>   0parens_in_union_contained_select_wo_limit_offsetr@   rC   rE   rF   r   r   r   r      s    K
 
 	
 	
=* --EE F . FF Gr   r   N) r   
assertionsr   schemar   r   r   r	   r
   r   
TablesTestr   rF   r   r   <module>rT      s3           F8#6#6 Fr   