a zeΟ@s*ddlZddlmZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddlm Z ej ddgdZ ej ddgdZdd Zd d ZGd d d ZGdddeejZeedGdddeejZGdddZGdddeejZeedGdddeejZedkr&edS)N)support)mockuuid_uuid)Zblocked)ZfreshcCs"zt|WdSYdS0dS)NTF) __import__)namerB/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_uuid.py importables r csfdd}|S)NcstSN)ioBytesIOencode)commandargsdatarr get_command_stdoutsz3mock_get_command_stdout..get_command_stdoutr)rrrrr mock_get_command_stdouts rc@s&eZdZdZddZddZddZdd Zd d Zd d Z ddZ e dde ejdkdddZejddZe ejdkdddZe ejdkdddZe ejdkdddZe ejdkdddZd d!Zd"d#Zd$d%Zd&d'Ze ejdkd(d)d*Zd+d,ZdS)- BaseTestUUIDNcCsz|j}g}dddddddddd|jjdf dd d d d 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;dd?d@dAdBdCd0|jjd1f dDdEdFdGdHdIdJdKdLd0|jjd1f dMdNdOdPdQdRdSdTdUdV|jjd1f dWdXdYdZd[d\d]d^d_d`|jjdf dadbdcdddedfdgdhdidj|jjdkf dldmdndodpdqdrdsdtdu|jjd1f dvdwdxdydzd{d|d}d~d|jjdf dddddddddd|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]}|||qDq<|t|jtj|t|j tj||qtt|D]}tt|D]}|||k||||k|||k||||k|||k||||k|||k||||k|||k||||k|||k||||kqq|dd}|||||dS)Nz$00000000-0000-0000-0000-000000000000z&{00000000-0000-0000-0000-000000000000} 00000000000000000000000000000000rrrrrrrz-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.Jsg.8J)iigi.8lCLLl CLL| e5lz-urn:uuid:02d9e6d5-9467-382e-8f9b-9300a64ac3cdlfQtAiz$12345678-1234-5678-1234-567812345678z&{12345678-1234-5678-1234-567812345678}Z 12345678123456781234567812345678s4Vx4Vx4Vx4VxsxV44xV4Vx4Vx)ixV44ixV4lxVh$Yl xVh$YgF+z-urn:uuid:12345678-1234-5678-1234-567812345678lxVh$H3rz$6ba7b810-9dad-11d1-80b4-00c04fd430c8z&{6ba7b810-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8109dad11d180b400c04fd430c8skрO0skO0)ik魝0l 05'Skz-urn:uuid:6ba7b810-9dad-11d1-80b4-00c04fd430c8l8OWvr$z$6ba7b811-9dad-11d1-80b4-00c04fd430c8z&{6ba7b811-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8119dad11d180b400c04fd430c8skрO0skO0)ikr!r"r#r$r%l 05gSkz-urn:uuid:6ba7b811-9dad-11d1-80b4-00c04fd430c8l8OWvz$6ba7b812-9dad-11d1-80b4-00c04fd430c8z&{6ba7b812-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8129dad11d180b400c04fd430c8skрO0skO0)ikr!r"r#r$r%l 05Skz-urn:uuid:6ba7b812-9dad-11d1-80b4-00c04fd430c8l8OWvz$6ba7b814-9dad-11d1-80b4-00c04fd430c8z&{6ba7b814-9dad-11d1-80b4-00c04fd430c8}Z 6ba7b8149dad11d180b400c04fd430c8skрO0skO0)ikr!r"r#r$r%l 05'Skz-urn:uuid:6ba7b814-9dad-11d1-80b4-00c04fd430c8l8OWvz$7d444840-9dc0-11d1-b245-5ffdce74fad2z&{7d444840-9dc0-11d1-b245-5ffdce74fad2}Z 7d4448409dc011d1b2455ffdce74fad2s}DH@ѲE_ts@HD}E_t)i@HD}ir"Elzl z*8'$"}z-urn:uuid:7d444840-9dc0-11d1-b245-5ffdce74fad2l@HzwiE2z$e902893a-9d22-3c7e-a7b8-d6e313b71d9fz&{e902893a-9d22-3c7e-a7b8-d6e313b71d9f}Z e902893a9d223c7ea7b8d6e313b71d9fs:"<~s:"~<)l: Ri"i~<ln'[l n'[=GG$NDz-urn:uuid:e902893a-9d22-3c7e-a7b8-d6e313b71d9fl: Rtci'z$eb424026-6f54-4ef8-a4d0-bb658a1fc6cfz&{eb424026-6f54-4ef8-a4d0-bb658a1fc6cf}Z eb4240266f544ef8a4d0bb658a1fc6cfsB@&oTNлes&@BToNлe)l&@ViToiNlF?ml F?m&oj !z-urn:uuid:eb424026-6f54-4ef8-a4d0-bb658a1fc6cfl&@VS=wi$z$f81d4fae-7dec-11d0-a765-00a0c91e6bf6z&{f81d4fae-7dec-11d0-a765-00a0c91e6bf6}Z f81d4fae7dec11d0a76500a0c91e6bf6sO}ЧeksO}ek)lO:pi}ir)elk<l k<(; =kz-urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6lO:pwie'z$fffefdfc-fffe-fffe-fffe-fffefdfcfbfaz&{fffefdfc-fffe-fffe-fffe-fffefdfcfbfa}Z fffefdfcfffefffefffefffefdfcfbfass)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)lr2r0r0l z-urn:uuid:ffffffff-ffff-ffff-ffff-ffffffffffffl?bytesbytes_lefieldsint) assertEqualrZ RESERVED_NCSRFC_4122ZRESERVED_FUTUREUUIDstrr<r6r8r:time_lowtime_midtime_hi_versionclock_seq_hi_variant clock_seq_lownodehexurntime clock_seqvariantversionappendtypebuiltinsrangelenreversesort)selfequalZ ascendingstringZcurlyrIr6r8r:ZintegerrJrKrLrMrNZ equivalentsuvijZresortedrrr test_UUID!sz                                      " zBaseTestUUID.test_UUIDc s~fdd}fdd}|fdd|fdd|fdd|fdd|fdd|fd d|fd d|fd d|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!dd"\jjjd#jjd$jjd%jjd&jjd'|fd(d|fd)d|fd*d|fd+d|fd,dgd-fgfD]}gd.fgfD]}gd/fgfD]}gd0fgfD]v}gd1fgfD]`}t|||||td2krP|fd3dtd4kr|fd5dqqqqܐqʈj|fd6d|fd7d|fd8d|fd9d|fd:d|fd;d|fdd|fd?d|fd@d|fdAd|fdBd|fdCddS)DNcs t|Sr ) assertRaises ValueErrorfrVrr z.BaseTestUUID.test_exceptions..cs t|Sr )r^ TypeErrorr`rbrr rcrdcs jdS)NrrArrbrr rcrdcs jdS)Nabcrgrrbrr rcrdcs jdS)NZ1234567812345678123456781234567rgrrbrr rcrdcs jdS)NZ!123456781234567812345678123456789rgrrbrr rcrdcs jdS)NZ 123456781234567812345678z2345678rgrrbrr rcrdcsjjddS)Nrhr5rgrrbrr rcrdcsjjddS)Nr5rgrrbrr rcrdcsjjddS)Nr5rgrrbrr rcrdcsjjddS)Nrhr7rgrrbrr rcrdcsjjddS)Nrir7rgrrbrr rcrdcsjjddS)Nrjr7rgrrbrr rcrdcsjjddS)N)r&r9rgrrbrr rcrdcsjjddS)N)r&r=rr-r>r9rgrrbrr rcrdcsjjddS)N)r&r=rr-r>r9rgrrbrr rcrdcsjjddS)N)rrrrrr9rgrrbrr rcrdcsjjddS)N)lrrrrrr9rgrrbrr rcrdcsjjddS)N)rrmrrrrr9rgrrbrr rcrdcsjjddS)N)rrrrrr9rgrrbrr rcrdcsjjddS)N)rrrmrrrr9rgrrbrr rcrdcsjjddS)N)rrrnrrrr9rgrrbrr rcrdcsjjddS)N)rrrrmrrr9rgrrbrr rcrdcsjjddS)N)rrrrrr9rgrrbrr rcrdcsjjddS)N)rrrrrmrr9rgrrbrr rcrdcsjjddS)N)rrrrrorr9rgrrbrr rcrdcsjjddS)N)rrrrrrmr9rgrrbrr rcrdcsjjddS)N)rrrrrr9rgrrbrr rcrdcsjjdddS)NrrrNrgrrbrr rcrdcsjjdddS)Nrrkrqrgrrbrr rcrdcsjjddS)Nrmr;rgrrbrr rcrdcsjjdd>dS)Nr&r#r;rgrrbrr rc rd)rrrr)rIr5r7r9r;cs jSr rgrrbrr rcrdcsjSr rgrbhrVrr rcrdcsjSr rgrrrrr rcrdcsjSr rgr)rsrartrVrr rcrdcsjSr rgr)rsrartr[rVrr rcrdrIr6r8r<r:rcsjjfiSr rgr)rrtrVrr rc#rdr&csjjfiSr rgr)rrVrr rc%rdcs tdS)NrIsetattrr)rtrYrr rc)rdcs tdS)Nr6rurrsrYrr rc*rdcs tdS)Nr8rurrwrr rc+rdcs tdS)Nr:rur)rarYrr rc,rdcs tdS)Nr<rur)r[rYrr rc-rdcs tddS)NrCrrurrYrr rc.rdcs tddS)NrDrrurrxrr rc/rdcs tddSNrErrurrxrr rc0rdcs tddSryrurrxrr rc1rdcs tddS)NrFrrurrxrr rc2rdcs tddS)NrGrrurrxrr rc3rdcs tddS)NrHrrurrxrr rc4rdcs tkSr objectrrxrr rc7rdcs tkSr rzrrxrr rc8rd)rrAdictrS)rVZbadvalueZbadtypeZhhZbbZbbleiiZffr)rrsrartr[rVrYr test_exceptionss    & zBaseTestUUID.test_exceptionscCsR|j}|d|ko dknd||j}|||d||fdS)Nrrp%012xz%012x != %012x)rgetnode assertTruer?)rVZnode1node2rrr test_getnode:s $ zBaseTestUUID.test_getnodec sfdd}ttjdjjjD]}jjd|d}|t|||t||t t j dD]H}j |d(|t t |||Wdqj1s0Yqjq(Wdn1s0YdS)Ncs |||j|jdSr r?is_safeactualexpectedrbrr checkCs z1BaseTestUUID.test_pickle_roundtrip..checkr d82579ce6642a0de7ddf490a7aec7aa5rr&)protocol)r swap_itemsysmodulesrSafeUUIDrAcopydeepcopyrRpickleHIGHEST_PROTOCOLsubTestloadsdumps)rVrrrYprotorrbr test_pickle_roundtripBs  z"BaseTestUUID.test_pickle_roundtripc sfdd}gd}gd}gd}jd}jjdjjjd}jjdjjjd}ttjdj^|D]}|t ||qt|D]}|t ||q|D]}|t ||qWdn1s0YdS) Ncs |||j|jdSr rrrbrr rRs zBBaseTestUUID.test_unpickle_previous_python_versions..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 )}Uintzz I}ޠBfy%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 )}Xintzz I}ޠBfy%sb.s.cuuid UUID )}Xintzz I}ޠBfy%sb.s6+uuidUUID)}intzz I}ޠBfy%sb.sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR(dVint L287307832597519156748809049798316161701L sVis_safe cuuid SafeUUID (NtRsb.sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR}(XintL287307832597519156748809049798316161701L Xis_safecuuid SafeUUID (NtRub.sMcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID NRub.sMcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID NRub.sQFuuidUUID)}(intzz I}ޠBfy%is_safehSafeUUIDNRub.)sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR(dVint L287307832597519156748809049798316161701L sVis_safe cuuid SafeUUID (I0 tRsb.sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR}(XintL287307832597519156748809049798316161701L Xis_safecuuid SafeUUID (KtRub.sNcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID KRub.sNcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID KRub.sRGuuidUUID)}(intzz I}ޠBfy%is_safehSafeUUIDKRub.)sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR(dVint L287307832597519156748809049798316161701L sVis_safe cuuid SafeUUID (I-1 tRsb.sccopy_reg _reconstructor (cuuid UUID c__builtin__ object NtR}(XintL287307832597519156748809049798316161701L Xis_safecuuid SafeUUID (JtRub.sQcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID JRub.sQcuuid UUID )}(Xintzz I}ޠBfy%Xis_safecuuid SafeUUID JRub.sUJuuidUUID)}(intzz I}ޠBfy%is_safehSafeUUIDJRub.rrr) rrArsafeunsaferrrrrr) rVrZ pickled_uuidsZpickled_uuids_safeZpickled_uuids_unsaferYZu_safeZu_unsafeZpickledrrbr &test_unpickle_previous_python_versionsQs$ 1 z3BaseTestUUID.test_unpickle_previous_python_versionscCsdd}tjj|jd|gd|j}Wdn1s>0Y|d|ko^dknd|z|jj|dWnty|dYn0dS) NcSsdS)Nrprrrrr rcrdz/BaseTestUUID.test_uuid1_eui64..)Z_node_GETTERSrrpr)rHz"uuid1 was given an invalid node ID) rpatchmultiplerrruuid1r_Zfail)rVZtoo_large_getterrHrrr test_uuid1_eui64s($ zBaseTestUUID.test_uuid1_eui64csj}fddtdDD]F}||jjj||jd|jjjj jjj jjj hqi}fddtdDD] }d||<q~|t | djd}||jdjd}||jdjd }||jd jdd}||jd||jd @d >|jBdjdd }||jd||jd @d >|jBd jdd }||jd||jd @d >|jBd dS)Ncsg|]}jqSrrr.0r[rbrr rdz+BaseTestUUID.test_uuid1.. r&csg|]}jqSrrrrbrr rrdrl,Hr3?rrr4)r?rRrMrr@rNZassertInrrrrunknownrSkeysrrHrFrGrVrWrYZuuidsrrbr test_uuid1sF           zBaseTestUUID.test_uuid1rr>posixPOSIX-only testcCs4|jjs|d|j}||j|jjjdS)Nz#requires uuid_generate_time_safe(3))r_has_uuid_generate_time_safeskipTestrassertNotEqualrrrrVrYrrr test_uuid1_safe s  zBaseTestUUID.test_uuid1_safec#s~tjdkr|d|j|jjdur8|dtj|jdfdddVWdn1sp0YdS)zQ Mock uuid._generate_time_safe() to return a given *safe_value*. rrNzneed uuid._generate_time_safe_generate_time_safecsdfSNrrrra safe_valuerr rc!rdz6BaseTestUUID.mock_generate_time_safe..) osrrrZ_load_system_functionsrrrr{)rVrrrr mock_generate_time_safes      z$BaseTestUUID.mock_generate_time_safecCsL|d.|j}||j|jjjWdn1s>0YdSr rrrr?rrrrrrr test_uuid1_unknown$s  zBaseTestUUID.test_uuid1_unknowncCsL|d.|j}||j|jjjWdn1s>0YdSr)rrrr?rrrrrrr test_uuid1_is_safe,s  zBaseTestUUID.test_uuid1_is_safecCsL|d.|j}||j|jjjWdn1s>0YdS)Nrm)rrrr?rrrrrrr test_uuid1_is_unsafe2s  z!BaseTestUUID.test_uuid1_is_unsafecCsL|d.|j}||j|jjjWdn1s>0YdS)Nrrrrrr test_uuid1_bogus_return_value8s  z*BaseTestUUID.test_uuid1_bogus_return_valuec Cs@tj|jdd&tj|jddtj|jddtjj|jdddtjdd d\tjd d d.|j}|||jd Wdn1s0YWdn1s0YWdn1s0YWdn1s0YWdn1s"0YWdn1sB0Ytj|jddtj|jddtj|jdddtjdd d4|jjdd d }|||jd Wdn1s0YWdn1s0YWdn1s0YWdn1s20YdS)NrFrZ_last_timestamprlZYS)Z return_valuez time.time_nsl3E5<+zrandom.getrandbitsiz$a7a55b92-01fc-11e9-94c5-54e1acf6da7f)rHrL)rrr{rrr?rArrrr test_uuid1_time>s,    zBaseTestUUID.test_uuid1_timecCs|j}|j|jjddf|j|jjddf|j|jjddf|j|jjddffD]D\}}||j|jj||j d |||j ||t ||qZdS) N python.orgz$6fa459ea-ee8a-3ca4-894e-db77e160355ehttp://python.org/z$9fe8e8c4-aaa8-32a9-a55c-4535a88b748d1.3.6.1z$dd1a1cef-13d5-368a-ad82-eca71acd4cd1c=caz$658d3002-db6b-3040-a1d1-8ddd7d189a4dr) r?rZuuid3 NAMESPACE_DNS NAMESPACE_URL NAMESPACE_OIDNAMESPACE_X500rMr@rNrArBrVrWrYrZrrr test_uuid3Os$  zBaseTestUUID.test_uuid3cs|j}fddtdDD] }||jjj||jdqi}fddtdDD] }d||<qX|t|ddS)Ncsg|]}jqSrruuid4rrbrr rerdz+BaseTestUUID.test_uuid4..rr-csg|]}jqSrrrrbrr rkrdrr&)r?rRrMrr@rNrSrrrrbr test_uuid4as zBaseTestUUID.test_uuid4cCs|j}|j|jjddf|j|jjddf|j|jjddf|j|jjddffD]D\}}||j|jj||j d |||j ||t ||qZdS) Nrz$886313e1-3b8a-5372-9b90-0c9aee199e5drz$4c565f0d-3f5a-5890-b41b-20cf47701c5erz$1447fa61-5277-5fef-a9b3-fbc6e44f4af3rz$cc957dd1-a972-5349-98cd-874190002798r>) r?rZuuid5rrrrrMr@rNrArBrrrr test_uuid5os$  zBaseTestUUID.test_uuid5requires PosixcCst}t}|dkrTt|d|j}t|d|jdt dn\t|d| tj|d|jj}t j |ddt |ddd}|||dS)Nrr&zlatin-1)exitcoded)rpipeforkcloserrwriterIr_exitZ addCleanuprZ wait_processreaddecoder)rVfdspidvalueZ parent_valueZ child_valuerrr testIssue8621s   zBaseTestUUID.testIssue8621cCs&|j}t|}|||dSr )rrweakrefrefZassertIs)rVZstrongZweakrrr test_uuid_weakrefs  zBaseTestUUID.test_uuid_weakref)__name__ __module__ __qualname__rr]r~rrrrrrZrequires_mac_verunittest skipUnlessrrr contextlibcontextmanagerrrrrrrrrrrrrrrr rs:;_y(        rc@seZdZeZdS)TestUUIDWithoutExtModuleNrrrpy_uuidrrrrr rsrzrequires the C _uuid modulec@seZdZeZdS)TestUUIDWithExtModuleN)rrrc_uuidrrrrr rsrc@seZdZeZddZddZddZddZd d Z d d Z d!ddZ e ejejvdddZe ejejvdddZe ejejvdddZe ejejvdddZe ejejvdddZdd Zd S)"BaseTestInternalsc Cs|stjj|jddd}ntjj|jddd}||s>d}nd}|D]\}}||j||qFdD]R}|r||dd}|j|d "||j|Wdqh1s0YqhWdn1s0YdS) N:F) _MAC_DELIM_MAC_OMITS_LEADING_ZEROES.T))s52:54:00:9d:0e:67g: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) rrrrr?Z _parse_macreplacerZ assertIsNone)rVZaixrZtestsrrrrr check_parse_macs(    z!BaseTestInternals.check_parse_maccCs|ddS)NFrrbrrr test_parse_macsz BaseTestInternals.test_parse_maccCs|ddS)NTrrbrrr test_parse_mac_aixsz$BaseTestInternals.test_parse_mac_aixcCs`d}tjj|jddt|d"|jjdddd}Wdn1sF0Y||d dS) NaName 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 rTrrZ_get_command_stdoutnetstat-ianAddressrrheadingrrrrrrZ_find_mac_under_headingr?rVrrrrr test_find_under_headings $z)BaseTestInternals.test_find_under_headingcCs`d}tjj|jddt|d"|jjdddd}Wdn1sF0Y||d dS) NatName Mtu Network Address Ipkts Ierrs Idrop Opkts Oerrs Coll vtnet 1500 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 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 rFrrrrrrrrrrr test_find_under_heading_ipv6s $z.BaseTestInternals.test_find_under_heading_ipv6cCshd}tjj|jddt|d*|jjdddgdd d }Wdn1sN0Y||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 rFrifconfigrfshwaddrcSs|dS)Nr&r)xrrr rc+rdz>BaseTestInternals.test_find_mac_near_keyword..)rrkeywordsZget_word_indexr)rrrrrZ_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)rrverboseprintr)rVrHZrequiresrIrrr check_node0s   zBaseTestInternals.check_nodez7ifconfig is not used for introspection on this platformcCs|j}||ddS)Nr)r_ifconfig_getnoder rVrHrrr test_ifconfig_getnode9s z'BaseTestInternals.test_ifconfig_getnodez1ip is not used for introspection on this platformcCs|j}||ddS)NZip)r _ip_getnoder r rrr test_ip_getnode?s z!BaseTestInternals.test_ip_getnodez2arp is not used for introspection on this platformcCs|j}||ddS)NZarp)r _arp_getnoder r rrr test_arp_getnodeEs z"BaseTestInternals.test_arp_getnodez6lanscan is not used for introspection on this platformcCs|j}||ddS)NZlanscan)r_lanscan_getnoder r rrr test_lanscan_getnodeKs z&BaseTestInternals.test_lanscan_getnodez6netstat is not used for introspection on this platformcCs|j}||ddS)Nr)r_netstat_getnoder r rrr test_netstat_getnodeQs z&BaseTestInternals.test_netstat_getnodecCsH|j}||d@d||||j}|||d|dS)Nlr)rZ_random_getnoderr r)rVrHrrrr test_random_getnodeWs    z%BaseTestInternals.test_random_getnode)N)rrrrrrrrrrrr rrr rrrrrrrrrrrrrrr rs:.%      rc@seZdZeZdS)TestInternalsWithoutExtModuleNrrrrr rbsrc@sDeZdZeZeejdkdddZ eejdkdddZ d S) TestInternalsWithExtModulerrcCsVtdstds|dz|j}WntyD|dYn0||ddS)NrZctypesz,neither _uuid extension nor ctypes availablezrequires uuid_generate_timeZunix)r rrZ _unix_getnoderer r rrr test_unix_getnodeis  z,TestInternalsWithExtModule.test_unix_getnodentzrequires WindowscCs|j}||dSr )rZ_windll_getnoder r rrr test_windll_getnodess z.TestInternalsWithExtModule.test_windll_getnodeN) rrrrrrrrrrrrrrr res  r__main__)rtestrrQrrr rrrrrZimport_fresh_modulerrr rrZTestCaserrrrrrrmainrrrr s<   >