
X_SP                 @   sn   d  d l  Z  d  d l Z d  d l Td  d l m Z Gd d   d e j  Z d Z e d k rj e j	   n  d S)    N)*)StringIOc               @   s   e  Z d  Z d d   Z d d   Z d d   Z d d   Z d	 d
   Z d d   Z d d   Z	 d d   Z
 d d   Z d d   Z d d   Z d d   Z d d   Z d d   Z d d   Z d d    Z d! S)"
test_utilsc             C   s   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j t d    |  j t d   |  j t d	   |  j t d
   |  j t d   |  j t d   d  S)Nz0.5z 0z+1000000000  2z	0000.2323z0.1e-23z	 -0.5e+23 asdadq34sdz92384.kjdfghikswzadf!@#nn)
assertTrueisfloatassertFalse)self r   K/Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_utils.pytest_isfloat.   s    ztest_utils.test_isfloatc             C   s   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j  t d   |  j t d    |  j t d   |  j t d   |  j t d   |  j t d	   |  j t d
   d  S)N0z-1Z10Z100101012234Z000r   r   r   z0.23zadf!@#nn)r	   isintr   )r   r   r   r   
test_isint=   s    ztest_utils.test_isintc             C   s   |  j  t d  d  d  S)Nz  kjashd askjdh askjdh	asdfZkjashdaskjdhaskjdhasdf)assertEqualremove_whitespace)r   r   r   r   test_remove_whitespaceJ   s    z!test_utils.test_remove_whitespacec             C   sX   d } d } x! | D] } |  j  t |   q Wx! | D] } |  j t |   q7 Wd  S)Nr    
	 

 a)r   r   r   r   )r   )r	   isblankr   )r   ZblankZ	not_blanksr   r   r   test_isblankN   s    ztest_utils.test_isblankc          	   C   s,   d } t  |  } |  j t |  d  d  S)NZaaabbbbcccddeaa   b   cd   e   r   r   r   r    r!   r   r"   r#   r$   r%   r   r%   )r&   r'   r(   r)   r*   r+   )group_countr   tuple)r   testoutr   r   r   test_group_countV   s    ztest_utils.test_group_countc             C   s(  t  t d   } x | D] } q W|  j t | j  |  j | j    |  j | j   d  k  t  t d   } t |  | j	 d  |  j
 d t |   | j   } t |  } |  j
 | |  |  j
 | j   d  |  j | j    |  j | t |  k  |  j | t  |  k  d  S)NZ123456r   r#   )	ReiterateiterassertRaisesStopIterationnextr   has_itemr	   peekpushr   index)r   iitempnr   r   r   test_reiterate\   s"    
ztest_utils.test_reiteratec             C   sP   t  d d d d  } t |  } t |  } t |  } |  j | j d  d  S)Nkindz	some datar    r   )Tokenstrreprevalr   typeof)r   tr   rt2r   r   r   
test_tokens   s
    ztest_utils.test_tokenc             C   s>   t  d d d d  } t t |   } |  j | j d  d  S)Nr   r   r   r    )StructrC   rB   r   r   )r   r   s2r   r   r   test_struct{   s    ztest_utils.test_structc             C   sL   t  d d d d  } t |  } |  j d | k  |  j | d d  d  S)Nr   r   r   r    )dictinvert_dictr	   r   )r   r"   Zinvdr   r   r   test_invert_dict   s    ztest_utils.test_invert_dictc             C   s   |  j  t d  d  d  S)NZ	IHATEMATHZE3DCADD69B01ADD1)r   crc64)r   r   r   r   
test_crc64   s    ztest_utils.test_crc64c             C   s   |  j  t d  d  d  S)NzTest the CRC-32 of this string.z%08Xij]Z5DA6EB6A)r   crc32)r   r   r   r   
test_crc32   s    ztest_utils.test_crc32c             C   s/   t  d  } t  d  } |  j t t  d  d  S)NZmorepythonZNOSUCH)find_commandr3   EnvironmentError)r   r<   r   r   r   test_find_command   s    ztest_utils.test_find_commandc             C   s   d } d } y t  | |   WnK t  k
 rl } z+ |  j | j |  |  j | j |  WYd  d  } ~ Xn Xy t  | | d   Wn^ t k
 r } z> |  j | j |  |  j | j |  |  j | j d  WYd  d  } ~ Xn Xd  S)NzSome messageZwhatsit
   )ArgumentErrorr   msgkey
ValueErrorvalue)r   messageZ	componenterrr   r   r   test_ArgumentValueError   s    &z"test_utils.test_ArgumentValueErrorc             C   sF   t  d d d d  } |  j | d d  |  j t d d   |  d  S)Nr   r   r!   c             S   s
   |  j    S)N)pop)Dr   r   r   <lambda>   s    z,test_utils.test_frozendict.<locals>.<lambda>)
frozendictr   r3   AttributeError)r   r"   r   r   r   test_frozendict   s    ztest_utils.test_frozendictc                s  t  t  } t |  } |  j | d j d   |  j | d j d   d d   } t | d | } |  j t |  d  |  j | d d  |  j | d d  t j d	      f d
 d   } t | d | d | } |  j t |  d  |  j | d d  |  j | d d  |  j	 t
 | j d  |  j | d d  |  j | d d  |  j d | k  |  j d | k  |  j d | k  d } x | D] } | | 7} qW|  j | d  d  S)Nr   zline 0r    zline 4c             S   s   t  |  j   j   d  S)Nr%   )intreadlinesplit)fr   r   r   parser   s    z*test_utils.test_file_index.<locals>.parserrj      z	(line \d)c                s,     j  |   } | d  k r d  S| j d  S)Nr%   )searchgroup)linek)rZ   r   r   linekey   s    z+test_utils.test_file_index.<locals>.linekeyrp   r   zline 1r%   ZBlah      )r   tfile	FileIndexr	   
startswithr   lenrecompiler3   
IndexError__getitem__r   )r   streamidxrj   rp   rE   vr   )rZ   r   test_file_index   s2    ztest_utils.test_file_indexc             C   sv   t  t d t  } |  j | j d   t t d t  } | j   t t d t  j   } |  j | j	 d   d  S)Nzdata/cap.faztest_corebio/data/cap.faz>aldB)
resource_filename__name____file__r	   endswithresource_streamcloseresource_stringdecoderu   )r   fnri   r   r   r   r   test_resource   s    
ztest_utils.test_resourceN)r   
__module____qualname__r   r   r   r   r0   r>   rH   rK   rN   rP   rR   rV   r_   re   r~   r   r   r   r   r   r   ,   s    (r   z%line 0   
line 1
Blah
line 3
line 4 
__main__)
rw   unittestcorebio.utilsZcorebio._py3kr   TestCaser   rs   r   mainr   r   r   r   <module>%   s   
