Server : LiteSpeed
System : Linux server51.dnsbootclub.com 4.18.0-553.62.1.lve.el8.x86_64 #1 SMP Mon Jul 21 17:50:35 UTC 2025 x86_64
User : nandedex ( 1060)
PHP Version : 8.1.33
Disable Function : NONE
Directory :  /opt/cppython/lib/python3.8/test/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]


Current File : //opt/cppython/lib/python3.8/test/__pycache__/test_uuid.cpython-38.opt-1.pyc
U

>��g���@s2ddlZddlmZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlZddl
Z
ddlmZejddgd�Zejddgd�Zdd	�ZGd
d�d�ZGdd
�d
eej�Ze�ed�Gdd�deej��ZGdd�d�ZGdd�deej�Ze�ed�Gdd�deej��Zedk�r.e��dS)�N)�support)�mock�uuid�_uuid)Zblocked)ZfreshcCs"zt|�WdSYdSXdS)NTF)�
__import__)�name�r�-/opt/cppython/lib/python3.8/test/test_uuid.py�
importables
r
c@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
�ejdkd(�d)d*��Zd+d,�ZdS)-�BaseTestUUIDNcCsz|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|�|�|��q0|D]}|D]}|||��qD�q<|t|j�tj�|t|j	�tj�|�|��q�tt|��D]�}tt|��D]�}|||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�3rz$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��krrrrrl	�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��krrrrrl	�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��krrrrrl	�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�}��r%��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���r(r&r&����l	���������z-urn:uuid:ffffffff-ffff-ffff-ffff-ffffffffffffl�����?��bytes��bytes_le��fields��int��)�assertEqualrZRESERVED_NCS�RFC_4122ZRESERVED_FUTURE�UUID�strr2r,r.r0�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�stringZcurlyr?r,r.r0Zintegerr@rArBrCrDZequivalents�u�v�i�jZresortedrrr	�	test_UUIDs��	�	�	�	�	�	�	�	�	�	�	�	�	���
�
"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]�}gd/�fgfD]�}gd0�fgfD]v}gd1�fgfD]`}t|||||��t��d2k�rP|���fd3d��t��d4k�r|��fd5d���q�q�q�qܐqʈj����|��fd6d��|��fd7d��|��fd8d��|��fd9d��|��fd:d��|�fd;d��|�fd<d��|�fd=d��|�fd>d��|�fd?d��|�fd@d��|�fdAd��|�fdBd��|�fdCd��dS)DNcs��t|�S�N)�assertRaises�
ValueError��f�rLrr	�<lambda>��z.BaseTestUUID.test_exceptions.<locals>.<lambda>cs��t|�SrT)rU�	TypeErrorrWrYrr	rZ�r[cs�j�d�S)N��rr7rrYrr	rZ�r[cs�j�d�S)N�abcr^rrYrr	rZ�r[cs�j�d�S)NZ1234567812345678123456781234567r^rrYrr	rZ�r[cs�j�d�S)NZ!123456781234567812345678123456789r^rrYrr	rZ�r[cs�j�d�S)NZ 123456781234567812345678z2345678r^rrYrr	rZ�r[cs�jjdd�S)Nr_r+r^rrYrr	rZ�r[cs�jjdd�S)N�r+r^rrYrr	rZ�r[cs�jjdd�S)N�r+r^rrYrr	rZ�r[cs�jjdd�S)Nr_r-r^rrYrr	rZ�r[cs�jjdd�S)Nr`r-r^rrYrr	rZ�r[cs�jjdd�S)Nrar-r^rrYrr	rZ�r[cs�jjdd�S)N)rr/r^rrYrr	rZ�r[cs�jjdd�S)N)rr3rr#r4r/r^rrYrr	rZ�r[cs�jjdd�S)N)rr3rr#r4��r/r^rrYrr	rZ�r[cs�jjdd�S)N)���rrrrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)lrrrrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrdrrrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)r�rrrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrdrrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrerrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrrdrrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrr�rrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrrrdrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrrrfrr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrrrrdr/r^rrYrr	rZ�r[cs�jjdd�S)N)rrrrr�r/r^rrYrr	rZ�r[cs�jjddd�S)Nrr�rDr^rrYrr	rZr[cs�jjddd�S)Nrrbrhr^rrYrr	rZr[cs�jjdd�S)Nrdr1r^rrYrr	rZr[cs�jjdd>d�S)Nrrr1r^rrYrr	rZr[)rr
rr)r?r+r-r/r1cs
�j��SrTr^rrYrr	rZr[cs�j����SrTr^r��b�hrLrr	rZr[cs�j�����SrTr^rrirr	rZr[cs�j������SrTr^r)rjrXrkrLrr	rZr[cs�j�������SrTr^r)rjrXrkrQrLrr	rZr[r?r,r.r2r0rcs�jj�f��SrTr^r)�argsrkrLrr	rZ r[rcs�jjf��SrTr^r)rlrLrr	rZ"r[cst�d��S)Nr?��setattrr)rkrOrr	rZ&r[cst�d��S)Nr,rmr�rjrOrr	rZ'r[cst�d��S)Nr.rmrrorr	rZ(r[cst�d��S)Nr0rmr)rXrOrr	rZ)r[cst�d��S)Nr2rmr)rQrOrr	rZ*r[cst�dd�S)Nr9rrmr�rOrr	rZ+r[cst�dd�S)Nr:rrmrrprr	rZ,r[cst�dd�S�Nr;rrmrrprr	rZ-r[cst�dd�Srqrmrrprr	rZ.r[cst�dd�S)Nr<rrmrrprr	rZ/r[cst�dd�S)Nr=rrmrrprr	rZ0r[cst�dd�S)Nr>rrmrrprr	rZ1r[cs
�t�kSrT��objectrrprr	rZ4r[cs
�t�kSrTrrrrprr	rZ5r[)rr7�dictrI)rLZbadvalueZbadtypeZhhZbbZbble�iiZffr)rlrjrXrkrQrLrOr	�test_exceptions�s�&zBaseTestUUID.test_exceptionscCsR|j��}|�d|ko dknd|�|j��}|�||d||f�dS)Nrrg�%012xz%012x != %012x)r�getnode�
assertTruer5)rLZnode1�node2rrr	�test_getnode7s
$
zBaseTestUUID.test_getnodecs��fdd�}t�tjd�j����jjD]x}�jjd|d�}|t�|�|�|t�|�|�t	t
jd�D]4}�j|d��|t
�
t
�||��|�W5QRXqjq(W5QRXdS)Ncs ��||���|j|j�dSrT�r5�is_safe��actualZexpectedrYrr	�check@sz1BaseTestUUID.test_pickle_roundtrip.<locals>.checkr� d82579ce6642a0de7ddf490a7aec7aa5�r}r)�protocol)r�	swap_item�sys�modulesr�SafeUUIDr7�copy�deepcopyrH�pickle�HIGHEST_PROTOCOLZsubTest�loads�dumps)rLr�r}rO�protorrYr	�test_pickle_roundtrip?s�z"BaseTestUUID.test_pickle_roundtripc	
s��fdd�}ddddddd	d
ddd
ddg
}dddddg}dddddg}�j�d�}�jjd�jjjd�}�jjd�jjjd�}t�tjd�j��T|D]}|t	�
|�|�q�|D]}|t	�
|�|�q�|D]}|t	�
|�|�q�W5QRXdS)Ncs ��||���|j|j�dSrTr|r~rYrr	r�OszBBaseTestUUID.test_unpickle_previous_python_versions.<locals>.checksrccopy_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)rr7r��safe�unsaferr�r�r�r�r�)	rLr�Z
pickled_uuidsZpickled_uuids_safeZpickled_uuids_unsaferOZu_safeZu_unsafeZpickledrrYr	�&test_unpickle_previous_python_versionsNsR�3����z3BaseTestUUID.test_unpickle_previous_python_versionsc
Cs�dd�}tjjj|jd|gd��|j��}W5QRX|�d|koLdknd|�z|jj|d�Wn,tk
r�}z|�	d�W5d}~XYnXdS)	NcSsdS)Nrgrrrrr	rZ�r[z/BaseTestUUID.test_uuid1_eui64.<locals>.<lambda>)Z_node�_GETTERSrrgrw)r>z"uuid1 was given an invalid node ID)
�unittestr�patchZmultiplerrxry�uuid1rVZfail)rLZtoo_large_getterr>�errr	�test_uuid1_eui64�s�$zBaseTestUUID.test_uuid1_eui64cs��j}�fdd�td�D�D]F}||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)Ncsg|]}�j���qSr�rr���.0rQrYrr	�
<listcomp>�sz+BaseTestUUID.test_uuid1.<locals>.<listcomp>�
rcsg|]}�j���qSrr�r�rYrr	r��s��rl��,�Hr)�?rrr*)r5rHrCrr6rDZassertInr}r�r�r��unknownrI�keysr�r>r<r=�rLrMrOZuuidsrrYr	�
test_uuid1�sF�
����zBaseTestUUID.test_uuid1r�r4�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��rLrOrrr	�test_uuid1_safes

zBaseTestUUID.test_uuid1_safec	#sltjdkr|�d�|j��|jj��dkr8|�d�tjj�	|jd��fdd���dVW5QRXdS)zQ
        Mock uuid._generate_time_safe() to return a given *safe_value*.
        r�r�Nzneed uuid._generate_time_safe�_generate_time_safecs��d�fS�Nrrr�rX�
safe_valuerr	rZr[z6BaseTestUUID.mock_generate_time_safe.<locals>.<lambda>)
�osrr�rZ_load_system_functionsr�r�rr�rs)rLr�rr�r	�mock_generate_time_safes



�z$BaseTestUUID.mock_generate_time_safec	Cs8|�d��$|j��}|�|j|jjj�W5QRXdSrT�r�rr�r5r}r�r�r�rrr	�test_uuid1_unknown!s
zBaseTestUUID.test_uuid1_unknownc	Cs8|�d��$|j��}|�|j|jjj�W5QRXdSr�)r�rr�r5r}r�r�r�rrr	�test_uuid1_is_safe)s
zBaseTestUUID.test_uuid1_is_safec	Cs8|�d��$|j��}|�|j|jjj�W5QRXdS)Nrd)r�rr�r5r}r�r�r�rrr	�test_uuid1_is_unsafe/s
z!BaseTestUUID.test_uuid1_is_unsafec	Cs8|�d��$|j��}|�|j|jjj�W5QRXdS)Nrr�r�rrr	�test_uuid1_bogus_return_value5s
z*BaseTestUUID.test_uuid1_bogus_return_valuecCshtj�|jdd���tj�|jdd���tj�|jdd��xtjj|jddd��Xtjdd	d��>tjd
dd��$|j��}|�||j�d��W5QRXW5QRXW5QRXW5QRXW5QRXW5QRXtj�|jdd���tj�|jdd��btj�|jdd��Dtjdd	d��*|jjddd
�}|�||j�d��W5QRXW5QRXW5QRXW5QRXdS)Nr�Fr�Z_last_timestamprxlZ�Y�S�Zreturn_valueztime.time_nsl3E5<��+zrandom.getrandbitsi�z$a7a55b92-01fc-11e9-94c5-54e1acf6da7f)r>rB)rr�rsrr�r5r7r�rrr	�test_uuid1_time;s,�����
P���zBaseTestUUID.test_uuid1_timecCs�|j}|j�|jjd�df|j�|jjd�df|j�|jjd�df|j�|jjd�dffD]D\}}||j|jj�||j	d	�|||j�
|��|t|�|�qZdS)
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)r5rZuuid3�
NAMESPACE_DNS�
NAMESPACE_URL�
NAMESPACE_OID�NAMESPACE_X500rCr6rDr7r8�rLrMrOrPrrr	�
test_uuid3Ls$�����	zBaseTestUUID.test_uuid3cs|�j}�fdd�td�D�D] }||j�jj�||jd�qi}�fdd�td�D�D]}d||<qX|t|���d�dS)Ncsg|]}�j���qSr�r�uuid4r�rYrr	r�bsz+BaseTestUUID.test_uuid4.<locals>.<listcomp>r�r#csg|]}�j���qSrr�r�rYrr	r�hsr�r)r5rHrCrr6rDrIr�r�rrYr	�
test_uuid4^s
zBaseTestUUID.test_uuid4cCs�|j}|j�|jjd�df|j�|jjd�df|j�|jjd�df|j�|jjd�dffD]D\}}||j|jj�||j	d	�|||j�
|��|t|�|�qZdS)
Nr�z$886313e1-3b8a-5372-9b90-0c9aee199e5dr�z$4c565f0d-3f5a-5890-b41b-20cf47701c5er�z$1447fa61-5277-5fef-a9b3-fbc6e44f4af3r�z$cc957dd1-a972-5349-98cd-874190002798r4)r5rZuuid5r�r�r�r�rCr6rDr7r8r�rrr	�
test_uuid5ls$�����	zBaseTestUUID.test_uuid5�requires PosixcCs�t��}t��}|dkrTt�|d�|j��}t�|d|j�d��t�	d�nZt�|d�|�
tj|d�|j��j}t�|d�t�|dd��
d�}|�||�dS)Nrrzlatin-1�d)r��pipe�fork�closerr��writer?�encode�_exitZ
addCleanup�waitpid�read�decoder�)rL�fds�pid�valueZparent_valueZchild_valuerrr	�
testIssue8621~s
zBaseTestUUID.testIssue8621cCs&|j��}t�|�}|�||��dSrT)rr��weakref�refZassertIs)rLZstrongZweakrrr	�test_uuid_weakref�s

zBaseTestUUID.test_uuid_weakref)�__name__�
__module__�__qualname__rrSrvr{r�r�r�r�rZrequires_mac_verr��
skipUnlessr�rr��
contextlib�contextmanagerr�r�r�r�r�r�r�r�r�r�r�rrrr	rs:;_y(







rc@seZdZeZdS)�TestUUIDWithoutExtModuleN�r�r�r��py_uuidrrrrr	r��sr�zrequires the C _uuid modulec@seZdZeZdS)�TestUUIDWithExtModuleN�r�r�r��c_uuidrrrrr	r��sr�c@sNeZdZeZe�ejdkd�dd��Z	d)dd�Z
e�ejejkd�d	d
��Z
e�ejejkd�dd
��Ze�ejejkd�dd��Ze�ejejkd�dd��Ze�ejejkd�dd��Ze�ejdkd�dd��Ze�ed�d�e�ed�d�dd ���Zd!d"�Ze�ejdkd�d#d$��Ze�ejdkd�e�ed%�d&�d'd(���ZdS)*�BaseTestInternalsr�r�c
Cs�d}tj��}t�|���|_tjjjt	ddd��@tjjjt
d|d�� |jjdddgd	d
�d�}W5QRXW5QRX|�
|d�dS)
Nz�
fake hwaddr
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
�whichz/sbin/ifconfigr��Popen�ifconfigr]shwaddrcSs|dS)Nrr)�xrrr	rZ�r[z1BaseTestInternals.test_find_mac.<locals>.<lambda>)ZcommandrlZhw_identifiersZ	get_indexl��,�H)r�rZ	MagicMock�io�BytesIOr��stdoutr�rs�shutil�
subprocessrZ	_find_macr5)rL�data�popenZmacrrr	�
test_find_mac�s 
���zBaseTestInternals.test_find_macNcCs`|r|dkr|�d|�d|}tjdkr8t|dd�|�d|koNdknd|�dS)	Nz	requires rwr3� )�endrrgz%s is not an RFC 4122 node ID)r�r�verbose�printry)rLr>Zrequiresr?rrr	�
check_node�s
�zBaseTestInternals.check_nodez7ifconfig is not used for introspection on this platformcCs|j��}|�|d�dS)Nr�)r�_ifconfig_getnoder��rLr>rrr	�test_ifconfig_getnode�s
z'BaseTestInternals.test_ifconfig_getnodez1ip is not used for introspection on this platformcCs|j��}|�|d�dS)NZip)r�_ip_getnoder�r�rrr	�test_ip_getnode�s
z!BaseTestInternals.test_ip_getnodez2arp is not used for introspection on this platformcCs|j��}|�|d�dS)NZarp)r�_arp_getnoder�r�rrr	�test_arp_getnode�s
z"BaseTestInternals.test_arp_getnodez6lanscan is not used for introspection on this platformcCs|j��}|�|d�dS)NZlanscan)r�_lanscan_getnoder�r�rrr	�test_lanscan_getnode�s
z&BaseTestInternals.test_lanscan_getnodez6netstat is not used for introspection on this platformcCs|j��}|�|d�dS)NZnetstat)r�_netstat_getnoder�r�rrr	�test_netstat_getnode�s
z&BaseTestInternals.test_netstat_getnode�ntzrequires WindowscCs|j��}|�|d�dS)NZipconfig)rZ_ipconfig_getnoder�r�rrr	�test_ipconfig_getnode�s
z'BaseTestInternals.test_ipconfig_getnodeZ	win32wnetzrequires win32wnetZnetbioszrequires netbioscCs|j��}|�|�dSrT)rZ_netbios_getnoder�r�rrr	�test_netbios_getnode�s
z&BaseTestInternals.test_netbios_getnodecCsH|j��}|�|d@d|�|�|�|j��}|�||d|�dS)Nlrw)rZ_random_getnoderyr�r�)rLr>rzrrr	�test_random_getnode�s



z%BaseTestInternals.test_random_getnodecCsXtd�std�s|�d�z|j��}Wntk
rF|�d�YnX|�|d�dS)Nr�ctypesz,neither _uuid extension nor ctypes availablezrequires uuid_generate_timeZunix)r
r�rZ
_unix_getnoder\r�r�rrr	�test_unix_getnode�s
z#BaseTestInternals.test_unix_getnoderzrequires ctypescCs|j��}|�|�dSrT)rZ_windll_getnoder�r�rrr	�test_windll_getnodes
z%BaseTestInternals.test_windll_getnode)N)r�r�r�r�rr�r�r�rr�r�r�r�r�r�r�r�r�r�r�r�rrr
rrrrrrrr	r��sF

	�
�
�
�
�


	r�c@seZdZeZdS)�TestInternalsWithoutExtModuleNr�rrrr	rsrc@seZdZeZdS)�TestInternalsWithExtModuleNr�rrrr	r	sr	�__main__)Z
unittest.mockr��testrrGr�r�r�r�r�r�r�r�r�rZimport_fresh_moduler�r�r
rZTestCaser�r�r�r�rr	r��mainrrrr	�<module>s<
i



F1le Man4ger