§
    Ètºf¡I  ã                   óz   — d Z ddlmZmZ ddlZddlZddlZddlmZm	Z	 ddlm
Z
mZ ddlmZ  G d„ de¦  «        ZdS )	z
Tests for L{incremental}.
é    )ÚdivisionÚabsolute_importN)ÚgetVersionStringÚIncomparableVersions)ÚVersionÚ_inf)ÚTestCasec                   óŒ  — e Zd Zd„ Zd„ Z ej        ej        dk     d¦  «        d„ ¦   «         Z	d„ Z
d„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d„ Z"d„ Z#d „ Z$d!„ Z%d"„ Z&d#„ Z'd$„ Z(d%„ Z)d&„ Z*d'„ Z+d(„ Z,d)„ Z-d*„ Z.d+„ Z/d,„ Z0d-„ Z1d.„ Z2d/„ Z3d0„ Z4d1„ Z5d2„ Z6d3„ Z7d4„ Z8d5„ Z9d6„ Z:d7„ Z;d8S )9ÚVersionsTestsc           	      ó¦   — t          ddddddd¬¦  «        }|                      |                     ¦   «         |                     ¦   «         ¦  «         dS )zE
        The local version is the same as the short version.
        Údummyé   r   é   é   ©Úrelease_candidateÚpostÚdevN)r   ÚassertEqualÚlocalÚshort)ÚselfÚvas     ú]/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/incremental/tests/test_version.pyÚtest_localIsShortzVersionsTests.test_localIsShort   sL   € õ �W˜a  A¸ÀÈÐJÑJÔJˆØ×Ò˜Ÿš™œ R§X¢X¡Z¤ZÑ0Ô0Ð0Ð0Ð0ó    c           	      óÌ  — t          dddd¦  «        }t          dddd¦  «        }|                      ||k    ¦  «         |                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          dddd¦  «        k    ¦  «         |                      ||k    ¦  «         dS )zB
        Versions can be compared for equality and order.
        r   r   r   N©r   Ú
assertTrue©r   r   Úvbs      r   Útest_versionComparisonz$VersionsTests.test_versionComparison   óÙ   € õ �W˜a  AÑ&Ô&ˆÝ�W˜a  AÑ&Ô&ˆØ�Š˜˜RšÑ Ô Ð Ø�Š˜˜RšÑ Ô Ð Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜�g g¨q°!°QÑ7Ô7Ò7Ñ8Ô8Ð8Ø�Š˜˜bšÑ!Ô!Ð!Ð!Ð!r   )r   zComparisons do not raise on py2c                 ój  — t          dddd¦  «        }t          ¦   «         }|                      t          ¦  «        5  ||k     ddd¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  ||k      ddd¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  ||k     ddd¦  «         n# 1 swxY w Y   |                      t          ¦  «        5  ||k     ddd¦  «         n# 1 swxY w Y   |                      ||k    ¦  «         |                      ||k    ¦  «         dS )z=
        Versions can be compared with non-versions.
        r   r   r   N)r   ÚobjectÚassertRaisesÚ	TypeErrorÚassertFalser   )r   ÚvÚos      r   Ú test_versionComparisonNonVersionz.VersionsTests.test_versionComparisonNonVersion*   s$  € õ
 �G˜Q  1Ñ%Ô%ˆÝ‰HŒHˆà×Ò�yÑ)Ô)ð 	ð 	Ø�ŠEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�yÑ)Ô)ð 	ð 	Ø�ŠEˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�yÑ)Ô)ð 	ð 	Ø�ŠFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð ×Ò�yÑ)Ô)ð 	ð 	Ø�ŠFˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	×Ò˜˜ašÑ Ô Ð Ø�Š˜˜QšÑÔÐÐÐsG   »AÁAÁAÁ3BÂB
