
    ;e                         d Z ddlZddlmZ ddlmZ ddlmZ  G d dej                  Zd Z	e
d	k    r e e	                       dS dS )
zTests for distutils.version.    N)LooseVersion)StrictVersion)run_unittestc                        e Zd Zd Zd Zd ZdS )VersionTestCasec                 :   t          d          }|                     |j        d           |                     |j        d           |                     t	          |          d           t          d          }|                     t	          |          d           d S )Nz1.2.3a1)         )ar	   z1.2.01.2)r   assertEqualversion
prereleasestr)selfr   s     3/usr/lib/python3.11/distutils/tests/test_version.pytest_prereleasezVersionTestCase.test_prerelease	   s    	**)444+X666Wy111((Wu-----    c                    dddt           fdddt           fddt           fd	d
t           fddddddddddt           ff}|D ]"\  }}}	 t          |                              t          |                    }n/# t           $ r" |t           u rY Mt          d|d|d          w xY w|                     ||d|d|d|d|           t          |                              |          }|                     ||d|d|d|d|           t          |                              t                                }|                     |t          d|d|d|           $d S )Nz1.5.1z1.5.2b21613.10a8.02r   r   3.4j
1996.07.123.2.pl03.1.1.62g611g)z0.9z2.2r   )1.2.1r   r	   )1.11.2.2r   )r   r$   r	   )r#   r%   r   )r%   r   r	   )r   r%   r   )z0.4.0z0.4r   1.13++5.5.kwcmp(, z) shouldn't raise ValueError) should be , got  ) should be NotImplemented, got )
ValueErrorr   _cmpAssertionErrorr   objectassertIsNotImplementedr   versionsv1v2wantedress         r   test_cmp_strictzVersionTestCase.test_cmp_strict   s   ,GZ0'\:6	:6E:.&'(%*'('x46  ' 	) 	)NBF8#B'',,]2->->?? 8 8 8Z''H(./1rr222*7 8 8 8	8 S&& bb"""fffcc34 4 4  ##((,,CS&& bb"""fffcc34 4 4  ##((22CMM#~~22rrr33() ) ) )%	) 	)s   /A44B 	B c                    d}|D ]\  }}}t          |                              t          |                    }|                     ||d|d|d|d|           t          |                              |          }|                     ||d|d|d|d|           t          |                              t                                }|                     |t
          d|d|d|           d S )N)r   )r   r   r	   r   )r   r   r   )r   r    r	   )r!   r"   r   )z0.960923z	2.2beta29r   )r&   r'   r   r(   r)   r*   r+   r,   )r   r.   r   r0   r1   r2   r3   s         r   test_cmpzVersionTestCase.test_cmp:   s6   . ' 	) 	)NBFr""''R(8(899CS&& bb"""fffcc34 4 4 r""''++CS&& bb"""fffcc34 4 4 r""''11CMM#~~22rrr33() ) ) )	) 	)r   N)__name__
__module____qualname__r   r9   r;    r   r   r   r      sB        . . .%) %) %)P) ) ) ) )r   r   c                  X    t          j                                        t                    S )N)unittest
TestLoaderloadTestsFromTestCaser   r?   r   r   
test_suiterD   S   s      66GGGr   __main__)__doc__rA   distutils.versionr   r   test.supportr   TestCaser   rD   r<   r?   r   r   <module>rJ      s    " "  * * * * * * + + + + + + % % % % % %J) J) J) J) J)h' J) J) J)XH H H zL r   