
    dV                        d Z ddlZddlZddlZddlmZ  G d dej                  Z G d dej                  Z	 G d d	ej
        ej                  Z G d
 dej
        ej                  Z G d dej
        ej                  Zd Zedk    rEddlZ ej        ej                    ej                     ej                            d           dS dS )z0Test module for enumerated types under PyTables.    N)commonc                   b    e Zd ZdZddZd Zd Zd Zd Zd	 Z	d
 Z
d Zd Zd Zd Zd Zd ZdS )CreateColTestCasez-Test creating enumerated column descriptions.uint32 c                    t          j        ||||          }t          j        |          }|                     |j        d           |                     |j        j        j        |j        j                   |                     t          |j	                  t          ||                              |                     |j        j
        |           |                     |j        |           dS )z2Create and check an enumerated column description.baseshapeenumN)tbEnumColEnumassertEqualtypedtyper
   nameintdfltr   r   )selfr   r   r
   r   enumcolsameEnums          6lib/python3.11/site-packages/tables/tests/test_enum.py
_createColzCreateColTestCase._createCol   s     *T4d%@@@74==v...+0',2CDDD 	W\**C,?,?@@@,e444x00000    c                 ^    t          j        g d          }|                     |d           dS )z4Describing an enumerated column from an enumeration.redgreenbluer   N)r   r   r   r   colorss     r   test00a_validFromEnumz'CreateColTestCase.test00a_validFromEnum   s4     11122&&&&&r   c                 >    dddd}|                      |d           dS )z2Describing an enumerated column from a dictionary.         r   r   Nr   r!   s     r   test00b_validFromDictz'CreateColTestCase.test00b_validFromDict    s-     Q22&&&&&r   c                 :    g d}|                      |d           dS )z,Describing an enumerated column from a list.r   r   Nr(   r!   s     r   test00c_validFromListz'CreateColTestCase.test00c_validFromList&   s)     *))&&&&&r   c                 N    d}|                      t          | j        |d           dS )z7Describing an enumerated column from an invalid object.{   r   N)assertRaises	TypeErrorr   r!   s     r   test00d_invalidFromTypez)CreateColTestCase.test00d_invalidFromType,   s+     )T_feDDDDDr   c                 V    dddd}|                      t          | j        |d           dS )z?Describing an enumerated column with an invalid default object.r%   r&   r'   r   blackN)r.   KeyErrorr   r!   s     r   test01_invalidDfltz$CreateColTestCase.test01_invalidDflt2   s5     Q22(DOVWEEEEEr   c                 @    dddd}|                      |dd           dS )z4Describing an enumerated column with a broader type.r%   r&   r'   r   r   int64Nr(   r!   s     r   test02a_validDtypeBroaderz+CreateColTestCase.test02a_validDtypeBroader8   s/     Q22w/////r   c                 ~    d t          d          D             }|                     t          | j        |dd           dS )z7Describing an enumerated column with a too narrow type.c                     g | ]}d |z  S ze%dr   .0is     r   
<listcomp>zCCreateColTestCase.test02b_invalidDtypeTooNarrow.<locals>.<listcomp>A       000%!)000r   ,  e0uint8N)ranger.   r/   r   r!   s     r   test02b_invalidDtypeTooNarrowz/CreateColTestCase.test02b_invalidDtypeTooNarrow>   sA     10U3ZZ000)T_fdGLLLLLr   c                 >    g d}|                      |dd           dS )z<Describing an enumerated column with multidimensional shape.r   r   r&   r   Nr(   r!   s     r   test03a_validShapeMDz&CreateColTestCase.test03a_validShapeMDD   s-     *))T22222r   c                     t          j        g d          }t          j        |ddd          }dfdt          j        d          D             }|                     t          |          |           d	S )
z5Checking the string representation of an enumeration.r   r   r   r   r	   z[EnumCol(enum=Enum({%s}), dflt='red', base=UInt32Atom(shape=(), dflt=0), shape=(), pos=None)c                 @    g | ]}d                      |          z  S )z, )join)r<   itemstemplates     r   r>   z;CreateColTestCase.test04a_validReprEnum.<locals>.<listcomp>U   s7     
 
 
,1Htyy'''
 
 
r   )z	'blue': 2z
'green': 1z'red': 0N)r   r   r   	itertoolspermutationsassertInrepr)r   r"   r   permitationsrM   s       @r   test04a_validReprEnumz'CreateColTestCase.test04a_validReprEnumJ   s     11122*VUDDD+ 	
 
 
 
5>5K769 69
 
 
 	d7mm\22222r   c                 x    ddi}|                      t          | j        |dt          j                               dS )z<Describing an enumerated column of floats (not implemented).r         ?r
   N)r.   NotImplementedErrorr   r   	FloatAtomr!   s     r   test99a_nonIntEnumz$CreateColTestCase.test99a_nonIntEnum[   sH     -t!|~~ 	 	/ 	/ 	/ 	/ 	/r   c                 T    g d}|                      t          | j        |dd           dS )zXDescribing an enumerated column encoded as floats.

        (not implemented).

        r   r   float64N)r.   rW   r   r!   s     r   test99b_nonIntDtypez%CreateColTestCase.test99b_nonIntDtypeb   sC     *))&%	L 	L 	L 	L 	Lr   c           	      |    ddi}|                      t          | j        |dt          j        d                     dS )zADescribing an enumerated column of non-scalars (not implemented).r   r'   r&      r_   rG   rV   N)r.   rW   r   r   IntAtomr!   s     r   test99b_nonScalarEnumz'CreateColTestCase.test99b_nonScalarEnumm   sP     #-t!z222 	 	4 	4 	4 	4 	4r   Nr   r   )__name__
__module____qualname____doc__r   r#   r)   r+   r0   r4   r7   rD   rH   rS   rY   r\   ra   r   r   r   r   r   
   s        771 1 1 1' ' '' ' '' ' 'E E EF F F0 0 0M M M3 3 33 3 3"/ / /	L 	L 	L4 4 4 4 4r   r   c                   V    e Zd ZdZddZd Zd Zd Zd Zd	 Z	d
 Z
d Zd Zd Zd ZdS )CreateAtomTestCasezTest creating enumerated atoms.r   r   c                 ^   t          j        ||||          }t          j        |          }|                     |j        d           |                     |j        j        j        |j        j                   |                     |j        |           |                     |j	        |           dS )z$Create and check an enumerated atom.r	   r   N)
r   EnumAtomr   r   r   r   r
   r   r   r   )r   r   r   r
   r   enumatomr   s          r   _createAtomzCreateAtomTestCase._createAtomx   s     ;tTEBBB74==///,18=3EFFF///11111r   c                 ^    t          j        g d          }|                     |d           dS )z2Describing an enumerated atom from an enumeration.r   r   N)r   r   rl   r!   s     r   r#   z(CreateAtomTestCase.test00a_validFromEnum   s6     11122'''''r   c                 >    dddd}|                      |d           dS )z0Describing an enumerated atom from a dictionary.r%   r&   r'   r   r   Nrl   r!   s     r   r)   z(CreateAtomTestCase.test00b_validFromDict   s/     Q22'''''r   c                 :    g d}|                      |d           dS )z*Describing an enumerated atom from a list.r   r   Nro   r!   s     r   r+   z(CreateAtomTestCase.test00c_validFromList   s+     *))'''''r   c                 N    d}|                      t          | j        |d           dS )z5Describing an enumerated atom from an invalid object.r-   r   N)r.   r/   rl   r!   s     r   r0   z*CreateAtomTestCase.test00d_invalidFromType   s,     )T%5vuEEEEEr   c                 B    dddd}|                      |dd           dS )	z2Describing an enumerated atom with a broader type.r%   r&   r'   r   r   r6   rV   Nro   r!   s     r   r7   z,CreateAtomTestCase.test02a_validDtypeBroader   s4     Q22W55555r   c                 ~    d t          d          D             }|                     t          | j        |dd           dS )z5Describing an enumerated atom with a too narrow type.c                     g | ]}d |z  S r:   r   r;   s     r   r>   zDCreateAtomTestCase.test02b_invalidDtypeTooNarrow.<locals>.<listcomp>   r?   r   r@   r   rB   N)rC   r.   r/   rl   r!   s     r   rD   z0CreateAtomTestCase.test02b_invalidDtypeTooNarrow   sB     10U3ZZ000)T%5vugNNNNNr   c                 >    g d}|                      |dd           dS )z:Describing an enumerated atom with multidimensional shape.r   r   rF   rG   Nro   r!   s     r   rH   z'CreateAtomTestCase.test03a_validShapeMD   s0     *))d33333r   c                 x    ddi}|                      t          | j        |dt          j                               dS )z:Describing an enumerated atom of floats (not implemented).r   rU   rV   N)r.   rW   rl   r   rX   r!   s     r   rY   z%CreateAtomTestCase.test99a_nonIntEnum   sI     -t/?!|~~ 	 	/ 	/ 	/ 	/ 	/r   c                 T    g d}|                      t          | j        |dd           dS )zWDescribing an enumerated atom encoded as a float.

        (not implemented).

        r   r   r[   N)r.   rW   rl   r!   s     r   r\   z&CreateAtomTestCase.test99b_nonIntDtype   sD     *))!165)	M 	M 	M 	M 	Mr   c           	      |    ddi}|                      t          | j        |dt          j        d                     dS )z?Describing an enumerated atom of non-scalars (not implemented).r   r^   r_   rG   rV   N)r.   rW   rl   r   r`   r!   s     r   ra   z(CreateAtomTestCase.test99b_nonScalarEnum   sQ     #-t/?!z222 	 	4 	4 	4 	4 	4r   Nrb   )rc   rd   re   rf   rl   r#   r)   r+   r0   r7   rD   rH   rY   r\   ra   r   r   r   rh   rh   u   s        ))2 2 2 2( ( (( ( (( ( (F F F6 6 6O O O4 4 4/ / /	M 	M 	M4 4 4 4 4r   rh   c                       e Zd ZdZ ej        ddddd          ZdZej        Z	dZ
d	ZddZd Zd Zd Zd Zd Zd Zd ZdS )EnumTableTestCasez$Test tables with enumerated columns.r%   r&   r'   r   r   r   r    r2   r2     uint16r   c                 @      G  fddt           j                  }|S )Nc                   z    e Zd Z ej        d          Z ej         j         j         j	        d          Z
dS )7EnumTableTestCase._description.<locals>.TestDescriptionr   )posr'   )r
   r   r   N)rc   rd   re   r   IntColridr   r   defaultNameenumTypercolorr   r   s   r   TestDescriptionr      sN        ")"""CRZ	4+]%Q8 8 8FFFr   r   )r   IsDescription)r   r   r   s   `` r   _descriptionzEnumTableTestCase._description   sH    	8 	8 	8 	8 	8 	8 	8 	8b. 	8 	8 	8 r   c                 .   | j                             dd|                                 |                                            |                                  |                     | j         j        j                            d          | j	        d           dS )z3Reopening a file with tables using enumerated data./testtitler   5Enumerated type was not restored correctly from disk.N
h5filecreate_tabler   _getMethodName_reopenr   rootr   get_enumr   r   s    r   test00a_reopenz EnumTableTestCase.test00a_reopen   s     	  **,,D4G4G4I4I 	! 	K 	K 	K 	K!**844diC	E 	E 	E 	E 	Er   c                 0   | j                             dd|                     d          |                                            |                                  |                     | j         j        j                            d          | j	        d           dS )zMReopening a file with tables using enumerated multi-dimensional
        data.r   r   rF   r   r   r   Nr   r   s    r   test00b_reopenMDz"EnumTableTestCase.test00b_reopenMD   s     	  **4008K8K8M8M 	! 	O 	O 	O 	K!**844diC	E 	E 	E 	E 	Er   c                    | j                             dd|                                 |                                           }d| j        fd| j        fg}|j        }|d         d         |d<   |d         d         |d	<   |                                 |d         d         |d<   |                     t          t          j        |d	|d         d                    |                                 d
|_        |                                }t          j        d|dd         d|d           |                     |dd         |d           dS )z3Appending enumerated values using ``row.append()``.r   r   r   
      r   r   r'   r   python* appended value: N
* read value: 
Written and read values differ.)r   r   r   r   valueInEnumvalueOutOfEnumrowappendr.   
ValueErroroperatorsetitemflushflavorreadr   verbosePrintr   )r   tblappendedr   r   s        r   test01_rowAppendz"EnumTableTestCase.test01_rowAppend   sl    k&&**,,D4G4G4I4I ' K K !"$%' ga[^E
 AH

a[^E
(#x!Q	I 	I 	I 			
xxzz }}}ddd$	% 	% 	% 	SbSM4!B	D 	D 	D 	D 	Dr   c                    | j                             dd|                                 |                                           }d| j        fd| j        fg}|                    |           |                                 d|_        |	                                }t          j        d|d|d	           |                     ||d
           dS )z5Appending enumerated values using ``table.append()``.r   r   r   r   r   r   r   r   r   r   N)r   r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   s       r   test02_appendzEnumTableTestCase.test02_append  s     k&&**,,D4G4G4I4I ' K K !"$%' 	

8		
xxzz xx	  	  	  	4)JKKKKKr   c                    | j                             dd|                                 |                                           }d| j        fd| j        fg}|                    |           d| j        fd| j        fg}||dd<   d|_        |                                }t          j
        d|d	|d
           |                     ||d           dS )z9Changing enumerated values using ``table.__setitem__()``.r   r   r   r   r   Nr   * written value: r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   writtenr   s        r   test03_setitemz EnumTableTestCase.test03_setitem#  s    k&&**,,D4G4G4I4I ' K K !"!"$ 	

8 !"$%' AAA
xxzz ww	 	 	 	$(IJJJJJr   c                    | j                             dd|                     d          |                                           }d| j        | j        ffd| j        | j        ffg}|j        }|d         d         |d<   |                     t          t          j
        |d	|d         d
                    |                    |           |                                 d|_        |                                }t          ||          D ]\  }}|                     |d         |d         d           |                     |d
         d         |d
         d         d           |                     |d
         d
         |d
         d
         d           dS )z,Appending multi-dimensional enumerated data.r   r   rF   r   r   r   r   r   r   r'   r   r   N)r   r   r   r   r   r   r   r.   r   r   r   r   r   r   r   zipr   )r   r   r   r   r   
x_appendedx_reads          r   test04_multidimz!EnumTableTestCase.test04_multidim:  s    k&&**4008K8K8M8M ' O O $"D$789$"D$789; ga[^E
(#x!Q	I 	I 	I 	

8		
xxzz"%h"5"5 	@ 	@JZ]F1I>@ @ @Z]1-vay|>@ @ @Z]1-vay|>@ @ @ @	@ 	@r   c                    | j                             dd|                                 |                                           }d| j        fd| j        fd| j        fg}|                    |           |                                 d |                    dd	| j        i          D             }t          j
        d
| j        d|j        j        d|d|dd         d	           |                     ||dd         d           dS )zSearching enumerated data.r   r   r   r   r      c                 .    g | ]}|d          |d         fS )r   r   r   )r<   r   s     r   r>   z2EnumTableTestCase.test05_where.<locals>.<listcomp>b  s;     J J J ZX'J J Jr   zrcolor == vvz* ``valueInEnum``: z
* ``rcolor`` column: ``z``
* ``searched``: z
* Should look like: Nr   r   z"Search returned incorrect results.)r   r   r   r   r   r   r   r   wherer   r   colsr   r   )r   r   r   searcheds       r   test05_wherezEnumTableTestCase.test05_whereU  sO    k&&**,,D4G4G4I4I ' K K !"!"$%' 	

8		J Jyyd6F0GHHJ J J 	
 (((HSbSMMM	K	L 	L 	L 	hssm%I	K 	K 	K 	K 	Kr   Nr   )rc   rd   re   rf   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rz   rz      s        ..271q!a@@AADK(KNH   
E 
E 
EE E ED D D<L L L(K K K.@ @ @6K K K K Kr   rz   c                       e Zd ZdZ ej        ddddd          Zej        ZdZ	dZ
dd
Zd Zd Zd Zd Zd Zd Zd Zd Zd ZdS )EnumEArrayTestCasez,Test extendable arrays of enumerated values.r%   r&   r'   r   r{   r|   r}   r   c                 F    t          j        | j        d| j        |          S Nr   r	   r   rj   r   r   r   s     r   _atomzEnumEArrayTestCase._atomw      {49e$-uMMMMr   c                 Z   | j                             dd|                                 d|                                            d| j         j        j        _        |                                  |                     | j         j        j        	                                | j
        d           dS )z>Reopening a file with extendable arrays using enumerated data.r   r   r   r   r   r   r   Nr   create_earrayr   r   r   r   r   r   r   r   r   r   s    r   r   z!EnumEArrayTestCase.test00a_reopenz  s     	!!T%%'' 	" 	) 	) 	) (0$K!**,,diC	E 	E 	E 	E 	Er   c                 Z   | j                             dd|                                 d|                                            d| j         j        j        _        |                                  |                     | j         j        j        	                                | j
        d           dS )zXReopening a file with extendable arrays using enumerated
        multi-dimensional data.r   r   r   r&   r   r   r   Nr   r   s    r   r   z#EnumEArrayTestCase.test00b_reopenMD  s     	!!V%%'' 	" 	) 	) 	) (0$K!**,,diC	E 	E 	E 	E 	Er   c                    d}t          j        | j        || j        d          }| j                            dd|d|                                            |                                  |                     | j        j	        j
                                        | j        d           |                     | j        j	        j
        j        j        | j        |         d	           d S )
Nr   r   r	   r   r   r   r   r   JThe default value of enumerated type was not restored correctly from disk.r   rj   r   r   r   r   r   r   r   r   r   r   atomr   r   r   r   s      r   !test_enum_default_persistence_redz4EnumEArrayTestCase.test_enum_default_persistence_red  s    {49dbIII!!#vt4(,(;(;(=(= 	" 	? 	? 	?K!**,,diC	E 	E 	E 	K!&+TYt_	 	 	 	 	r   c                    d}t          j        | j        || j        d          }| j                            dd|d|                                            |                                  |                     | j        j	        j
                                        | j        d           |                     | j        j	        j
        j        j        | j        |         d	           d S )
Nr   r   r	   r   r   r   r   r   r   r   r   s      r   #test_enum_default_persistence_greenz6EnumEArrayTestCase.test_enum_default_persistence_green      {49dbIII!!#vt4(,(;(;(=(= 	" 	? 	? 	?K!**,,diC	E 	E 	E 	K!&+TYt_	 	 	 	 	r   c                    d}t          j        | j        || j        d          }| j                            dd|d|                                            |                                  |                     | j        j	        j
                                        | j        d           |                     | j        j	        j
        j        j        | j        |         d	           d S )
Nr    r   r	   r   r   r   r   r   r   r   r   s      r   "test_enum_default_persistence_bluez5EnumEArrayTestCase.test_enum_default_persistence_blue  s    {49dbIII!!#vt4(,(;(;(=(= 	" 	? 	? 	?K!**,,diC	E 	E 	E 	K!&+TYt_	 	 	 	 	r   c                    d}t          j        | j        || j        d          }| j                            dd|d|                                            |                                  |                     | j        j	        j
                                        | j        d           |                     | j        j	        j
        j        j        | j        |         d	           d S )
Nr2   r   r	   r   r   r   r   r   r   r   r   s      r   #test_enum_default_persistence_blackz6EnumEArrayTestCase.test_enum_default_persistence_black  r   r   c                 ^   | j                             dd|                                 d|                                           }d|_        | j        | j        g}|                    |           |                                 |	                                }| 
                    ||d           dS )/Appending scalar elements of enumerated values.r   r   r   r   r   r   Nr   r   r   r   r   r   r   r   r   r   r   r   earrr   r   s       r   test01_appendz EnumEArrayTestCase.test01_append  s     {((T%%'' ) ) ) $d&9:H

yy{{4)JKKKKKr   c                 z   | j                             dd|                                 d|                                           }d|_        | j        | j        g| j        | j        gg}|                    |           |                                 |	                                }| 
                    ||d           dS ):Appending multi-dimensional elements of enumerated values.r   r   r   r   r   r   Nr   r   s       r   test02_appendMDz"EnumEArrayTestCase.test02_appendMD  s     {((V%%'' ) ) )  t23t235 	H

yy{{4)JKKKKKr   c                 `   | j                             dd|                                 d|                                           }d|_        | j        | j        f}|                    |           | j        | j        g}||dd<   |                                }| 	                    ||d           dS )z:Changing enumerated values using ``earray.__setitem__()``.r   r   r   r   r   Nr   )
r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   s        r   r   z!EnumEArrayTestCase.test03_setitem  s     {((T%%'' ) ) ) $d&67H#T%89QQQyy{{$(IJJJJJr   Nr   )rc   rd   re   rf   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   o  s        66271q!a@@AAD(KNHN N N NE E EE E E  "  "  "  "L L LL L L"K K K K Kr   r   c                   x    e Zd ZdZ ej        ddddd          Zej        ZdZ	dZ
dd
Zd Zd Zd Zd Zd ZdS )EnumVLArrayTestCasez1Test variable-length arrays of enumerated values.r%   r&   r'   r   r{   r|   r}   r   c                 F    t          j        | j        d| j        |          S r   r   r   s     r   r   zEnumVLArrayTestCase._atom  r   r   c                 X   | j                             dd|                                 |                                            d| j         j        j        _        |                                  |                     | j         j        j        	                                | j
        d           dS )zKReopening a file with variable-length arrays using
        enumerated data.r   r   r   r   r   Nr   create_vlarrayr   r   r   r   r   r   r   r   r   r   s    r   r   z"EnumVLArrayTestCase.test00a_reopen  s     	""%%'' 	# 	) 	) 	) (0$K!**,,diC	E 	E 	E 	E 	Er   c                 Z   | j                             dd|                     d          |                                            d| j         j        j        _        |                                  |                     | j         j        j        	                                | j
        d           dS )z]Reopening a file with variable-length arrays using enumerated
        multi-dimensional data.r   r   rF   r   r   r   Nr   r   s    r   r   z$EnumVLArrayTestCase.test00b_reopenMD&  s     	""D))%%'' 	# 	) 	) 	) (0$K!**,,diC	E 	E 	E 	E 	Er   c                    | j                             dd|                                 |                                           }d|_        | j        g| j        | j        gg}|                    |d                    |                    |d                    |                                 |	                                }t          j        d|d|d	           |                     ||d
           dS )r   r   r   r   r   r   r'   r   r   r   r   Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   vlarrr   r   s       r   r   z!EnumVLArrayTestCase.test01_append5  s     **%%'' + ) )    t235 	Xa[!!!Xa[!!!zz|| xx	  	  	  	4)JKKKKKr   c                    | j                             dd|                     d          |                                           }d|_        | j        | j        gg| j        | j        g| j        | j        ggg}|                    |d                    |                    |d                    |                                 |	                                }t          j        d|d	|d
           |                     ||d           dS )r   r   r   rF   r   r   r   r'   r   r   r   r   Nr   r   s       r   r   z#EnumVLArrayTestCase.test02_appendMDK  s    **D))%%'' + ) )    014 34 0134
 	Xa[!!!Xa[!!!zz|| xx	  	  	  	4)JKKKKKr   c                    | j                             dd|                                 |                                           }d|_        | j        | j        f}|                    |           | j        | j        g}||d<   |                                }t          j
        d|d|d           |                     ||d         d	           d