ÂB
Â+B>Â>CÃCÃ#C6Ã6C:Ã=C:c           	      óÌ  — t          dddd¦  «        }t          dddd¦  «        }|                      ||k    ¦  «         |                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          dddd¦  «        k    ¦  «         |                      ||k    ¦  «         dS )z=
        Version package names are case insensitive.
        r   r   r   ÚDuMmYNr   r    s      r   Ú%test_versionComparisonCaseInsensitivez3VersionsTests.test_versionComparisonCaseInsensitiveA   r#   r   c                 óÞ   — t          dddd¦  «        }t          dddd¦  «        }|                      ||k    ¦  «         |                      ||k     ¦  «         |                      ||¦  «         dS )zI
        NEXT releases are always larger than numbered releases.
        ÚwhateverÚNEXTr   r   N©r   r   r(   ÚassertNotEqualsr    s      r   Útest_comparingNEXTReleasesz(VersionsTests.test_comparingNEXTReleasesO   st   € õ �Z ¨¨AÑ.Ô.ˆÝ�Z  A qÑ)Ô)ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c           
      óØ  — |                       t          ¦  «        5  t          ddddddd¬¦  «         ddd¦  «         n# 1 swxY w Y   |                       t          ¦  «        5  t          ddddddd¬¦  «         ddd¦  «         n# 1 swxY w Y   |                       t          ¦  «        5  t          ddddddd¬¦  «         ddd¦  «         n# 1 swxY w Y   |                       t          ¦  «        5  t          ddddddd¬¦  «         ddd¦  «         n# 1 swxY w Y   |                       t          ¦  «        5  t          ddddddd¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zR
        NEXT releases must always have the rest of the numbers set to 0.
        r0   r1   r   r   r   N©r&   Ú
ValueErrorr   ©r   s    r   Útest_NEXTMustBeAlonez"VersionsTests.test_NEXTMustBeAloneY   s  € ð ×Ò�zÑ*Ô*ð 	Rð 	RÝ�J ¨¨1ÀÈÈqÐQÑQÔQÐQð	Rð 	Rð 	Rñ 	Rô 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Røøøð 	Rð 	Rð 	Rð 	Rð ×Ò�zÑ*Ô*ð 	Rð 	RÝ�J ¨¨1ÀÈÈqÐQÑQÔQÐQð	Rð 	Rð 	Rñ 	Rô 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Røøøð 	Rð 	Rð 	Rð 	Rð ×Ò�zÑ*Ô*ð 	Rð 	RÝ�J ¨¨1ÀÈÈqÐQÑQÔQÐQð	Rð 	Rð 	Rñ 	Rô 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Røøøð 	Rð 	Rð 	Rð 	Rð ×Ò�zÑ*Ô*ð 	Rð 	RÝ�J ¨¨1ÀÈÈqÐQÑQÔQÐQð	Rð 	Rð 	Rñ 	Rô 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Røøøð 	Rð 	Rð 	Rð 	Rð ×Ò�zÑ*Ô*ð 	Rð 	RÝ�J ¨¨1ÀÈÈqÐQÑQÔQÐQð	Rð 	Rð 	Rñ 	Rô 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Rð 	Røøøð 	Rð 	Rð 	Rð 	Rð 	Rð 	RsW   ›>¾AÁAÁ#BÂB
ÂB
Â+CÃCÃCÃ3DÄDÄDÄ;EÅE#Å&E#c                 óz   — t          dddd¦  «        }t          dddd¦  «        }|                      ||¦  «         dS )z8
        NEXT releases are equal to each other.
        r0   r1   r   N)r   ÚassertEqualsr    s      r   Útest_comparingNEXTReleasesEqualz-VersionsTests.test_comparingNEXTReleasesEquall   sF   € õ �Z ¨¨AÑ.Ô.ˆÝ�Z ¨¨AÑ.Ô.ˆØ×Ò˜"˜bÑ!Ô!Ð!Ð!Ð!r   c                 óâ   — t          ddddd¬¦  «        }t          dddd¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||¦  «         dS )zP
        Prereleases are always less than versions without prereleases.
        r0   r   r   ©Ú
prereleaseNr2   r    s      r   Ú%test_comparingPrereleasesWithReleasesz3VersionsTests.test_comparingPrereleasesWithReleasest   sy   € õ �Z  A q°QÐ7Ñ7Ô7ˆÝ�Z  A qÑ)Ô)ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c                 óî   — t          ddddd¬¦  «         |                      | j        g¦  «        }|                      t	          |¦  «        d¦  «         |                      |d         d         d¦  «         dS )z@
        Passing 'prerelease' to Version is deprecated.
        r0   r   r   r>   ÚmessagezvPassing prerelease to incremental.Version was deprecated in Incremental 16.9.0. Please pass release_candidate instead.N)r   ÚflushWarningsÚtest_prereleaseDeprecatedr   Úlen)r   Úwarningss     r   rD   z'VersionsTests.test_prereleaseDeprecated~   s†   € õ 	�
