Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.9/test/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.9/test/__pycache__/test_uuid.cpython-39.pyc

a

��g�@s*ddlZddlmZddlZddlZddlZddlZddlZddlZddl	Z	ddl
Z
ddlmZejddgd�Z
ejddgd�Zdd	�Zd
d�ZGdd
�d
�ZGdd�deej�Ze�ed�Gdd�deej��ZGdd�d�ZGdd�deej�Ze�ed�Gdd�deej��Zedk�r&e��dS)�N)�support)�mock�uuid�_uuid)Zblocked)ZfreshcCs"zt|�WdSYdS0dS)NTF)�
__import__)�name�r�*/usr/local/lib/python3.9/test/test_uuid.py�
importables
r
cs�fdd�}|S)Ncst�����S�N)�io�BytesIO�encode)�command�args��datarr	�get_command_stdoutsz3mock_get_command_stdout.<locals>.get_command_stdoutr)rrrrr	�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
�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��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�}��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���r2r0r0����l	���������z-urn:uuid:ffffffff-ffff-ffff-ffff-ffffffffffffl�����?��bytes��bytes_le��fields��int��)�assertEqualrZRESERVED_NCS�RFC_4122ZRESERVED_FUTURE�UUID�strr<r6r8r:�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�stringZcurlyrIr6r8r:ZintegerrJrKrLrMrNZequivalents�u�v�i�jZresortedrrr	�	test_UUID!sz�	�	�	�	�	�	�	�	�	�	�	�	�	���
�
"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|�Sr)�assertRaises�
ValueError��f�rVrr	�<lambda>��z.BaseTestUUID.test_exceptions.<locals>.<lambda>cs��t|�Sr)r^�	TypeErrorr`rbrr	rc�rdcs�j�d�S)N��rrArrbrr	rc�rdcs�j�d�S)N�abcrgrrbrr	rc�rdcs�j�d�S)NZ1234567812345678123456781234567rgrrbrr	rc�rdcs�j�d�S)NZ!123456781234567812345678123456789rgrrbrr	rc�rdcs�j�d�S)NZ 123456781234567812345678z2345678rgrrbrr	rc�rdcs�jjdd�S)Nrhr5rgrrbrr	rc�rdcs�jjdd�S)N�r5rgrrbrr	rc�rdcs�jjdd�S)N�r5rgrrbrr	rc�rdcs�jjdd�S)Nrhr7rgrrbrr	rc�rdcs�jjdd�S)Nrir7rgrrbrr	rc�rdcs�jjdd�S)Nrjr7rgrrbrr	rc�rdcs�jjdd�S)N)r&r9rgrrbrr	rc�rdcs�jjdd�S)N)r&r=rr-r>r9rgrrbrr	rc�rdcs�jjdd�S)N)r&r=rr-r>��r9rgrrbrr	rc�rdcs�jjdd�S)N)���rrrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)lrrrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrmrrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)r�rrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrmrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrnrrrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrrmrrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrr�rrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrrrmrr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrrrorr9rgrrbrr	rc�rdcs�jjdd�S)N)rrrrrrmr9rgrrbrr	rcrdcs�jjdd�S)N)rrrrr�r9rgrrbrr	rcrdcs�jjddd�S)Nrr�rNrgrrbrr	rcrdcs�jjddd�S)Nrrkrqrgrrbrr	rcrdcs�jjdd�S)Nrmr;rgrrbrr	rcrdcs�jjdd>d�S)Nr&r#r;rgrrbrr	rc	rd)rrrr)rIr5r7r9r;cs
�j��Srrgrrbrr	rcrdcs�j����Srrgr��b�hrVrr	rcrdcs�j�����Srrgrrrrr	rcrdcs�j������Srrgr)rsrartrVrr	rcrdcs�j�������Srrgr)rsrartr[rVrr	rcrdrIr6r8r<r:rcs�jj�fi���Srrgr)rrtrVrr	rc#rdr&cs�jjfi���Srrgr)rrVrr	rc%rdcst�d��S)NrI��setattrr)rtrYrr	rc)rdcst�d��S)Nr6rur�rsrYrr	rc*rdcst�d��S)Nr8rurrwrr	rc+rdcst�d��S)Nr:rur)rarYrr	rc,rdcst�d��S)Nr<rur)r[rYrr	rc-rdcst�dd�S)NrCrrur�rYrr	rc.rdcst�dd�S)NrDrrurrxrr	rc/rdcst�dd�S�NrErrurrxrr	rc0rdcst�dd�Sryrurrxrr	rc1rdcst�dd�S)NrFrrurrxrr	rc2rdcst�dd�S)NrGrrurrxrr	rc3rdcst�dd�S)NrHrrurrxrr	rc4rdcs
�t�kSr��objectrrxrr	rc7rdcs
�t�kSrrzrrxrr	rc8rd)rrA�dictrS)rVZbadvalueZbadtypeZhhZbbZbble�iiZffr)rrsrartr[rVrYr	�test_exceptions�s�&zBaseTestUUID.test_exceptionscCsR|j��}|�d|ko dknd|�|j��}|�||d||f�dS)Nrrp�%012xz%012x != %012x)r�getnode�
assertTruer?)rVZnode1�node2rrr	�test_getnode:s
$
zBaseTestUUID.test_getnodecs��fdd�}t�tjd�j����jjD]�}�jjd|d�}|t�|�|�|t�|�|�t	t
jd�D]H}�j|d��(|t
�
t
�||��|�Wd�qj1s�0Yqjq(Wd�n1s�0YdS)Ncs ��||���|j|j�dSr�r?�is_safe��actual�expectedrbrr	�checkCsz1BaseTestUUID.test_pickle_roundtrip.<locals>.checkr� d82579ce6642a0de7ddf490a7aec7aa5�r�r&)�protocol)r�	swap_item�sys�modulesr�SafeUUIDrA�copy�deepcopyrR�pickle�HIGHEST_PROTOCOL�subTest�loads�dumps)rVr�r�rY�protorrbr	�test_pickle_roundtripBs�z"BaseTestUUID.test_pickle_roundtripc	s��fdd�}gd�}gd�}gd�}�j�d�}�jjd�jjjd�}�jjd�jjjd�}t�tjd�j��^|D]}|t	�
|�|�qt|D]}|t	�
|�|�q�|D]}|t	�
|�|�q�Wd�n1s�0YdS)	Ncs ��||���|j|j�dSrr�r�rbrr	r�Rs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)rrAr��safe�unsaferr�r�r�r�r�)	rVr�Z
pickled_uuidsZpickled_uuids_safeZpickled_uuids_unsaferYZu_safeZu_unsafeZpickledrrbr	�&test_unpickle_previous_python_versionsQs$1��z3BaseTestUUID.test_unpickle_previous_python_versionscCs�dd�}tjj|jd|gd��|j��}Wd�n1s>0Y|�d|ko^dknd|�z|jj|d�Wnty�|�d�Yn0dS)	NcSsdS)Nrprrrrr	rc�rdz/BaseTestUUID.test_uuid1_eui64.<locals>.<lambda>)Z_node�_GETTERSrrpr)rHz"uuid1 was given an invalid node ID)	r�patch�multiplerr�r��uuid1r_Zfail)rVZtoo_large_getterrHrrr	�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���.0r[rbrr	�
<listcomp>�rdz+BaseTestUUID.test_uuid1.<locals>.<listcomp>�
r&csg|]}�j���qSrr�r�rbrr	r��rd��rl��,�Hr3�?rrr4)r?rRrMrr@rNZassertInr�r�r�r��unknownrS�keysr�rHrFrG�rVrWrYZuuidsrrbr	�
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��rVrYrrr	�test_uuid1_safe	s

zBaseTestUUID.test_uuid1_safec#s~tjdkr|�d�|j��|jj��dur8|�d�tj�|jd��fdd���dVWd�n1sp0YdS)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�ra�
safe_valuerr	rc!rdz6BaseTestUUID.mock_generate_time_safe.<locals>.<lambda>)	�osrr�rZ_load_system_functionsr�rr�r{)rVr�rr�r	�mock_generate_time_safes



�z$BaseTestUUID.mock_generate_time_safecCsL|�d��.|j��}|�|j|jjj�Wd�n1s>0YdSr�r�rr�r?r�r�r�r�rrr	�test_uuid1_unknown$s
zBaseTestUUID.test_uuid1_unknowncCsL|�d��.|j��}|�|j|jjj�Wd�n1s>0YdSr�)r�rr�r?r�r�r�r�rrr	�test_uuid1_is_safe,s
zBaseTestUUID.test_uuid1_is_safecCsL|�d��.|j��}|�|j|jjj�Wd�n1s>0YdS)Nrm)r�rr�r?r�r�r�r�rrr	�test_uuid1_is_unsafe2s
z!BaseTestUUID.test_uuid1_is_unsafecCsL|�d��.|j��}|�|j|jjj�Wd�n1s>0YdS)Nrr�r�rrr	�test_uuid1_bogus_return_value8s
z*BaseTestUUID.test_uuid1_bogus_return_valuec
Cs@tj�|jdd���&tj�|jdd���tj�|jdd���tjj|jddd���tjdd	d��\tjd
dd��.|j��}|�||j�d��Wd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1�s0YWd�n1�s"0YWd�n1�sB0Ytj�|jdd���tj�|jdd���tj�|jdd��dtjdd	d��4|jjddd
�}|�||j�d��Wd�n1�s�0YWd�n1�s�0YWd�n1�s0YWd�n1�s20YdS)Nr�Fr�Z_last_timestampr�lZ�Y�S)Zreturn_valueztime.time_nsl3E5<��+zrandom.getrandbitsi�z$a7a55b92-01fc-11e9-94c5-54e1acf6da7f)rHrL)rr�r{rr�r?rAr�rrr	�test_uuid1_time>s,�����
����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)r?rZuuid3�
NAMESPACE_DNS�
NAMESPACE_URL�
NAMESPACE_OID�NAMESPACE_X500rMr@rNrArB�rVrWrYrZrrr	�
test_uuid3Os$�����	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�rbrr	r�erdz+BaseTestUUID.test_uuid4.<locals>.<listcomp>r�r-csg|]}�j���qSrr�r�rbrr	r�krdr�r&)r?rRrMrr@rNrSr�r�rrbr	�
test_uuid4as
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-874190002798r>)r?rZuuid5r�r�r�r�rMr@rNrArBr�rrr	�
test_uuid5os$�����	zBaseTestUUID.test_uuid5�requires PosixcCs�t��}t��}|dkrTt�|d�|j��}t�|d|j�d��t�	d�n\t�|d�|�
tj|d�|j��j}tj|dd�t�
|dd��d�}|�||�dS)Nrr&zlatin-1)�exitcode�d)r��pipe�fork�closerr��writerIr�_exitZ
addCleanuprZwait_process�read�decoder�)rV�fds�pid�valueZparent_valueZchild_valuerrr	�
testIssue8621�s
zBaseTestUUID.testIssue8621cCs&|j��}t�|�}|�||��dSr)rr��weakref�refZassertIs)rVZstrongZweakrrr	�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�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@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�|stjj|jddd�}ntjj|jddd�}|��|s>d}nd}|D]\}}|�|j�|�|�qFdD]R}|r||�dd�}|j|d	��"|�|j�|��Wd�qh1s�0YqhWd�n1s�0YdS)
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)rdsfe80::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�rr?Z
_parse_mac�replacer�ZassertIsNone)rVZaixr�Ztestsr�r�rrr	�check_parse_mac�s(
�
�z!BaseTestInternals.check_parse_maccCs|�d�dS)NF�r�rbrrr	�test_parse_mac�sz BaseTestInternals.test_parse_maccCs|�d�dS)NTr�rbrrr	�test_parse_mac_aix�sz$BaseTestInternals.test_parse_mac_aixcCs`d}tjj|jddt|�d��"|jjdddd�}Wd�n1sF0Y|�|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
r�T�r�r�Z_get_command_stdout�netstat�-ian�Address�rr�headingr��rr�r�rrZ_find_mac_under_headingr?�rVrr�rrr	�test_find_under_heading�s
��$z)BaseTestInternals.test_find_under_headingcCs`d}tjj|jddt|�d��"|jjdddd�}Wd�n1sF0Y|�|d	�dS)
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
r�Fr�r�r�r�r�r�r�rrrr	�test_find_under_heading_ipv6�s
��$z.BaseTestInternals.test_find_under_heading_ipv6cCshd}tjj|jddt|�d��*|jjdddgdd	�d
�}Wd�n1sN0Y|�|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
r�Fr��ifconfigrfshwaddrcSs|dS)Nr&r)�xrrr	rc+rdz>BaseTestInternals.test_find_mac_near_keyword.<locals>.<lambda>)rr�keywordsZget_word_indexr�)rr�r�rrZ_find_mac_near_keywordr?rrrr	�test_find_mac_near_keywords
��$z,BaseTestInternals.test_find_mac_near_keywordNcCs`|r|dur|�d|�d|}tjdkr8t|dd�|�d|koNdknd|�dS)	Nz	requires rr=� )�endrrpz%s is not an RFC 4122 node ID)r�r�verbose�printr�)rVrHZrequiresrIrrr	�
check_node0s
�zBaseTestInternals.check_nodez7ifconfig is not used for introspection on this platformcCs|j��}|�|d�dS)Nr)r�_ifconfig_getnoder�rVrHrrr	�test_ifconfig_getnode9s
z'BaseTestInternals.test_ifconfig_getnodez1ip is not used for introspection on this platformcCs|j��}|�|d�dS)N�ip)r�_ip_getnoderr
rrr	�test_ip_getnode?s
z!BaseTestInternals.test_ip_getnodez2arp is not used for introspection on this platformcCs|j��}|�|d�dS)NZarp)r�_arp_getnoderr
rrr	�test_arp_getnodeEs
z"BaseTestInternals.test_arp_getnodez6lanscan is not used for introspection on this platformcCs|j��}|�|d�dS)NZlanscan)r�_lanscan_getnoderr
rrr	�test_lanscan_getnodeKs
z&BaseTestInternals.test_lanscan_getnodez6netstat is not used for introspection on this platformcCs|j��}|�|d�dS)Nr�)r�_netstat_getnoderr
rrr	�test_netstat_getnodeQs
z&BaseTestInternals.test_netstat_getnodecCsH|j��}|�|d@d|�|�|�|j��}|�||d|�dS)Nlr)rZ_random_getnoder�rr�)rVrHr�rrr	�test_random_getnodeWs



z%BaseTestInternals.test_random_getnode)N)r�r�r�r�rr�r�r�rrrrr�r�rr�rrrrrrrrrrrrrr	r��s:.%
	�
�
�
�
�
r�c@seZdZeZdS)�TestInternalsWithoutExtModuleNr�rrrr	rbsrc@sDeZdZeZe�ejdkd�dd��Z	e�ejdkd�dd��Z
d	S)
�TestInternalsWithExtModuler�r�cCsVtd�std�s|�d�z|j��}WntyD|�d�Yn0|�|d�dS)NrZctypesz,neither _uuid extension nor ctypes availablezrequires uuid_generate_timeZunix)r
r�rZ
_unix_getnodererr
rrr	�test_unix_getnodeis
z,TestInternalsWithExtModule.test_unix_getnode�ntzrequires WindowscCs|j��}|�|�dSr)rZ_windll_getnoderr
rrr	�test_windll_getnodess
z.TestInternalsWithExtModule.test_windll_getnodeN)r�r�r�r�rr�r�r�rrrrrrr	res

	r�__main__)r��testrrQr�r�rr�r�r�r�rZimport_fresh_moduler�r�r
rrZTestCaser�r�r�r�rrr��mainrrrr	�<module>s<
>



Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists