Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 3.135.187.121
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_uuid.cpython-310.pyc
o

ab��@s8ddlZddlmZddlmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddlm
Z
ejddgd�Zejddgd�Zd	d
�Zdd�ZGd
d�d�ZGdd�deej�Ze�ed�Gdd�deej��ZGdd�d�ZGdd�deej�Ze�ed�Gdd�deej��Zedkr�e��dSdS)�N)�support)�
import_helper)�mock�uuid�_uuid)Zblocked)ZfreshcCszt|�WdSYdS)NTF)�
__import__)�name�r	�7/usr/local/python-3.10/lib/python3.10/test/test_uuid.py�
importables
rcs�fdd�}|S)Ncst�����S�N)�io�BytesIO�encode)�command�args��datar	r
�get_command_stdout�z3mock_get_command_stdout.<locals>.get_command_stdoutr	)rrr	rr
�mock_get_command_stdoutsrc@s&eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
e�dd�e
�ejdkd�dd���Zejdd��Ze
�ejdkd�dd��Ze
�ejdkd�dd��Ze
�ejdkd�dd��Ze
�ejdkd�dd��Zd d!�Zd"d#�Zd$d%�Zd&d'�Ze
�eed(�d)�d*d+��Zd,d-�ZdS).�BaseTestUUIDNcCst|j}g}dddddddddd|jjdfdd	d
ddd
dddd|jjdfdddddddddd|jjdfdddd d!d"d#d$d%d&|jjdfd'd(d)d*d+d,d-d.d/d0|jjd1fd2d3d4d5d6d7d8d9d:d0|jjd1fd;d<d=d>d?d@dAdBdCd0|jjd1fdDdEdFdGdHdIdJdKdLd0|jjd1fdMdNdOdPdQdRdSdTdUdV|jjd1fdWdXdYdZd[d\d]d^d_d`|jjdfdadbdcdddedfdgdhdidj|jjdkfdldmdndodpdqdrdsdtdu|jjd1fdvdwdxdydzd{d|d}d~d|jjdfd�d�d�d�d�d�d�d�d�d�|jjdffD]�\}}}}}}}	}
}}}
}g}|j�|�|j�|�|j�|�|jj|d��|jj|d��|jj|d��|jj|	d��|j�|
�fD]�}|t|�|�|t|�|	�||j|�||j	|�||j
|�||j|d�||j|d1�||j
|d��||j|d�||j|dk�||j|d��||j|�||j|	�||j|
�||j|�||j|�||j|
�||j|�|�|��q|D]}|D]}|||��q��q�|t|j�tj�|t|j	�tj�|�|�q�tt|��D][}tt|��D]Q}|||k||||k�|||k||||k�|||k||||k�|||k||||k�|||k||||k�|||k||||k��qѐq�|dd�}|��|��|||�dS)�Nz$00000000-0000-0000-0000-000000000000z&{00000000-0000-0000-0000-000000000000}� 00000000000000000000000000000000��rrrrrrrz-urn:uuid:00000000-0000-0000-0000-000000000000z$00010203-0405-0607-0809-0a0b0c0d0e0fz&{00010203-0405-0607-0809-0a0b0c0d0e0f}Z 000102030405060708090a0b0c0d0e0fs	