˜A˜q !°Ð2Ñ2Ô2Ð2Ø×%Ò% tÔ'EÐ&FÑGÔGˆØ×Ò�˜X™œ¨Ñ*Ô*Ð*Ø×ÒØ�QŒK˜	Ô"ðIñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óü   — t          ddddd¬¦  «        }|j         |                      | j        g¦  «        }|                      t          |¦  «        d¦  «         |                      |d         d         d¦  «         dS )zD
        Accessing 'prerelease' on a Version is deprecated.
        r0   r   r   ©r   rB   zuAccessing incremental.Version.prerelease was deprecated in Incremental 16.9.0. Use Version.release_candidate instead.N)r   r?   rC   Ú"test_prereleaseAttributeDeprecatedr   rE   )r   r   rF   s      r   rI   z0VersionsTests.test_prereleaseAttributeDeprecated‹   sŒ   € õ �Z  A q¸AÐ>Ñ>Ô>ˆØ
ŒˆØ×%Ò% tÔ'NÐ&OÑPÔPˆØ×Ò�˜X™œ¨Ñ*Ô*Ð*Ø×ÒØ�QŒK˜	Ô"ðIñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óâ   — t          ddddd¬¦  «        }t          dddd¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||¦  «         dS )zf
        Release Candidates are always less than versions without release
        candidates.
        r0   r   r   rH   Nr2   r    s      r   Ú+test_comparingReleaseCandidatesWithReleasesz9VersionsTests.test_comparingReleaseCandidatesWithReleases™   sy   € õ
 �Z  A q¸AÐ>Ñ>Ô>ˆÝ�Z  A qÑ)Ô)ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c                 óâ   — t          ddddd¬¦  «        }t          dddd¦  «        }|                      ||k    ¦  «         |                      ||k     ¦  «         |                      ||¦  «         dS )z_
        Post releases are always greater than versions without post
        releases.
        r0   r   r   ©r   Nr2   r    s      r   Ú&test_comparingPostReleasesWithReleasesz4VersionsTests.test_comparingPostReleasesWithReleases¤   sy   € õ
 �Z  A q¨qÐ1Ñ1Ô1ˆÝ�Z  A qÑ)Ô)ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c                 óæ   — t          ddddd¬¦  «        }t          ddddd¬¦  «        }|                      ||k    ¦  «         |                      ||k     ¦  «         |                      ||¦  «         dS )zg
        Dev releases are always greater than postreleases based on previous
        releases.
        r0   r   r   ©r   rM   Nr2   r    s      r   Ú1test_comparingDevReleasesWithPreviousPostReleasesz?VersionsTests.test_comparingDevReleasesWithPreviousPostReleases¯   s~   € õ
 �Z  A q¨aÐ0Ñ0Ô0ˆÝ�Z  A q¨qÐ1Ñ1Ô1ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c                 óâ   — t          ddddd¬¦  «        }t          dddd¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||¦  «         dS )zR
        Dev releases are always less than versions without dev releases.
        r0   r   r   rP   Nr2   r    s      r   Ú%test_comparingDevReleasesWithReleasesz3VersionsTests.test_comparingDevReleasesWithReleasesº   sy   € õ �Z  A q¨aÐ0Ñ0Ô0ˆÝ�Z  A qÑ)Ô)ˆØ�Š˜˜RšÑ Ô Ð Ø×Ò˜˜bšÑ!Ô!Ð!Ø×Ò˜R Ñ$Ô$Ð$Ð$Ð$r   c                 óº   — t          ddddd¬¦  «        }t          ddddd¬¦  «        }|                      ||k    ¦  «         |                      ||k    ¦  «         dS )z>
        Release Candidates are equal to prereleases.
        r0   r   r   rH   r>   N)r   r   r(   r    s      r   Útest_rcEqualsprezVersionsTests.test_rcEqualspreÄ   sh   € õ �Z  A q¸AÐ>Ñ>Ô>ˆÝ�Z  A q°QÐ7Ñ7Ô7ˆØ�Š˜˜bšÑ!Ô!Ð!Ø×Ò˜˜ršÑ"Ô"Ð"Ð"Ð"r   c           	      ó–   — |                       t          ¦  «        5  t          dddddd¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )zG
        Release Candidate and prerelease can't both be given.
        r0   r   r   )r?   r   Nr6   r8   s    r   Útest_rcOrpreButNotBothz$VersionsTests.test_rcOrpreButNotBothÍ   s«   € ð ×Ò�zÑ*Ô*ð 	Lð 	LÝ�J  1 a°AÈÐKÑKÔKÐKð	Lð 	Lð 	Lñ 	Lô 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Lð 	Løøøð 	Lð 	Lð 	Lð 	Lð 	Lð 	Ls   ›>¾AÁAc           
      óØ  — t          ddddd¬¦  «        }t          ddddd¬¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          ddddd¬¦  «        k    ¦  «         |                      ||k    ¦  «         dS )zf
        The value specified as the release candidate is used in version
        comparisons.
        r0   r   r   rH   r   Nr   r    s      r   Útest_comparingReleaseCandidatesz-VersionsTests.test_comparingReleaseCandidatesÔ   sè   € õ
 �Z  A q¸AÐ>Ñ>Ô>ˆÝ�Z  A q¸AÐ>Ñ>Ô>ˆØ�Š˜˜RšÑ Ô Ð Ø�Š˜˜RšÑ Ô Ð Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜�g j°!°Q¸ÈQÐOÑOÔOÒOÑPÔPÐPØ�Š˜˜bšÑ!Ô!Ð!Ð!Ð!r   c           
      óØ  — t          ddddd¬¦  «        }t          ddddd¬¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          ddddd¬¦  «        k    ¦  «         |                      ||k    ¦  «         dS )zX
        The value specified as the postrelease is used in version comparisons.
        r0   r   r   rM   r   Nr   r    s      r   Útest_comparingPostz VersionsTests.test_comparingPostã   sè   € õ �Z  A q¨qÐ1Ñ1Ô1ˆÝ�Z  A q¨qÐ1Ñ1Ô1ˆØ�Š˜˜RšÑ Ô Ð Ø�Š˜˜RšÑ Ô Ð Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜�g j°!°Q¸ÀÐBÑBÔBÒBÑCÔCÐCØ�Š˜˜bšÑ!Ô!Ð!Ð!Ð!r   c           
      óØ  — t          ddddd¬¦  «        }t          ddddd¬¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          ddddd¬¦  «        k    ¦  «         |                      ||k    ¦  «         dS )zX
        The value specified as the dev release is used in version comparisons.
        r0   r   r   rP   r   Nr   r    s      r   Útest_comparingDevzVersionsTests.test_comparingDevñ   sè   € õ �Z  A q¨aÐ0Ñ0Ô0ˆÝ�Z  A q¨aÐ0Ñ0Ô0ˆØ�Š˜˜RšÑ Ô Ð Ø�Š˜˜RšÑ Ô Ð Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜�g j°!°Q¸¸qÐAÑAÔAÒAÑBÔBÐBØ�Š˜˜bšÑ!Ô!Ð!Ð!Ð!r   c                 óÞ  — t          dddddd¬¦  «        }t          dddddd¬¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          dddddd¬¦  «        k    ¦  «         |                      ||k    ¦  «         dS ©zv
        The value specified as the dev release and release candidate is used in
        version comparisons.
        r0   r   r   ©r   r   r   Nr   r    s      r   Útest_comparingDevAndRCz$VersionsTests.test_comparingDevAndRCÿ   óï   € õ
 �Z  A q¸AÀ1ÐEÑEÔEˆÝ�Z  A q¸AÀ1ÐEÑEÔEˆØ�Š˜˜RšÑ Ô Ð Ø�Š˜˜RšÑ Ô Ð Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜˜bšÑ!Ô!Ð!Ø�Š˜�g j°!°Q¸ÈQÐTUÐVÑVÔVÒVÑWÔWÐWØ�Š˜˜bšÑ!Ô!Ð!Ð!Ð!r   c                 óÞ  — t          dddddd¬¦  «        }t          dddddd¬¦  «        }|                      ||k     ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      ||k    ¦  «         |                      |t          dddddd¬¦  «        k    ¦  «         |                      ||k    ¦  «         dS r_   r   r    s      r   Útest_comparingDevAndRCDifferentz-VersionsTests.test_comparingDevAndRCDifferent  rb   r   c                 ó¤  — |                       t          t          ¦  «         |                      t          t          k     ¦  «         |                      t          t          k    ¦  «         |                      t          t          k    ¦  «         |                      t          t          k    ¦  «         |                      t          t          k    ¦  «         dS )zR
        L{_inf} is equal to L{_inf}.

        This is a regression test.
        N)r   r   r(   r   r8   s    r   Útest_infComparisonSelfz$VersionsTests.test_infComparisonSelf  s”   € ð 	×Ò��tÑ$Ô$Ð$Ø×Ò�¥šÑ%Ô%Ð%Ø×Ò�¥šÑ%Ô%Ð%Ø�Š�¥šÑ%Ô%Ð%Ø�Š�¥šÑ%Ô%Ð%Ø×Ò�¥šÑ&Ô&Ð&Ð&Ð&r   c                 óŠ  — t          ¦   «         }|                      t          |k    ¦  «         |                      t          |k     ¦  «         |                      t          |k    ¦  «         |                      t          |k    ¦  «         |                      t          |k    ¦  «         |                      t          |k    ¦  «         dS )z;
        L{_inf} is greater than any other object.
        N)r%   r   r   r(   )r   r*   s     r   Útest_infComparisonz VersionsTests.test_infComparison*  s�   € õ ‰HŒHˆØ�Š�˜qšÑ!Ô!Ð!Ø×Ò� šÑ"Ô"Ð"Ø�Š� š	Ñ"Ô"Ð"Ø×Ò� šÑ#Ô#Ð#Ø�Š� š	Ñ"Ô"Ð"Ø×Ò� šÑ#Ô#Ð#Ð#Ð#r   c                 ó”   — |                       t          t          j        t	          dddd¦  «        t	          dddd¦  «        ¦  «         dS )zO
        The package names of the Version objects need to be the same.
        r   r   r   ÚdumymN)r&   r   ÚoperatorÚeqr   r8   s    r   Útest_disallowBuggyComparisonsz+VersionsTests.test_disallowBuggyComparisons6  sP   € ð 	×ÒÝ ÝŒKÝ�G˜Q  1Ñ%Ô%Ý�G˜Q  1Ñ%Ô%ñ		
