
    DUf                     d    d Z ddlZddlZddlZddlmZ ddlmZmZmZm	Z	m
Z
 	 d Zd Zd Zd	 ZdS )
z
tests for contrib module
    N)Interval   )setup_moduleteardown_moduletestdirtest_tempdirunwriteablec                 $   d}|                                  D ]x}|                                }|                    d          rd}nd}t          |          dk    rD|                                }d                    |          |z   dz   }||z  }y|S )z
    Replaces spaces with tabs, removes spurious newlines, and lstrip()s each
    line. Makes it really easy to create BED files on the fly for testing and
    checking.
     	r   
)
splitlineslstripendswithlensplitjoin)xsiadd_tabs       Y/var/www/html/software/conda/lib/python3.11/site-packages/pybedtools/test/test_contrib.pyfixr   *   s     	A\\^^ 
 
HHJJ::d 	GGGq66Q;;GGIIIIaLL7"T)	QH    c                  ^   t          t          j        d          t          j        d                    } |                                  t          j        d          }| j        t          g d          dt          g d          dt          g           dt          g d          d	t          g d
          dik    sJ | j        |d         t          dg          |d         t          g d          |d	         t          g d          |d         t          g d          |d         t          g d          |d         t          g d          |d         t          g d          |d         t          g d          ik    sJ t          d           t          |          D ]\  }}t          ||           t          | j                                                  D ]8\  }}t          |           |D ]!}t          dt          |          z              "9| j        t          g           |d         gt          g d          |d         |d	         |d         gt          g d          |d         |d         gt          g d          |d         gt          g d
          |d         gik    sJ d S )Nzgdc.bedzgdc.gff)bedannotations)UTRexonmRNACDStRNAgener   )intronr#   r       )r#   r   r    r!      )r   r    r!   r"   r$   r#   r   .   )r"   r   r   r    r!   r#            )r"   r$   r   r    r!   r#   zuse these indexes for debuggingr   )
Classifier
pybedtoolsexample_filenameclassifyexample_bedtoolclass_counts	frozensetfeature_classessetprint	enumeratelistclass_featuresitemsstr)cr   r   fkvs         r   _classifierr?   ?   s   '	22/	::	 	 	A JJLLL

$Y
/
/C>@@@AA1,,,--q"q11122ACCCDDa     ASE

A33344A...//A...//ABBBCCA33344A...//AEEEFF	! 	 	 	 	 

+,,,#  1aQ%++--.. ! !1a 	! 	!A$Q-    	! "Ax,,,--AAA/G11122SVSV4D@@@AACF8CCCDDs1vh       r   c            	         t          j        dd          } t          j        dd          }t          j        dd          }t           j        j                            | |g          \  }}|t          d          k    sJ |t          d          k    sJ t           j        j                            | ||g          \  }}}|t          d          k    sJ |t          d          k    sJ |t          d          k    sJ 	 t           j                                         t          t           j        j                            | ||gg d	d
g dd                     n/# t          $ r" t          j                            d           Y nw xY wt          j                            d
          rt          j        d
           d S d S )NzD
    chr1 1 10      1
    chr1 20 30     2
    chr1 100 120   3
    Tfrom_stringzD
    chr1 2 7       4
    chr1 110 120   5
    chr1 200 210   6
    zD
    chr1 25 40     7
    chr1 190 205   8
    chr1 1000 1001 9
    z3
    chr1 1 10
    chr1 20 30
    chr1 100 120
    z0
    chr1 1 10
    chr1 100 120
    chr1 200 210z3
    chr1 20 30
    chr1 200 210
    chr1 1000 1001)r   yzzout.tiff)zeuler.d=TRUEzscaled=TRUEzfill=c("red","blue", "orange"))bedsnamesfigure_filenameadditional_argsrunz'R installation not found; skipping test)r-   BedToolcontrib
venn_makercleaned_intersectr   helpers_check_for_Rr5   
ValueErrorsysstderrwriteospathexistsunlink)r   rC   rD   x2y2x3y3z3s           r   test_cleaned_intersectr]   n   sr   	
 	 	 	A 		
 	 	 	A 		
 	 	 	A *<<aVDDFB
 	      	      #.@@!QKKJBB 	      	      	     D''))))44AY%oo *! ! !
  5 
 
	
 	
 	
 	
  D D D
BCCCCCD 
w~~j!! 
	* s   AE )F	F	c                      t          j        dd          } t          j        dd          }t          j        dd          }	 t           j        j                            | ||gdd           d S # t          $ r t          d           Y d S w xY w)	Nz 
    chr1 10 100
    chr2 10 100TrA   z
    chr1 12 80z
    chr2 20 40zt.tiff)rI   rG   zR not installed, skipping test)r-   rJ   rK   rL   rP   r5   )abr;   s      r   test_venn_maker_3way_1emptyra      s     		 		 	 	A 			 	 	A
 			 	 	A
0%001I4 	1 	
 	
 	
 	
 	
  0 0 0.//////0s   *A0 0BB)__doc__rQ   rT   r-   r   tfuncsr   r   r   r   r	   r   r?   r]   ra    r   r   <module>re      s     


 				           V U U U U U U U U U U U U U.  *, , ,^a a aH0 0 0 0 0r   