s	

)iii��	l,(l,(H@p`���z-urn:uuid:00010203-0405-0607-0809-0a0b0c0d0e0fl80i	z$02d9e6d5-9467-382e-8f9b-9300a64ac3cdz&{02d9e6d5-9467-382e-8f9b-9300a64ac3cd}Z 02d9e6d59467382e8f9b9300a64ac3cds��Քg8.����J��s���g�.8����J��)i���ig�i.8��l�C�LLl	�C�LL�|��e5�lz-urn:uuid:02d9e6d5-9467-382e-8f9b-9300a64ac3cdl�f��QtAi��z$12345678-1234-5678-1234-567812345678z&{12345678-1234-5678-1234-567812345678}Z 12345678123456781234567812345678s4Vx4Vx4Vx4VxsxV44xV4Vx4Vx)ixV4�4ixV��4lxVh$�Yl	xVh$�Y��g�F+z-urn:uuid:12345678-1234-5678-1234-567812345678lxVh$�H�3r z$6ba7b810-9dad-11d1-80b4-00c04fd430c8z&{6ba7b810-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8109dad11d180b400c04fd430c8sk����р��O�0�s��k������O�0�)i��k魝������0�l	�0���5'�Skz-urn:uuid:6ba7b810-9dad-11d1-80b4-00c04fd430c8l8OW�v�r&�z$6ba7b811-9dad-11d1-80b4-00c04fd430c8z&{6ba7b811-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8119dad11d180b400c04fd430c8sk����р��O�0�s��k������O�0�)i��kr#r$r%r&r'l	�0���5g�Skz-urn:uuid:6ba7b811-9dad-11d1-80b4-00c04fd430c8l8OW�v�z$6ba7b812-9dad-11d1-80b4-00c04fd430c8z&{6ba7b812-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8129dad11d180b400c04fd430c8sk����р��O�0�s��k������O�0�)i��kr#r$r%r&r'l	�0���5��Skz-urn:uuid:6ba7b812-9dad-11d1-80b4-00c04fd430c8l8OW�v�z$6ba7b814-9dad-11d1-80b4-00c04fd430c8z&{6ba7b814-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8149dad11d180b400c04fd430c8sk����р��O�0�s��k������O�0�)i��kr#r$r%r&r'l	�0���5'�Skz-urn:uuid:6ba7b814-9dad-11d1-80b4-00c04fd430c8l8OW�v�z$7d444840-9dc0-11d1-b245-5ffdce74fad2z&{7d444840-9dc0-11d1-b245-5ffdce74fad2}Z 7d4448409dc011d1b2455ffdce74fad2s}DH@��ѲE_��t��s@HD}����E_��t��)i@HD}i��r$��El�z��l	�z��*8'$"}z-urn:uuid:7d444840-9dc0-11d1-b245-5ffdce74fad2l@H�zw�iE2z$e902893a-9d22-3c7e-a7b8-d6e313b71d9fz&{e902893a-9d22-3c7e-a7b8-d6e313b71d9f}Z e902893a9d223c7ea7b8d6e313b71d9fs��:�"<~������s:��"�~<������)l:	Ri"�i~<��l�n'�[l	�n'�[�=�GG$�ND�z-urn:uuid:e902893a-9d22-3c7e-a7b8-d6e313b71d9fl:	R�t�ci�'z$eb424026-6f54-4ef8-a4d0-bb658a1fc6cfz&{eb424026-6f54-4ef8-a4d0-bb658a1fc6cf}Z eb4240266f544ef8a4d0bb658a1fc6cfs�B@&oTN��лe���s&@B�To�N�лe���)l&@�ViToi�N���l�F?�ml	�F?�m�&�o�j�	 !�z-urn:uuid:eb424026-6f54-4ef8-a4d0-bb658a1fc6cfl&@�VS=�wi�$�z$f81d4fae-7dec-11d0-a765-00a0c91e6bf6z&{f81d4fae-7dec-11d0-a765-00a0c91e6bf6}Z f81d4fae7dec11d0a76500a0c91e6bf6s�O�}�Чe��k�s�O��}��e��k�)l�O:pi�}i�r+�el�k<�l	�k<�(;
�=�k��z-urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6l�O:p�w�ie'z$fffefdfc-fffe-fffe-fffe-fffefdfcfbfaz&{fffefdfc-fffe-fffe-fffe-fffefdfcfbfa}Z fffefdfcfffefffefffefffefdfcfbfas����������������s����������������)l�}��r1��l�{�{�l	�{�{����?~�z-urn:uuid:fffefdfc-fffe-fffe-fffe-fffefdfcfbfal�}���i�?z$ffffffff-ffff-ffff-ffff-ffffffffffffz&{ffffffff-ffff-ffff-ffff-ffffffffffff}Z ffffffffffffffffffffffffffffffffs����������������)l���r4r2r2����l	���������z-urn:uuid:ffffffff-ffff-ffff-ffff-ffffffffffffl�����?��bytes��bytes_le��fields��int��)�assertEqualrZRESERVED_NCS�RFC_4122ZRESERVED_FUTURE�UUID�strr>r8r:r<�time_low�time_mid�time_hi_version�clock_seq_hi_variant�
clock_seq_low�node�hex�urn�time�	clock_seq�variant�version�append�type�builtins�range�len�reverse�sort)�self�equalZ	ascending�stringZcurlyrKr8r:r<ZintegerrLrMrNrOrPZequivalents�u�v�i�jZresortedr	r	r
�	test_UUID"s~�	�	�	�	�	�	�	�	�	�	�	�	�	���
���	zBaseTestUUID.test_UUIDc	s~�fdd�}�fdd�}|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fd	d��|�fd
d��|�fdd��|�fdd��|�fd
d��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fdd��|�fd d��|�fd!d��d"\�����j����jj�d#��jj�d$��jj�d%��jj�d&��jj�d'�|�fd(d��|���fd)d��|���fd*d��|����fd+d��|�����fd,d��gd-�fgfD]\}gd.�fgfD]Q}gd/�fgfD]F}gd0�fgfD];}gd1�fgfD]0}t|||||��t��d2k�r�|���fd3d��t��d4k�r�|��fd5d���q��q��qw�qn�qe�j����|��fd6d��|��fd7d��|��fd8d��|��fd9d��|��fd:d��|�fd;d��|�fd<d��|�fd=d��|�fd>d��|�fd?d��|�fd@d��|�fdAd��|�fdBd��|�fdCd��dS)DNc���t|�Sr)�assertRaises�
ValueError��f�rXr	r
�<lambda>��z.BaseTestUUID.test_exceptions.<locals>.<lambda>cr`r)ra�	TypeErrorrcrer	r
rf�rgc��j�d�S)N��rrCr	rer	r
rf�rgcri)N�abcrkr	rer	r
rf�rgcri)NZ1234567812345678123456781234567rkr	rer	r
rf�rgcri)NZ!123456781234567812345678123456789rkr	rer	r
rf�rgcri)NZ 123456781234567812345678z2345678rkr	rer	r
rf�rgc��jjdd�S)Nrlr7rkr	rer	r
rf��crm)N�r7rkr	rer	r
rf�rncrm)N�r7rkr	rer	r
rf�rncrm)Nrlr9rkr	rer	r
rf�rncrm)Nror9rkr	rer	r
rf�rncrm)Nrpr9rkr	rer	r
rf�rncrm)N)r(r;rkr	rer	r
rf�rncrm)N)r(r?rr/r@r;rkr	rer	r
rf�rncrm)N)r(r?rr/r@��r;rkr	rer	r
rf�rncrm)N)���rrrrrr;rkr	rer	r
rf�rncrm)N)lrrrrrr;rkr	rer	r
rf�rncrm)N)rrsrrrrr;rkr	rer	r
rf�rncrm)N)r�rrrrr;rkr	rer	r
rf�rncrm)N)rrrsrrrr;rkr	rer	r
rf�rncrm)N)rrrtrrrr;rkr	rer	r
rf�rncrm)N)rrrrsrrr;rkr	rer	r
rf�rncrm)N)rrr�rrr;rkr	rer	r
rf�rncrm)N)rrrrrsrr;rkr	rer	r
rf�rncrm)N)rrrrrurr;rkr	rer	r
rfrncrm)N)rrrrrrsr;rkr	rer	r
rfrncrm)N)rrrrr�r;rkr	rer	r
rfrnc��jjddd�S)Nrr�rPrkr	rer	r
rf�crw)Nrrqrxrkr	rer	r
rfrycrm)Nrsr=rkr	rer	r
rf	rncs�jjdd>d�S)Nr(r%r=rkr	rer	r
rf
�)rrrr)rKr7r9r;r=cs
�j��Srrkr	rer	r
rf�
cs�j����Srrkr	��b�hrXr	r
rfrncs�j�����Srrkr	r|r	r
rfrycs�j������Srrkr	)r}rdr~rXr	r
rfrzcs�j�������Srrkr	)r}rdr~r]rXr	r
rf�rKr8r:r>r<rcs�jj�fi���Srrkr	)rr~rXr	r
rf$rr(cs�jjdi���S)Nr	rkr	)rrXr	r
rf&rzc�t�d��S)NrK��setattrr	)r~r[r	r
rf*rgcr�)Nr8r�r	�r}r[r	r
rf+rgcr�)Nr:r�r	r�r	r
rf,rgcr�)Nr<r�r	)rdr[r	r
rf-rgcr�)Nr>r�r	)r]r[r	r
rf.rgc�t�dd�S)NrErr�r	�r[r	r
rf/rgcr�)NrFrr�r	r�r	r
rf0rgcr��NrGrr�r	r�r	r
rf1rgcr�r�r�r	r�r	r
rf2rgcr�)NrHrr�r	r�r	r
rf3rgcr�)NrIrr�r	r�r	r
rf4rgcr�)NrJrr�r	r�r	r
rf5rgcs
�t�kSr��objectr	r�r	r
rf8r{cs
�t�kSrr�r	r�r	r
rf9r{)rrC�dictrU)rXZbadvalueZbadtypeZhhZbbZbble�iiZffr	)rr}rdr~r]rXr[r
�test_exceptions�s������zBaseTestUUID.test_exceptionscCsR|j��}|�d|kodknd|�|j��}|�||d||f�dS)Nrrv�%012xz%012x != %012x)r�getnode�
assertTruerA)rXZnode1�node2r	r	r
�test_getnode;s
$
zBaseTestUUID.test_getnodecs��fdd�}t�tjd�j��T�jjD]F}�jjd|d�}|t�|�|�|t�|�|�t	t
jd�D]$}�j|d��|t
�
t
�||��|�Wd�n1sTwYq5qWd�dS1sfwYdS)Nc� ��||���|j|j�dSr�rA�is_safe��actual�expectedrer	r
�checkD�z1BaseTestUUID.test_pickle_roundtrip.<locals>.checkr� d82579ce6642a0de7ddf490a7aec7aa5�r�r()�protocol)r�	swap_item�sys�modulesr�SafeUUIDrC�copy�deepcopyrT�pickle�HIGHEST_PROTOCOL�subTest�loads�dumps)rXr�r�r[�protor	rer
�test_pickle_roundtripCs �����"�z"BaseTestUUID.test_pickle_roundtripc	s��fdd�}gd�}gd�}gd�}�j�d�}�jjd�jjjd�}�jjd�jjjd�}t�tjd�j��0|D]
}|t	�
|�|�q:|D]
}|t	�
|�|�qG|D]
}|t	�
|�|�qTWd�dS1sjwYdS)	Ncr�rr�r�rer	r
r�Sr�zBBaseTestUUID.test_unpickle_previous_python_versions.<locals>.check)
srccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR(dS'int'
L287307832597519156748809049798316161701L
sb.soccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR}UintL287307832597519156748809049798316161701L
sb.s+�cuuid
UUID
)�}Uint��z�z
I�}ޠBf�y%�sb.spccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR(dVint
L287307832597519156748809049798316161701L
sb.srccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR}XintL287307832597519156748809049798316161701L
sb.s.�cuuid
UUID
)�}Xint��z�z
I�}ޠBf�y%�sb.s.�cuuid
UUID
)�}Xint��z�z
I�}ޠBf�y%�sb.s6��+�uuid�UUID�)�}�int��z�z
I�}ޠBf�y%�sb.s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR(dVint
L287307832597519156748809049798316161701L
sVis_safe
cuuid
SafeUUID
(NtRsb.s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR}(XintL287307832597519156748809049798316161701L
Xis_safecuuid
SafeUUID
(NtRub.sM�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
N�Rub.sM�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
N�Rub.sQ��F�uuid��UUID�)�}(�int��z�z
I�}ޠBf�y%��is_safeh�SafeUUID�N�Rub.)s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR(dVint
L287307832597519156748809049798316161701L
sVis_safe
cuuid
SafeUUID
(I0
tRsb.s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR}(XintL287307832597519156748809049798316161701L
Xis_safecuuid
SafeUUID
(KtRub.sN�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
K�Rub.sN�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
K�Rub.sR��G�uuid��UUID�)�}(�int��z�z
I�}ޠBf�y%��is_safeh�SafeUUID�K�Rub.)s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR(dVint
L287307832597519156748809049798316161701L
sVis_safe
cuuid
SafeUUID
(I-1
tRsb.s�ccopy_reg
_reconstructor
(cuuid
UUID
c__builtin__
object
NtR}(XintL287307832597519156748809049798316161701L
Xis_safecuuid
SafeUUID
(J����tRub.sQ�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
J�����Rub.sQ�cuuid
UUID
)�}(Xint��z�z
I�}ޠBf�y%�Xis_safecuuid
SafeUUID
J�����Rub.sU��J�uuid��UUID�)�}(�int��z�z
I�}ޠBf�y%��is_safeh�SafeUUID�J�����Rub.r�r�r)rrCr��safe�unsaferr�r�r�r�r�)	rXr�Z
pickled_uuidsZpickled_uuids_safeZpickled_uuids_unsafer[Zu_safeZu_unsafeZpickledr	rer
�&test_unpickle_previous_python_versionsRs(1���"�z3BaseTestUUID.test_unpickle_previous_python_versionscCs�dd�}tjj|jd|gd��
|j��}Wd�n1swY|�d|ko/dknd|�z
|jj|d�WdStyO|�d�YdSw)	NcSsdS)Nrvr	r	r	r	r
rf�sz/BaseTestUUID.test_uuid1_eui64.<locals>.<lambda>)Z_node�_GETTERSrrvr�)rJz"uuid1 was given an invalid node ID)	r�patch�multiplerr�r��uuid1rbZfail)rXZtoo_large_getterrJr	r	r
�test_uuid1_eui64�s��$�zBaseTestUUID.test_uuid1_eui64cs��j}�fdd�td�D�D]#}||j�jj�||jd���|j�jjj	�jjj
�jjjh�qi}�fdd�td�D�D]}d||<q?|t|�
��d��j�d�}||jd��j�d�}||jd��j�d	�}||jd	��j�dd�}||jd�||jd
@d>|jBd��j�dd�}||jd�||jd
@d>|jBd��j�dd
�}||jd�||jd
@d>|jBd
�dS)Nc�g|]}�j���qSr	�rr���.0r]rer	r
�
<listcomp>��z+BaseTestUUID.test_uuid1.<locals>.<listcomp>�
r(cr�r	r�r�rer	r
r��r���rl��,�Hr5�?rr r6)rArTrOrrBrPZassertInr�r�r�r��unknownrU�keysr�rJrHrI�rXrYr[Zuuidsr	rer
�
test_uuid1�sF�
����zBaseTestUUID.test_uuid1r�r@�posix�POSIX-only testcCs4|jjs	|�d�|j��}|�|j|jjj�dS)Nz#requires uuid_generate_time_safe(3))r�_has_uuid_generate_time_safe�skipTestr��assertNotEqualr�r�r��rXr[r	r	r
�test_uuid1_safe
s