ô 	
ð 	
ð 	
ð 	
r   c                 óŠ   — t          dddd¦  «        }d}|                      |                     |¦  «        t          ¦  «         dS )zh
        Comparing a L{Version} to some other object type results in
        C{NotImplemented}.
        r   r   r   )r   r   r   r   N)r   r   Ú__cmp__ÚNotImplementedr    s      r   Útest_notImplementedComparisonsz,VersionsTests.test_notImplementedComparisonsA  sB   € õ
 �W˜a  AÑ&Ô&ˆØˆØ×Ò˜Ÿš B™œ­Ñ8Ô8Ð8Ð8Ð8r   c           
      ól   — |                       t          t          dddd¦  «        ¦  «        d¦  «         dS )zu
        Calling C{repr} on a version returns a human-readable string
        representation of the version.
        r   r   r   r   zVersion('dummy', 1, 2, 3)N©r   Úreprr   r8   s    r   Ú	test_reprzVersionsTests.test_reprJ  s7   € ð
 	×Ò��g g¨q°!°QÑ7Ô7Ñ8Ô8Ð:UÑVÔVÐVÐVÐVr   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )	zÀ
        Calling C{repr} on a version with a prerelease returns a human-readable
        string representation of the version including the prerelease as a
        release candidate..
        r   r   r   r   é   r>   ú.Version('dummy', 1, 2, 3, release_candidate=4)Nrs   r8   s    r   Útest_reprWithPrereleasez%VersionsTests.test_reprWithPrereleaseQ  sG   € ð 	×ÒÝ•˜ ! Q¨°aÐ8Ñ8Ô8Ñ9Ô9Ø<ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )	zŸ
        Calling C{repr} on a version with a release candidate returns a
        human-readable string representation of the version including the rc.
        r   r   r   r   rw   rH   rx   Nrs   r8   s    r   Útest_reprWithReleaseCandidatez+VersionsTests.test_reprWithReleaseCandidate\  sG   € ð
 	×ÒÝ•˜ ! Q¨¸QÐ?Ñ?Ô?Ñ@Ô@Ø<ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )	zª
        Calling C{repr} on a version with a postrelease returns a
        human-readable string representation of the version including the
        postrelease.
        r   r   r   r   rw   rM   z!Version('dummy', 1, 2, 3, post=4)Nrs   r8   s    r   Útest_reprWithPostzVersionsTests.test_reprWithPostf  sG   € ð 	×ÒÝ•˜ ! Q¨°Ð2Ñ2Ô2Ñ3Ô3Ð5Xñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )	zª
        Calling C{repr} on a version with a dev release returns a
        human-readable string representation of the version including the dev
        release.
        r   r   r   r   rw   rP   z Version('dummy', 1, 2, 3, dev=4)Nrs   r8   s    r   Útest_reprWithDevzVersionsTests.test_reprWithDevp  sG   € ð 	×ÒÝ•˜ ! Q¨¨qÐ1Ñ1Ô1Ñ2Ô2Ð4Vñ	
