ó
X_Sc           @   s×   d  d l  Z  d  d l Td  d l m Z m Z d  d l Td  d l m Z d  d l m Z d e  j	 f d „  ƒ  YZ
 d e  j	 f d	 „  ƒ  YZ d
 e  j	 f d „  ƒ  YZ d e  j	 f d „  ƒ  YZ e d k rÓ e  j ƒ  n  d S(   iÿÿÿÿN(   t   *(   t   fastat   blastxml(   t   StringIO(   t   testdata_streamt   test_search_ioc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s   t  ƒ  } d  S(   N(   t
   Annotation(   t   selft   meta(    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   test_Annotation'   s    c         C   s   t  ƒ  } d  S(   N(   t   Hit(   R   t   h(    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   test_Hit*   s    c         C   s   t  ƒ  } t | ƒ } d  S(   N(   t	   Alignmentt   str(   R   t   at   s(    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   test_Alignment-   s    	(   t   __name__t
   __module__R	   R   R   (    (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   #   s   		t	   test_readc           B   s   e  Z d  „  Z RS(   c         C   sº   t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d	 ƒ t  d
 ƒ g
 } g  | D] } t | ƒ ^ qg } |  j t | ƒ t | ƒ ƒ x | D] } | j ƒ  q¢ Wd  S(   Ns   ssearch/xbt001.xmls   ssearch/xbt002.xmls   ssearch/xbt003.xmls   ssearch/xbt004.xmls   ssearch/xbt005.xmls   ssearch/ssearch_out.txts   ssearch/ssearch_out_compact.txts   ssearch/fasta_out_compact.txts&   ssearch/ssearch_out_compact2_dbvdb.txts%   ssearch/ssearch_out_compact_dbvdb.txt(   R   t   readt   assertEqualt   lent   close(   R   t   filest   ft   results(    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt	   test_scan2   s    									 (   R   R   R   (    (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   1   s   t   test_blastxml_readc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s@   t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ g } | S(   Ns   ssearch/xbt001.xmls   ssearch/xbt002.xmls   ssearch/xbt003.xmls   ssearch/xbt004.xmls   ssearch/xbt005.xmls   ssearch/megablast.xml(   R   (   R   R   (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   examplesF   s    					c         C   s#   t  ƒ  } |  j t t j | ƒ d  S(   N(   R   t   assertRaisest
   ValueErrorR   R   (   R   R   (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   test_read_emptyQ   s    	c         C   sÒ  |  j  ƒ  } g  | D] } t j | ƒ ^ q } |  j t | ƒ t | ƒ ƒ | d } |  j | j d ƒ |  j | j d ƒ |  j t | j d j ƒ d ƒ | j d j d } |  j | j	 j
 d ƒ |  j | j	 j d ƒ |  j | j d j d ƒ |  j | j d j d	 ƒ |  j | j d j d
 ƒ |  j d | j d j ƒ |  j d | j d j d j d j ƒ | d } |  j | j d ƒ |  j | j d ƒ |  j t | j ƒ d ƒ x | D] } | j ƒ  qºWd  S(   Ni    t   blastps   2.2.12iÔ   i   s   gi|49609685|emb|CAG73118.1|iV   iÛ   g' ‰°á=V@g«¬Ž¥‡<s[   MGGISIWQXXXXXXXXXXXFGTKKLGSIGSDLGASIKGFKKAMSDDEP--KQDKTSQDADFTAKTIADKQADTNQEQAKTEDAKRHDKEQVsY   MGGISIWQLLI+AVIVVLLFGTKKLGSIGSDLGASIKGFKKAMSDD+ KQDKTSQDADFTAK+IADKQ      +AK EDAK  DKEQVi   t   blastns   2.2.14i   (   R   R   R   R   R   t	   algorithmt   algorithm_versionR   t   hitst   targett   namet   lengtht   assertAlmostEqualt
   alignmentst	   raw_scoret	   bit_scoret   significancet	   query_seqt   mid_seqR   (   R   R   R   t   reportst   rt   hit(    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   U   s*    "
 (
 (   R   R   R   R!   R   (    (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   E   s   		t   test_fasta_readc           B   s#   e  Z d  „  Z d „  Z d „  Z RS(   c         C   s7   t  d ƒ t  d ƒ t  d ƒ t  d ƒ t  d ƒ g } | S(   Ns   ssearch/ssearch_out.txts   ssearch/ssearch_out_compact.txts   ssearch/fasta_out_compact.txts&   ssearch/ssearch_out_compact2_dbvdb.txts%   ssearch/ssearch_out_compact_dbvdb.txt(   R   (   R   R   (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   t   s    				c         C   s#   t  ƒ  } |  j t t j | ƒ d  S(   N(   R   R   R    R   R   (   R   R   (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR!   ~   s    	c         C   s÷  |  j  ƒ  } g  | D] } t j | ƒ ^ q } |  j t | ƒ t | ƒ ƒ | d } |  j | j d ƒ |  j | j d ƒ |  j t | j d j ƒ d ƒ | j d j d } |  j | j	 j
 d ƒ |  j | j	 j d ƒ |  j | j d ƒ |  j | j d	 ƒ |  j | j d
 ƒ |  j | j d j d ƒ | d } |  j | j d ƒ |  j | j d ƒ |  j t | j d j ƒ d ƒ | j d j d } |  j | j	 j
 d ƒ |  j | j	 j d ƒ |  j | j d ƒ |  j | j d	 ƒ |  j | j d
 ƒ | d } |  j | j d ƒ |  j | j d ƒ |  j t | j ƒ d ƒ |  j t | j d j ƒ d ƒ | j d j d } |  j | j	 j
 d ƒ |  j | j	 j d ƒ |  j | j d ƒ |  j | j d ƒ |  j | j d ƒ x | D] } | j ƒ  qßWd  S(   Ni    t   SSEARCHs   3.4t24i   i
   t   d8rxna_i4   i"   gffffff/@gš™™™™™@sD   EGFLHLEDKPHPLQCQFFVESVIPAGSYQVPYRINVNNG-RPELAFDFKAMKRA..............i   i   i   i   t   d2sn3__iA   i:   i   gV-²­?(   R   R   R   R   R   R$   R%   R   R&   R'   R(   R)   R*   R,   R-   R.   R+   t
   target_seqR   (   R   R   R   R1   R2   R3   (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR   ‚   sJ    "
 
 
  (   R   R   R   R!   R   (    (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyR4   s   s   	
	t   __main__(   t   unittestt   corebio.ssearch_ioR   R   t   corebio.utilst   corebio._py3kR   t   test_corebioR   t   TestCaseR   R   R   R4   R   t   main(    (    (    sP   /Users/gec/Work/Projects/corebioproj/weblogo-3.4/test_corebio/test_ssearch_io.pyt   <module>   s   

.N