zBaseTestUUID.test_uuid1_safec#s��tjdkr|�d�|j��|jj��dur|�d�tj�|jd��fdd���dVWd�dS1s:wYdS)zQ
        Mock uuid._generate_time_safe() to return a given *safe_value*.
        r�r�Nzneed uuid._generate_time_safe�_generate_time_safecs��d�fS�Nrr	r	�rd�
safe_valuer	r
rf"rnz6BaseTestUUID.mock_generate_time_safe.<locals>.<lambda>)	�osrr�rZ_load_system_functionsr�rr�r�)rXr�r	r�r
�mock_generate_time_safes�



�"�z$BaseTestUUID.mock_generate_time_safecCsN|�d��|j��}|�|j|jjj�Wd�dS1s wYdSr�r�rr�rAr�r�r�r�r	r	r
�test_uuid1_unknown%s
"�zBaseTestUUID.test_uuid1_unknowncC�N|�d��|j��}|�|j|jjj�Wd�dS1s wYdSr�)r�rr�rAr�r�r�r�r	r	r
�test_uuid1_is_safe-�
"�zBaseTestUUID.test_uuid1_is_safecCr�)Nrs)r�rr�rAr�r�r�r�r	r	r
�test_uuid1_is_unsafe3r�z!BaseTestUUID.test_uuid1_is_unsafecCr�)Nrr�r�r	r	r
�test_uuid1_bogus_return_value9r�z*BaseTestUUID.test_uuid1_bogus_return_valuec
CsFtj�|jdd���tj�|jdd��xtj�|jdd��_tjj|jddd��Etjdd	d��.tjd
dd��|j��}|�||j�d��Wd�n1sRwYWd�n1sawYWd�n1spwYWd�n1swYWd�n1s�wYWd�n1s�wYtj�|jdd��mtj�|jdd��Jtj�|jdd��1tjdd	d��|jjddd
�}|�||j�d��Wd�n1s�wYWd�n1s�wYWd�n1�swYWd�dSWd�dS1�swYdS)Nr�Fr�Z_last_timestampr�lZ�Y�S)Zreturn_valueztime.time_nsl3E5<��+zrandom.getrandbitsi�z$a7a55b92-01fc-11e9-94c5-54e1acf6da7f)rJrN)rr�r�rr�rArCr�r	r	r
�test_uuid1_time?sL�����
������	������TzBaseTestUUID.test_uuid1_timecC�|j}|j�|jjd�df|j�|jjd�df|j�|jjd�df|j�|jjd�dffD]"\}}||j|jj�||j	d	�|||j�
|��|t|�|�q-dS)
N�
python.orgz$6fa459ea-ee8a-3ca4-894e-db77e160355e�http://python.org/z$9fe8e8c4-aaa8-32a9-a55c-4535a88b748d�1.3.6.1z$dd1a1cef-13d5-368a-ad82-eca71acd4cd1�c=caz$658d3002-db6b-3040-a1d1-8ddd7d189a4dr)rArZuuid3�
NAMESPACE_DNS�
NAMESPACE_URL�
NAMESPACE_OID�NAMESPACE_X500rOrBrPrCrD�rXrYr[r\r	r	r
�
test_uuid3P�&�����	�zBaseTestUUID.test_uuid3cs|�j}�fdd�td�D�D]}||j�jj�||jd�qi}�fdd�td�D�D]}d||<q,|t|���d�dS)Ncr�r	�r�uuid4r�rer	r
r�fr�z+BaseTestUUID.test_uuid4.<locals>.<listcomp>r�r/cr�r	r�r�rer	r
r�lr�r�r()rArTrOrrBrPrUr�r�r	rer
�
test_uuid4bs
zBaseTestUUID.test_uuid4cCr�)
Nr�z$886313e1-3b8a-5372-9b90-0c9aee199e5dr�z$4c565f0d-3f5a-5890-b41b-20cf47701c5er�z$1447fa61-5277-5fef-a9b3-fbc6e44f4af3r�z$cc957dd1-a972-5349-98cd-874190002798r@)rArZuuid5r�r�r�r�rOrBrPrCrDr�r	r	r
�
test_uuid5pr�zBaseTestUUID.test_uuid5�forkzneed os.forkcCs�t��}t��}|dkr+t�|d�|j��}t�|d|j�d��t�	d�dSt�|d�|�
tj|d�|j��j}tj|dd�t�
|dd��d�}|�||�dS)Nrr(zlatin-1)�exitcode�d)r��piper��closerr��writerKr�_exitZ
addCleanuprZwait_process�read�decoder�)rX�fds�pid�valueZparent_valueZchild_valuer	r	r
�
testIssue8621�s
zBaseTestUUID.testIssue8621cCs&|j��}t�|�}|�||��dSr)rr��weakref�refZassertIs)rXZstrongZweakr	r	r
�test_uuid_weakref�s