ô 	
ð 	
ð 	
ð 	
r   c           
      ól   — |                       t          t          dddd¦  «        ¦  «        d¦  «         dS )zt
        Calling C{str} on a version returns a human-readable string
        representation of the version.
        r   r   r   r   z[dummy, version 1.2.3]N©r   Ústrr   r8   s    r   Útest_strzVersionsTests.test_strz  s7   € ð
 	×Ò��W W¨a°°AÑ6Ô6Ñ7Ô7Ð9QÑRÔRÐRÐRÐRr   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zw
        Calling C{str} on a version with a prerelease includes the prerelease
        as a release candidate.
        r   r   r   r>   ú[dummy, version 1.0.0rc1]Nr�   r8   s    r   Útest_strWithPrereleasez$VersionsTests.test_strWithPrerelease�  sG   € ð
 	×ÒÝ•˜  A q°QÐ7Ñ7Ô7Ñ8Ô8Ð:Uñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zn
        Calling C{str} on a version with a release candidate includes the
        release candidate.
        r   r   r   rH   r…   Nr�   r8   s    r   Útest_strWithReleaseCandidatez*VersionsTests.test_strWithReleaseCandidateŠ  sG   € ð
 	×ÒÝ•˜  A q¸AÐ>Ñ>Ô>Ñ?Ô?Ø'ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zb
        Calling C{str} on a version with a postrelease includes the
        postrelease.
        r   r   r   rM   z[dummy, version 1.0.0.post1]Nr�   r8   s    r   Útest_strWithPostzVersionsTests.test_strWithPost”  sG   € ð
 	×ÒÝ•˜  A q¨qÐ1Ñ1Ô1Ñ2Ô2Ð4Rñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ór   — |                       t          t          dddddd¬¦  «        ¦  «        d¦  «         dS )z’
        Calling C{str} on a version with a release candidate and dev release
        includes the release candidate and the dev release.
        r   r   r   r   r`   z[dummy, version 1.0.0rc1.dev2]Nr�   r8   s    r   Ú"test_strWithDevAndReleaseCandidatez0VersionsTests.test_strWithDevAndReleaseCandidate�  sI   € ð
 	×ÒÝ•˜  A q¸AÀ1ÐEÑEÔEÑFÔFØ,ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zb
        Calling C{str} on a version with a dev release includes the dev
        release.
        r   r   r   rP   z[dummy, version 1.0.0.dev1]Nr�   r8   s    r   Útest_strWithDevzVersionsTests.test_strWithDev§  sG   € ð
 	×ÒÝ•˜  A q¨aÐ0Ñ0Ô0Ñ1Ô1Ð3Pñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ór   — |                       t          t          dddddd¬¦  «        ¦  «        d¦  «         dS )z†
        Calling C{str} on a version with a postrelease and dev release
        includes the postrelease and the dev release.
        r   r   r   r   ©r   r   z![dummy, version 1.0.0.post1.dev2]Nr�   r8   s    r   Útest_strWithDevAndPostz$VersionsTests.test_strWithDevAndPost°  sI   € ð
 	×ÒÝ•˜  A q¨q°aÐ8Ñ8Ô8Ñ9Ô9Ø/ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óv   — |                       t          dddd¦  «                             ¦   «         d¦  «         d S )Nr   r   r   r   z1.2.3)r   r   r   r8   s    r   Ú	testShortzVersionsTests.testShortº  s8   € Ø×Ò� ¨!¨Q°Ñ2Ô2×8Ò8Ñ:Ô:¸GÑDÔDÐDÐDÐDr   c                 ól   — |                       dt          t          dddd¦  «        ¦  «        ¦  «         dS )zr
        L{getVersionString} returns a string with the package name and the
        short version number.
        zTwisted 8.0.0ÚTwistedé   r   N©r   r   r   r8   s    r   Útest_getVersionStringz#VersionsTests.test_getVersionString½  s9   € ð
 	×Ò˜Õ*:½7À9ÈaÐQRÐTUÑ;VÔ;VÑ*WÔ*WÑXÔXÐXÐXÐXr   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )ze
        L{getVersionString} includes the prerelease as a release candidate, if
        any.
        r0   r–   r   r   r>   úwhatever 8.0.0rc1Nr—   r8   s    r   Ú#test_getVersionStringWithPrereleasez1VersionsTests.test_getVersionStringWithPrereleaseÄ  sG   € ð
 	×ÒÝ�W Z°°A°qÀQÐGÑGÔGÑHÔHØñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zM
        L{getVersionString} includes the release candidate, if any.
        r0   r–   r   r   rH   rš   Nr—   r8   s    r   Ú)test_getVersionStringWithReleaseCandidatez7VersionsTests.test_getVersionStringWithReleaseCandidateÎ  sG   € ð 	×ÒÝ�W Z°°A°qÈAÐNÑNÔNÑOÔOØñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zG
        L{getVersionString} includes the postrelease, if any.
        r0   r–   r   r   rM   zwhatever 8.0.0.post1Nr—   r8   s    r   Útest_getVersionStringWithPostz+VersionsTests.test_getVersionStringWithPost×  sG   € ð 	×ÒÝ�W Z°°A°q¸qÐAÑAÔAÑBÔBØ"ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óp   — |                       t          t          ddddd¬¦  «        ¦  «        d¦  «         dS )zG
        L{getVersionString} includes the dev release, if any.
        r0   r–   r   r   rP   zwhatever 8.0.0.dev1Nr—   r8   s    r   Útest_getVersionStringWithDevz*VersionsTests.test_getVersionStringWithDevà  sG   € ð 	×ÒÝ�W Z°°A°q¸aÐ@Ñ@Ô@ÑAÔAÐCXñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ór   — |                       t          t          dddddd¬¦  «        ¦  «        d¦  «         dS )	ze
        L{getVersionString} includes the dev release and release candidate, if
        any.
        r0   r–   r   r   r   r`   zwhatever 8.0.0rc2.dev1Nr—   r8   s    r   Ú!test_getVersionStringWithDevAndRCz/VersionsTests.test_getVersionStringWithDevAndRCè  sJ   € ð
 	×ÒÝ�W Z°°A°qÈAÐSTÐUÑUÔUÑVÔVØ$ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 ór   — |                       t          t          dddddd¬¦  «        ¦  «        d¦  «         dS )	z_
        L{getVersionString} includes the dev release and postrelease, if
        any.
        r0   r–   r   r   r   r�   zwhatever 8.0.0.post2.dev1Nr—   r8   s    r   Ú#test_getVersionStringWithDevAndPostz1VersionsTests.test_getVersionStringWithDevAndPostò  sI   € ð
 	×ÒÝ�W Z°°A°q¸qÀaÐHÑHÔHÑIÔIØ'ñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óv   — |                       t          dddd¦  «                             ¦   «         d¦  «         dS )zX
        The C{base} method returns just "NEXT" when NEXT is the major version.
        Úfoor1   r   N©r   r   Úbaser8   s    r   Útest_baseWithNEXTzVersionsTests.test_baseWithNEXTü  s:   € ð 	×Ò� ¨°°1Ñ5Ô5×:Ò:Ñ<Ô<¸fÑEÔEÐEÐEÐEr   c                 óv   — |                       t          dddd¦  «                             ¦   «         d¦  «         dS )zY
        The C{base} method returns a very simple representation of the version.
        r§   r   r   z1.0.0Nr¨   r8   s    r   Ú	test_basezVersionsTests.test_base  s:   € ð 	×Ò� ¨¨1¨aÑ0Ô0×5Ò5Ñ7Ô7¸ÑAÔAÐAÐAÐAr   c           	      óz   — |                       t          ddddd¬¦  «                             ¦   «         d¦  «         dS )úP
        The base version includes 'rcX' for versions with prereleases.
        r§   r   r   r–   r>   ú1.0.0rc8Nr¨   r8   s    r   Útest_baseWithPrereleasez%VersionsTests.test_baseWithPrerelease  s?   € ð 	×Ò� ¨¨1¨a¸AÐ>Ñ>Ô>×CÒCÑEÔEÀzÑRÔRÐRÐRÐRr   c           	      óz   — |                       t          ddddd¬¦  «                             ¦   «         d¦  «         dS )zS
        The base version includes 'postX' for versions with postreleases.
        r§   r   r   r–   rM   z1.0.0.post8Nr¨   r8   s    r   Útest_baseWithPostzVersionsTests.test_baseWithPost  s?   € ð 	×Ò� ¨¨1¨a°aÐ8Ñ8Ô8×=Ò=Ñ?Ô?ÀÑOÔOÐOÐOÐOr   c           	      óz   — |                       t          ddddd¬¦  «                             ¦   «         d¦  «         dS )zR
        The base version includes 'devX' for versions with dev releases.
        r§   r   r   r–   rP   z