S )z;Changing enumerated values using ``vlarray.__setitem__()``.r   r   r   r   r   r   r   r   r   N)r   r   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   s        r   r   z"EnumVLArrayTestCase.test03_setitemb  s     **%%'' + ) )  $d&67X#T%89azz|| ww	 	 	 	$q'+LMMMMMr   Nr   )rc   rd   re   rf   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r     s        ;;271q!a@@AAD(KNHN N N NE E EE E EL L L,L L L.N N N N Nr   r   c                  
   ddl } t          j                                        }d}t	          |          D ]M}|                    |                     t          j        j	                             |                    t          j        
                    t                               |                    t          j        
                    t                               |                    t          j        
                    t                               |                    t          j        
                    t                               |                    t          j        
                    t                               O|S )zCReturn a test suite consisting of all the test cases in the module.r   Nr'   )doctestr   unittest	TestSuiterC   addTestDocTestSuiter   miscr   	makeSuiter   rh   rz   r   r   )r   theSuiteniterr=   s       r   suiter  w  s%    NNN((**HE 5\\ I I--bgl;;<<<223DEEFFF223EFFGGG223DEEFFF223EFFGGG223FGGHHHHOr   __main__r  )defaultTest)rf   rN   r   tablesr   tables.testsr   PyTablesTestCaser   rh   TempFileMixinrz   r   r   r  rc   sys
parse_argvargvprint_versionsr   mainr   r   r   <module>r     s   6 6               h4 h4 h4 h4 h4/ h4 h4 h4VN4 N4 N4 N4 N40 N4 N4 N4bfK fK fK fK fK,f.E fK fK fKRZK ZK ZK ZK ZK-v/F ZK ZK ZKzhN hN hN hN hN&.0G hN hN hNV  ( zJJJFchF
OW-----	 r   