zBaseTestUUID.test_uuid_weakref) �__name__�
__module__�__qualname__rr_r�r�r�r�r�r�rZrequires_mac_ver�unittest�
skipUnlessr�rr��
contextlib�contextmanagerr�r�r�r�r�r�r�r�r��hasattrr�r�r	r	r	r
rs<;_y
(






rc@�eZdZeZdS)�TestUUIDWithoutExtModuleN�r�r�r��py_uuidrr	r	r	r
r���r�zrequires the C _uuid modulec@r�)�TestUUIDWithExtModuleN)r�r�r��c_uuidrr	r	r	r
r�src@s�eZdZeZdd�Zdd�Zdd�Zdd�Zd	d
�Z	dd�Z
d!dd�Ze�
ejejvd�dd��Ze�
ejejvd�dd��Ze�
ejejvd�dd��Ze�
ejejvd�dd��Ze�
ejejvd�dd��Zdd �Zd
S)"�BaseTestInternalsc
Cs�|s
tjj|jddd�}n
tjj|jddd�}|�M|sd}nd}|D]\}}|�|j�|�|�q#dD])}|r>|�dd�}|j|d	��|�|j�|��Wd�n1sXwYq4Wd�dS1siwYdS)
N�:F)�
_MAC_DELIM�_MAC_OMITS_LEADING_ZEROES�.T))s52:54:00:9d:0e:67�g:PI)s12:34:56:78:90:ab���,�H))sfe.ad.c.1.23.4�#�z)�sfe80::5054:ff:fe9s123:2:3:4:5:6:7:8s52:54:00:9d::67s052:54:00:9d:0e52:54:00:9d:0e:6x52-54-00-9d-0e-67)�mac)	rr�r�rrAZ
_parse_mac�replacer�ZassertIsNone)rXZaixr�Ztestsrr�r	r	r
�check_parse_mac�s0
�
����"�z!BaseTestInternals.check_parse_maccC�|�d�dS)NF�r
rer	r	r
�test_parse_mac�rz BaseTestInternals.test_parse_maccCr)NTrrer	r	r
�test_parse_mac_aix�rz$BaseTestInternals.test_parse_mac_aixcC�`d}tjj|jddt|�d��|jjdddd�}Wd�n1s#wY|�|d	�dS)
Na�Name  Mtu   Network     Address           Ipkts Ierrs    Opkts Oerrs  Coll
en0   1500  link#2      fe.ad.c.1.23.4   1714807956     0 711348489     0     0
                        01:00:5e:00:00:01
en0   1500  192.168.129 x071             1714807956     0 711348489     0     0
                        224.0.0.1
en0   1500  192.168.90  x071             1714807956     0 711348489     0     0
                        224.0.0.1
rT�rrZ_get_command_stdout�netstat�-ian�Address�rr�headingr	�rr�r�rrZ_find_mac_under_headingrA�rXrrr	r	r
�test_find_under_heading�s
���
z)BaseTestInternals.test_find_under_headingcCr)
NatName    Mtu Network       Address              Ipkts Ierrs Idrop    Opkts Oerrs  Coll
vtnet  1500 <Link#1>      52:54:00:9d:0e:67    10017     0     0     8174     0     0
vtnet     - fe80::%vtnet0 fe80::5054:ff:fe9        0     -     -        4     -     -
vtnet     - 192.168.122.0 192.168.122.45        8844     -     -     8171     -     -
lo0   16384 <Link#2>      lo0                 260148     0     0   260148     0     0
lo0       - ::1/128       ::1                    193     -     -      193     -     -
                          ff01::1%lo0
                          ff02::2:2eb7:74fa
                          ff02::2:ff2e:b774
                          ff02::1%lo0
                          ff02::1:ff00:1%lo
lo0       - fe80::%lo0/64 fe80::1%lo0              0     -     -        0     -     -
                          ff01::1%lo0
                          ff02::2:2eb7:74fa
                          ff02::2:ff2e:b774
                          ff02::1%lo0
                          ff02::1:ff00:1%lo
lo0       - 127.0.0.0/8   127.0.0.1           259955     -     -   259955     -     -
                          224.0.0.1
rFrrrrrrrrr	r	r
�test_find_under_heading_ipv6�s
���
z.BaseTestInternals.test_find_under_heading_ipv6cCshd}tjj|jddt|�d��|jjdddgdd	�d
�}Wd�n1s'wY|�|d�dS)Nz�
fake      Link encap:UNSPEC  hwaddr 00-00
cscotun0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
eth0      Link encap:Ethernet  HWaddr 12:34:56:78:90:ab
rFr�ifconfigrjshwaddrcSs|dS)Nr(r	)�xr	r	r
rf,sz>BaseTestInternals.test_find_mac_near_keyword.<locals>.<lambda>)rr�keywordsZget_word_indexr)rr�r�rrZ_find_mac_near_keywordrArr	r	r
�test_find_mac_near_keywords
���z,BaseTestInternals.test_find_mac_near_keywordNcCs`|r
|dur
|�d|�d|}tjdkrt|dd�|�d|ko'dknd|�dS)	Nz	requires r�r?� )�endrrvz%s is not an RFC 4122 node ID)r�r�verbose�printr�)rXrJZrequiresrKr	r	r
�
check_node1s
�zBaseTestInternals.check_nodez7ifconfig is not used for introspection on this platformcC�|j��}|�|d�dS)Nr)r�_ifconfig_getnoder%�rXrJr	r	r
�test_ifconfig_getnode:�
z'BaseTestInternals.test_ifconfig_getnodez1ip is not used for introspection on this platformcCr&)NZip)r�_ip_getnoder%r(r	r	r
�test_ip_getnode@r*z!BaseTestInternals.test_ip_getnodez2arp is not used for introspection on this platformcCr&)NZarp)r�_arp_getnoder%r(r	r	r
�test_arp_getnodeFr*z"BaseTestInternals.test_arp_getnodez6lanscan is not used for introspection on this platformcCr&)NZlanscan)r�_lanscan_getnoder%r(r	r	r
�test_lanscan_getnodeLr*z&BaseTestInternals.test_lanscan_getnodez6netstat is not used for introspection on this platformcCr&)Nr)r�_netstat_getnoder%r(r	r	r
�test_netstat_getnodeRr*z&BaseTestInternals.test_netstat_getnodecCsH|j��}|�|d@d|�|�|�|j��}|�||d|�dS)Nlr�)rZ_random_getnoder�r%r�)rXrJr�r	r	r
�test_random_getnodeXs