1.0.0.dev8Nr¨   r8   s    r   Útest_baseWithDevzVersionsTests.test_baseWithDev  s?   € ð 	×Ò� ¨¨1¨a°QÐ7Ñ7Ô7×<Ò<Ñ>Ô>ÀÑMÔMÐMÐMÐMr   c           	      óz   — |                       t          ddddd¬¦  «                             ¦   «         d¦  «         dS )r®   r§   r   r   r–   rH   r¯   Nr¨   r8   s    r   Útest_baseWithReleaseCandidatez+VersionsTests.test_baseWithReleaseCandidate  sJ   € ð 	×ÒÝ�E˜1˜a °aÐ8Ñ8Ô8×=Ò=Ñ?Ô?Àñ	
ô 	
ð 	
ð 	
ð 	
r   c           
      ó|   — |                       t          dddddd¬¦  «                             ¦   «         d¦  «         dS )	zu
        The base version includes 'rcXdevX' for versions with dev releases and
        a release candidate.
        r§   r   r   r   r–   r`   z1.0.0rc2.dev8Nr¨   r8   s    r   Útest_baseWithDevAndRCz#VersionsTests.test_baseWithDevAndRC"  sL   € ð
 	×ÒÝ�E˜1˜a °a¸QÐ?Ñ?Ô?×DÒDÑFÔFÈñ	
ô 	
ð 	
ð 	
ð 	
r   c           
      ó|   — |                       t          dddddd¬¦  «                             ¦   «         d¦  «         dS )	zq
        The base version includes 'postXdevX' for versions with dev releases
        and a postrelease.
        r§   r   r   r   r–   r�   z1.0.0.post2.dev8Nr¨   r8   s    r   Útest_baseWithDevAndPostz%VersionsTests.test_baseWithDevAndPost+  sM   € ð
 	×ÒÝ�E˜1˜a ¨°Ð2Ñ2Ô2×7Ò7Ñ9Ô9Ð;Mñ	
ô 	
ð 	
ð 	
ð 	
r   N)<Ú__name__Ú
__module__Ú__qualname__r   r"   ÚunittestÚskipIfÚsysÚversion_infor+   r.   r4   r9   r<   r@   rD   rI   rK   rN   rQ   rS   rU   rW   rY   r[   r]   ra   rd   rf   rh   rm   rq   ru   ry   r{   r}   r   rƒ   r†   rˆ   rŠ   rŒ   rŽ   r‘   r“   r˜   r›   r�   rŸ   r¡   r£   r¥   rª   r¬   r°   r²   r´   r¶   r¸   rº   © r   r   r   r      su  € € € € € ð1ð 1ð 1ð"ð "ð "ð €X„_�SÔ%¨Ò,Ð.OÑPÔPð ð  ñ QÔPð ð,"ð "ð "ð%ð %ð %ðRð Rð Rð&"ð "ð "ð%ð %ð %ð
ð 
ð 
ð
ð 
ð 
ð	%ð 	%ð 	%ð	%ð 	%ð 	%ð	%ð 	%ð 	%ð%ð %ð %ð#ð #ð #ðLð Lð Lð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ð"ð "ð "ð'ð 'ð 'ð
$ð 
$ð 
$ð	
ð 	
ð 	
ð9ð 9ð 9ðWð Wð Wð	
ð 	
ð 	
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ðSð Sð Sð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ðEð Eð EðYð Yð Yð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ðFð Fð FðBð Bð BðSð Sð SðPð Pð PðNð Nð Nð
ð 
ð 
ð
ð 
ð 
ð
ð 
ð 
ð 
ð 
r   r   )Ú__doc__Ú
__future__r   r   rÀ   r¾   rk   Úincrementalr   r   r   r   Útwisted.trial.unittestr	   r   rÂ   r   r   ú<module>rÇ      sÄ   ððð ð 1Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0à 
€
€
€
Ø €€€Ø €€€à >Ð >Ð >Ð >Ð >Ð >Ð >Ð >Ø %Ð %Ð %Ð %Ð %Ð %Ð %Ð %à +Ð +Ð +Ð +Ð +Ð +ð^
ð ^
ð ^
ð ^
ð ^
�Hñ ^
ô ^
ð ^
ð ^
ð ^
r   