
    -PhU                     h    d dl Zd dlZd dlZd dlZd dlZddlmZmZm	Z	  G d dej
                  ZdS )    N   )
write_filewrite_newer_file_parse_patternc                   ^     e Zd Z fdZ fdZd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zd Z xZS )TestTestUtilsc                 x    t                                                       t          j                    | _        d S N)supersetUptempfilemkdtemptemp_dirself	__class__s    Z/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/Cython/Tests/TestTestUtils.pyr   zTestTestUtils.setUp   s(     (**    c                     | j         r=t          j                            | j                   rt	          j        | j                    t                                                       d S r
   )r   ospathisdirshutilrmtreer   tearDownr   s    r   r   zTestTestUtils.tearDown   sR    = 	)RW]]4=99 	)M$-(((r   c                 L    t           j                            | j        |          S r
   )r   r   joinr   )r   filenames     r   
_test_pathzTestTestUtils._test_path   s    w||DM8444r   c                 ^   |                      d          }t          ||fi | t          j                            |          sJ t          |d          5 }|                                }d d d            n# 1 swxY w Y   ||k    s&J t          |          t          |          f            d S )Nabcfilerb)r   r   r   r   isfileopenreadrepr)r   contentexpectedkwargs	file_pathffounds          r   _test_write_filezTestTestUtils._test_write_file   s    OOI..	9g00000w~~i((((()T"" 	aFFHHE	 	 	 	 	 	 	 	 	 	 	 	 	 	 	   4>>4;;"?     s   A66A:=A:c                 \    d}|                      ||                    d                     d S )Nu	   abcüöäutf8)r-   encoder   texts     r   test_write_file_textz"TestTestUtils.test_write_file_text    s/    dDKK$7$788888r   c                     d}|                      |t          j        |                              d          d           d S )Nz|
        A horse is a horse,
        of course, of course,
        And no one can talk to a horse
        of course
        r/   T)dedent)r-   textwrapr5   r0   r1   s     r   test_write_file_dedentz$TestTestUtils.test_write_file_dedent$   sE     	dHOD$9$9$@$@$H$HQUVVVVVr   c                 2    |                      dd           d S )Ns   ab c)r-   r   s    r   test_write_file_bytesz#TestTestUtils.test_write_file_bytes-   s    h11111r   c                    |                      d          }|                      d          }t          |d           t          j                            |          sJ t          ||d           t          j                            |          sJ t          j                            |          t          j                            |          k    sJ d S )Nzabcfile1.txtzabcfile2.txtabcxyz)r   r   r   r   r#   r   getmtime)r   file_path_1file_path_2s      r   test_write_newer_filez#TestTestUtils.test_write_newer_file0   s    oon55oon55;&&&w~~k*****k5999w~~k*****w,,rw/?/?/L/LLLLLLLr   c                     |                      d          }t          |d           t          j                            |          }t          ||d           t          j                            |          |k    sJ d S )Nabcfile.txtr<   r=   )r   r   r   r   r>   r   )r   r*   mtimes      r   test_write_newer_file_samez(TestTestUtils.test_write_newer_file_same9   sq    OOM22	9e$$$  ++Iu555w	**U222222r   c                     |                      d          }t          j                            |          rJ t	          ||d           t          j                            |          sJ d S )NrC   r=   )r   r   r   existsr   r#   )r   r*   s     r   test_write_newer_file_freshz)TestTestUtils.test_write_newer_file_fresh@   s_    OOM22	7>>),,,,,Iu555w~~i(((((((r   c                 d   |                      t          d          d           |                      t          d          d           |                      t          d          d           |                      t          d          d           |                      t          d	          d           d S )
Npattern)NNrJ   z/start/:pattern)startNrJ   z:/end/  pattern)NendrJ   z/start/:/end/  pattern)rK   rL   rJ   z/start/:/end/pattern)assertEqualr   r9   s    r   test_parse_patternz TestTestUtils.test_parse_patternF   s    9%%#	
 	
 	
 	,--&	
 	
 	
 	,--$	
 	
 	
 	344'	
 	
 	
 	122'	
 	
 	
 	
 	
r   )__name__
__module____qualname__r   r   r   r-   r3   r7   r:   rA   rE   rH   rN   __classcell__)r   s   @r   r   r   
   s        + + + + +    
5 5 5@ @ @9 9 9W W W2 2 2M M M3 3 3) ) )
 
 
 
 
 
 
r   r   )os.pathr   unittestr   r6   r   	TestUtilsr   r   r   TestCaser    r   r   <module>rX      s         D D D D D D D D D DP
 P
 P
 P
 P
H% P
 P
 P
 P
 P
r   