z%BaseTestInternals.test_random_getnoder)r�r�r�r�rr
rrrrr r%r�r�r'r�r)r+r,r-r.r/r0r1r2r3r	r	r	r
r�s<.%
	�
�
�
�
�
rc@r�)�TestInternalsWithoutExtModuleNr�r	r	r	r
r4cr�r4c@sDeZdZeZe�ejdkd�dd��Z	e�ejdkd�dd��Z
d	S)
�TestInternalsWithExtModuler�zrequires PosixcCsVtd�s
td�s
|�d�z|j��}Wnty"|�d�Ynw|�|d�dS)NrZctypesz,neither _uuid extension nor ctypes availablezrequires uuid_generate_timeZunix)rr�rZ
_unix_getnoderhr%r(r	r	r
�test_unix_getnodejs
�z,TestInternalsWithExtModule.test_unix_getnode�ntzrequires WindowscCs|j��}|�|�dSr)rZ_windll_getnoder%r(r	r	r
�test_windll_getnodets
z.TestInternalsWithExtModule.test_windll_getnodeN)r�r�r�rrr�r�r�rr6r8r	r	r	r
r5fs
	r5�__main__)r��testrZtest.supportrrSr�r�r
r�r�r�r�rZimport_fresh_moduler�rrrrZTestCaser�r�rrr4r5r��mainr	r	r	r
�<module>sB
>
�
© 2025 GrazzMean