ÿØÿà JFIF    ÿÛ „ !.%+&8&+/1555$;@;4?.451 4,$,44444444444414444444444444444444444444444444444444ÿÀ  á á" ÿÄ     ÿÄ ?    !1AQaq"2‘¡±ÁðBRbrÑá#‚’¢²3S CñÿÄ   ÿÄ !    !1QAa‘2ÿÚ   ? 5˜Z¯V¦cø)›t/? z¨±>Õ5€¶‹Á¤·¼z¼Ü¬+ñ®v¤¨_ˆR­BFn©—˜ý®ç̝P8gýt·ÉSTŦˆìät?þé¼íìN/Þa)ì–í6ô… Ï¿øÃj´¿KÇü]ÿ ªô¹-eKànëÕHTx}ýSÜ›ÿ ”7Ø×&µ<¦  ¥ÑO¶[Ù¯ä¨ÞÃÿ PZ-¬;#õ|•oaÿ ©CìÞz3˜öː/¤­ñTûIØ}š^ mÓ%ªxˆ¥ÉŸu=Z+ISe¿45™¼u;ú&WØ÷€æßQ™®{|íx*TC“#ZŠìZ§²‹ 6pv…³¿¡äª*áZÐ%ÒOáˆo"x«OHk w±æ+¬V(kMúŸ5Vö«$ ÁrÏbàb57/luR ¸ÑÛj Òµì`Мq­û žICÀÊ•©4€Âcà¨Ï€O´<èÐ:›ù(Ë^L8þ‘ÍÌ#¸Ð_Ì©ÙK(Öz 4¬û+¸;ü’V’84‘¬ÃŽ:[â‡ÔÌáõp¢~§ªlæ£ö{®G>J¼"°‡7¯ÆÉèßû ‹É‹§ÁòÃýâßî ^ƾÙõ‹×óH#«LP½ïX=xÑÍ$|W?•~• îëÔ©ª‹ {ÝT…Kÿ ”hûâá)J*ö˜–ÔU;iÇ€/ ÆþjóZ\ýwØ=Ìm ºèËL9 ýèÆð/¨’¥öo=nË.%Îì ŽÕ¯È|{Oj²ƒE6e/ßdÄõ²Ìâ1O®ò×TsəԸhOMýíMˆ¿¼H˜l²,7Â¥#MF/Úf°Ö½± ¸–dr‹NýÊ íjqx{œÉ ä-È ¦ øÄër¨q°ð †nцýÑÄÆ’mä…n<0È™;ÁÝá¯ÁZƒ7FÀmì­ É&9ˆîéi¶ùN§Y• ÃZãAâ?•‡©‰ , ó¾IŸŠc1 4â&y­&pŠ­6;M À 0¹qç»p.á …ŸÅáK@%6·y6ƒ‰3?”úºŽ‰éX5ªPT §µ!=Mž«Ú½‹ÅgÂSâÉaþÓoö–¯ÁÔìR>5éÿ üs¶ÆUcÌ kÇR ]ÿ ù¬¼«VŽ;Â|‡~¢¦”ÏŰæ {L™Õ°Óv¹ò¸írޡעCÃ!íVÕ {¶»sŒNPg/ "uÕbkm²“$ďå¿é¹§°½æz¯6 †s¿!s–wÚÝ“™Œ °.ûj>·+™Òa…©Œ&rÝÎtÛë긪Ît’LAVp%c Úý[ÄzJ¾ÇàXXç@˜ó<êL]·T˜¾¥1Ó©V‡g´æ½¦Ý@¹óø!_@´ÞâSÁ —S3™•& ]@JHÚý©ZŽ €×æÔr»Áf!‡yÞ4Mv*èÓã_{‘åóUuљØ«Oïé*®EvÑ Œ÷‡U \"㪒ÍK+À 4“M¡ï:0¥5í!'<@î´”>Ç»&Z–ïCCV˜Ì5Šo&îhè.žû |ÓK©h$s6KìŒëã)¹hI¦GïOåóI;ììü#É$Š0…Ææ¥TØ.5­¾gn´ “ÂÖ\:hœ89G)J@„}œ:’Ò{/Š"¦_Æ×7Æ3VÇŠÊa]ÚŒÙ€Ä–=®uÁßâACZƒ§§£ Qnâ:«,×{tyø¬iÛcœÜÄ€H½ÄÍCk´÷šß .W'b¤Íåh]÷€=,Žv×cÚEÚHXJX¶îo¨FÒtèöŸ>ªª6[J®Fµ£sGÁeqõfe\íjÒÐïÄÐGˆe1Ø‹.Ø”‘Ëuø Y­ˆÜ ŽG|zùªüMpDnQWÄ”%JŠ™)â*p@Örš«ÕT2Ð%ˆG#ª„ ·¤!°ŸOTÂT¸aÚ%4&h™LµšØüÐ.F¿²ÐÞ_Ç‚¾ÅÃaÜ÷09Æ q€öy˜v‡85õN÷]¬äѼóS{°_MެúÔ#°Ç¸0åÞè2ëôPcvÆw9®ií1Ä8F™˜à‰´+‰Ik1òÝ7“Ñ×ÒsÝ\x‚h`ÞÑ`ó"|µEcý£n˜h`}GÞ !±ù²Ápü²ß6 0ïi󜵩SÈÇ7˜-ÕURO˜¦´f$ªž-Í6(œ}<„ éc øs]ŽŽ„*—¾ ìdŽ„)méª\¿êÎIg¾ØÞ~I#C/¼¼´EÁÈŽi8“©õådô·>euä ƒ'Ê×लR1ÉJE1ÐAát`t;ÇР%Ý<‡¥„ÍÆ`×Oyó)õiI€ñQaŸ4Ûù\áàaÃÔ¹HÃu¹*k€¦<„e S‡&õÏ B!ŽhüÞ`yj}mªf×\¿ Ç~æ­9‡û\՞Ǖg²1Žû5V7 !àöšm° c`ܬøÇìµÒ'P"?…´Ö,"§^•õލsÔ)6˜sæéÍR¼ ò|Sl”‹7 nPW Gòú÷½§O¯‡„l¡kSÞŒr½PÊ@æ¢pŽ-mÿ #Ÿ˜Àº¶Áä¦;ïÔæ$1££`“Õ>„—·ž)ßð³ñ#Ï Ô$¶œ‰ÊE‹À;÷º ¯«P:Ñ”8–IÊtpÞ3ª“>ê“þës4ò2OÏÕ­±zô†Õ§‰.÷ä¸;¿˜“'œ›žª}«Œ{ª±Ì 9ÔóÞÕ‡0 $íWV3Üì¬ —@kÝ4@¿r¼±½¬™›?øØæ´'Áé®CË3-g$˜ö‡×auÚi´Žp/êÛ æF›Ú2v‹ã¿¿,nB1̨ƃqÞa5͝@&Æû“él÷ \C²½UÍc ¯k×¢U ÖéQå™—-r wô ÞÏ<Ò=&=ÿ Ôê Òêˈt,i—;LîÜ á¸*ÚÃ1$êL•LÍ <É)ýÐà’ ;F™{ƒ™˜€&'}‚ãÄK`¡ÞT@I;®žZóè‚s’7®°›+§O­Åq©é»²9<Ô J ¼9O’HL»Ùïì¸rk¼Ž_ý‘TŸu[²ßÚŒ·ü÷B%¯E ŸÔX5êO´ Ç•€’I0 ÉJX` ñ¹õ%;µŸD‘«´€àwÒ™U ûئžÖö\×®×´8 ½‡ºÐÆÓ§?Àkmœ=;d5*@-ì0F Rªýš[Ü6âö̃ڸr*KA9· u*µæ£?U¸Âêí†8@¦X4 e-ò„0s{ HâUpU?¼mñRa°®a%Ð'tÉ×’\¾ÊÉ]t›h>·(Ë@R¼¡Ãt h}’O÷au<+nT…Ö…MӐ??Óe95 q>í/;&JSû °¯ÊéÞ øƒ*Ã2½Ài&:nôUl=¾¿5eˆ3”ñc|Ú2V”>„»&eE;«ÚäC p¢Û úy 9š[ŒÌx¼擼A&DåÒ¯ˆ¤ÀÌ;"˜ ÏQä¸åhÊ}Ûq«Û0WžÒ|»€ø®öCm5•\ÇÀ§Pe3£]0ÃàLDÉ‰1øªxjgwT‚÷¿LΨK‹›ùs—xˆÜ±µ kæ¸f‰‰ÜGk/LÛØ6d9ò¶ùA{ƒA3š/¬D¬khÓk‰`˜"㯒r¿±Óã jx‡°e}<Ñø\3y:'À•/h½Í€Ç4~g ?Û(¼]v‘ªlKÎâ~?O‚W%{Ì:“'©úNq¾›úo(X’¥¯ˆ nFê{Ç€ü?º'ë ø‹ì Þ09ŒÌç9Æ —ËC`j@ÓÄ(+a‹un¸#ÂꟋ{K`‘ÑÍÍ'à´»/Û,KW;Þ4²þð ï Nm|~fGÏ(…³Ã)«1ö­Õ ¥‡¨©ƒÃ™ü-s=à=U66Ï«Ýc蓦W¹íž®›nÔ%êÇìŒ<#Ü×84ån®Ð ÒåOC` ñânÑs‡¢ç 1õ%Îhì½Ã½® e:ݼUZo™`  ÅZŸŒÊ«ê1ÏÄo$q¹Þ€©ˆhÐÉä¯ñ[!…Ú˜àJ:x2$Íß&PåT£6ç— ‡Í*4Ýšçjÿ ‰É nófÐ ó(L5C•åÆ\rMÒ@ò }y-W}™üýVù—ú¢=Ù”c®‘< M ž ´Phr ¦©TD ‘ù.$´÷O‡‘V2Æò.=IUŒ=ž‡â¬i™aþÓåÙ?òUø'ØÖ•.~* šTŒ!•-×áºTâ®ä#õü'´ eýlYÅÓeÕKÂrT"CÚ@u!Óxƒ{š3€}1¿(r}%«nËamjÑ%ÑNEò v ˜à  σöK³,*º.àzù¨™Ó ÚçâU¦*¿ 9{%Ö¹ njûdaXöb) kÛÆ±ûÓ\°M7ˆÂ=û›ç¿Ã‚­V»Cg–8ÙêE- j)k$º`Ã-ùEýeBÆÇ]c¡°ñty&Òd0nõ'¡W+ƒ*|–øµFa\GQªEAÔp5\Ǽ·¼Ç8·õ -â§Ú[ ‡ uZeÖ 3}×d'+¹:ð+K†Û®s!Ï$úe€<Û”x)1»a­¡LC]¸µík…ÚàA»AYº{†ªS[¦5HÒ7ù --,ísòDØ€èk ÞÀîÜ ò@â( ËNˆë›4ô½•/¦o‡€Û7 ê•ÆêòðÜy'Án½µ á˜ݦ ndeo…[ì¶Ê,¥R³Ä=À±—–ß;£™´ñSâ*g§”ïaið‘Jå~™ÓÞ ß³Õ¢»8x埒²52>AÊb&-÷\7´éÄù€T˜,w;3{ï˜k…à¹ÄqÀ«œ{€\ ˆ¾[´¨јr &Úé„Ívˆ±8†¿]|¬ņ4I×pÞS1ÈÖz‰#Ìv‡G!YNògñ:màTz¢Ý1ô©^O=~ë|5Bã™ç•¼µõ•bÆ@úÕS¬ÈŒ#¬zünrŸ û” Z²•èðV"ÁHÚý©wÝ €7¼Ìu1hÑa3Éä û f$o¿É ™Ú›ÝçnpÒ3äÌ3†Í§,Äï]$‰/pê †«À¼¸e9­Æê_C]žƒ·ý·frÁN«, E=›Çq -‰öŒ:aÏ¿±í&£Í:-} 84‘ÿ eƒQÑeëSsuiA ³g㟥ú£?ÿ ʼn*”“÷aühe:ÊWa@ÒÞk±eØ] F Ô—r.åä˜ @ö¥ªZoÐýYL·¥S²G/‡ñ <~*ZÆ´è>JlòàÛÆ½ÿ 窘ìGN¢:I®KšJp/`íIÁÀõ#Ä-€ö­šµŒoF4|ÆQØÆ@Ì|£Ô…¢À{9˜è½Üó›€ôYÒÎYsið;ís¤€à²ˆ‚4qÉVŒI$ ‰"° æµ8cXGjœˏ¡Aâý•ËÜ¢ûï e·çLx']á"oÅÎê3¯Ç—¹”ó0nå‚âg{Œñ> S´˜îè°g238‚ãköÝfÚd´6Ò€;ò÷±¢™¼›º ¢Æ'¥Ðx'e¬ç ]bÈÆV¢ó‹kýBO ðÊâ$Ÿ!×T 3Mýמ žìٍàÌü‘8÷€àæØ8æ©6‰©L´«…oãpð„~Çk‰!ñ;‹”ÛžÍ àž±z Ÿôû øŸÝužÏ;ÿ #|u6™Þ¬ÚˆÐõA4¶â|ôl|Ê2ŽÇ¤ÝÅÇY.<#Aí.k§hóF‚”Y; M½Ö4hŸ4&›­¿tès´%FìL¥£Ãk‰ÇT¤haÁ¤ÚxfÉ`ÑìË›>i 3t‚:,–+^÷´–{Û–Nxi"x‘Ûg î¨>¥Õ܁ùZH,2Û“:8xÊ¢Çí9.É-Ìâã-=çjwµS˜dütžçwýGòú®®ûº_ˆýx$–¡ãøO EÚÛÏ÷R„×w+3£Á£öUMyR²¹âŒ°š›¸Ñãò9§Ó_Dl+Ùßc›úšGÅÌc†Ž!Ko=¶.‘Îÿ c²(2®V mª.ÿ ¹B›¹å ù„öŸSV>™ü¯$y:G¢Z×àøúdî¹û­·ýÇ´:•c LÍõi_‹ö+ÎæGÊè>OŠ•äž´§Þ{X}¨1ÚTc›»Qþ•êô°t¿OP?eæ~É{5]•ÙR£r5†nZ\ã@ &îJõ ¾àC°þV>fé¥/ü5ñÊIº_é5 ;e­h<@ Ä&æÃëE%;X,ÒãÆÞ`Oò¦kŸm#˜!ÀyÄ¢| óLšò¥Ä` ¶R=|ÈCâh5ò3DˆïF†ðÒ#ÅìÛœ?¸yhBãœí ZxßÎÄhºRK„`Þödvײ™ÀÈÑÒgŒuY w³%†ƒÓzõ ÖÏp‚dH®¦A´ù§»ÓÇMæ~)ˆð‡û:ù&Ä •vGD´À n ݇¼Ö8Fö óáà£~Ë¥x`oK|Ä?fxiØü%pìR>éò+Û±éÎ>núlFŤ'tq8LZÏvÃ?„¡ß±È⽆¯³íü@x|PöUäèØã¡ð‚ŒAìÏ"vÍwóŸÍ{ ý0.z È•Ö{,N¡£¡ŸKÕÙž>Ýœþ ÍÀ°<×EA!Å‚D™IúOÍ¡>ôG}Â` ÍßkÜL™Ž Þð™ {IøF²¹òQ3&!ÃÂÞz.d&Ï-sH¸,Ôõ˜ŽP€ 77ˆÝ¼ÊëÜw =cÕ Ú,ØÐ5ÎYÐ)ì´öœgŒ[¤ßv㙑8心>h]§µháYš£²ºÑ.{Ï7Sð•?´~×SÃKýJÛ˜ ™Íäiúu<µX¶1õ^kâçIÑ£sZ4h>j*ÔšD:4­¿_ ÷¸ Õxæÿ ¸?Mù _•­ÊÐ ä ÷ý ÑwL œ­ïnTkÛUÍN©ë:¦fV ¶ÜÔÜMªÅâA½–¿R×TXš-%iTÊT•‡Ù‚JôϐZxWÑè‰f‰òG º ×Õû2aZ7OU3[“×AT–ÞŒ…-‘¤”Ì ì&(ˆ¿­•ƒkï’:ðY¦W‘ Å)“†‘˜³Åtcø˜ñTÂwÚÇ4|üLÇªí–v- qˆèU qPE.†â‘˜µ Æ,ÐÅs]8¾„oúÑ i>ÜxxÈó)ƒ ´æÁâØ$À‰vžŸf$Ž |ãw;ÀÁIJ»b` {¦Ó¤Ú$©YÀ‘n@Óïž«9J¼êG m¤ ܯ¹ÌW4€ÐÒÅÛ‡#褕Ÿn-?í|с¥÷Ú¹¬'´ÞÜ9ÓK `hê£SÄSà?7—Wí_´…óB›»:=Ãïq`<8ñÓŒÑlú2d¬ê³£hÖ[l|$vÝro~'R®‰§°ñmY ͧäP |PUª¹·:3Œ[Û{Xÿ ºâ@‚W–Äé u‚ ¯´*=íή.pûÒdt @G‰¬ s¸ ëÉücr ÞæÑ¨Ê@>¤¢Ö±. Þ'¯°ÌME[YéïĵÂCå½ Ué©Áû'Ê9%eÔðNU”ë‘ÌsD3/®+UI˜9h.WC”빓$#:pz:YÓ ¿xž* ³$Í +$kñAŠ‹†¢ Uê>¸)_š¬÷©ßAÂÔb9ÇU ¯¾á•9¯ÏÏ÷O÷¼¼Fähal1‰3Ì[Ïr•´UCksNÐ] R‘¸¥H+§Šé†c©vÖÞ0iÓ76s†î!§=ß ¼~Ô'°Ãmäoäš³ªøi1úÉ)³yV8 CLÄØÁ‘WYïi€H6ÖÑiámø^ÈY´°Ñ7¥Û*—Ñ©L«Qƒï—Ùrÿ ›£Ð*š¸ˆL©ˆ$ˆ ÷¾D§9È®«qbqC)–ˆïv´çñsÑVT­Ø, <àïºÀO«Jý·õ àfPìð .wFšir´þ’2_Y *Æ€x\« ì€9š@ Ž|F⇥ˆkZ@hÖÄ0t¿-<“‹qµ¾*ZL¤Ú)&BJpÓF5=$„at*Zš$’ÑtdûÝRI1 2މ$€$I$#‰SÞ’Hë¬ï;Á$¡t$’`<(ñÇt)$‡Ð.Êf¢X’Kt=Éé$‚ˆªè¢oÝëòI%Rgcª÷ŠyI%¡‰ÿ !ñ)´õ $¤ Ô’IIGÿÙa 3gr@sddlmZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddl Z Gddde j ZGddde j ZGddde j ZGd d d e j ZGd d d e j Zed kre dS))run_with_localeNc@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZeddddZeddddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+S), TypesTestscCsjddis|ddd}Gddd}|}|s<|d|sJ|d tsX|d |sf|d dS) Nxz!{'x': 1} is false instead of truecSsdSNrrr./opt/python39/lib/python3.9/test/test_types.pyfz'TypesTests.test_truth_values..fc@s eZdZdS)z'TypesTests.test_truth_values..CN__name__ __module__ __qualname__rrrrCr rzf is false instead of truezC is false instead of truezsys is false instead of truezx is false instead of true)failsys)selfr rrrrrtest_truth_valuesszTypesTests.test_truth_valuescCs"dsdr|dn |ddS)Nrz0 or 0 is true instead of falserz 1 and 1 is false instead of truerrrrrtest_boolean_ops!s zTypesTests.test_boolean_opscCsddkr.testidz1.5ez1.500000e{0:+03d}g;%_nTr*z 1.500000e+100r+gEw;S%Tz 1.500000e+101gj+c4+z 1.500000e-100gUO+z 1.500000e-101%gr1z%#gz1.00000)ranger strformatr,r-)rr/irrrtest_float_to_stringZs zTypesTests.test_float_to_stringc CsNd}d}||ur|dddkr,|dddkr>|dddkrP|dddkrb|dddkst|dd dks|dd \}}}||||||krd ksn|d tj d }dD]R}||}||} | |kr|d||| |ft| tur|dt| qdD]>}||d }||} t| tur(|d| t| fq(tj}dD]>}||d }||} t| turr|d| t| fqrtj} || d td|| d td|| dtdz dd>WntyYn 0|dz dd?Wnty>Yn 0|ddS)Nz256 is not shared$zint opi ii)idi+zint mul commutativityr)rr= z%r * %r == %r != %rz%expected type(prod) to be int, not %rz#expected type(%r) to be int, not %rz*(sys.maxsize + 1) should have returned intz+(-sys.maxsize - 1) should have returned intr>z+(-sys.maxsize - 2) should have returned intr"zint negative shift <>)rrmaxsizetyper(assertIsInstancer) rrrZxsizeZysizeZzsizemZdivisorjprodrrrrtest_normal_integerstsj &          zTypesTests.test_normal_integerscCspddkr|dddkr$|dddkr6|dddkrH|dddksZ|dddksl|ddS)NgB@zfloat opg(g(@gBg8@g8rrrrr test_floatss zTypesTests.test_floatscCstddkr|dtddkr,|dtddkrB|d d d krT|d d d krf|d ddkrx|dtddkstddkr|dddvrddvrddvrddvrn |dd}d||dkr|dd}||dd|||dddd||dddd||dddd||dddd ||d!ddd"||d#d$|||d$d#d|ddd||d#d$dddS)%Nrrzlen('')rrzlen('a')Zabcdefz len('abcdef')Zxyzabcdezstring concatenationZ xyzxyzxyzzstring repetition *3zstring repetition 0*rczmin/max stringrdzin/not in stringZgxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxz%s!!znasty string formatting bug 0123456789r>Z02468Z13579r%Z 9876543210Z97531Z31r0)lenrminmaxr,)rrrrrr test_stringss*""  zTypesTests.test_stringscCs(|ttdd|ttdddddS)Nrr>rQr=)r TypeErrorrDrrrrtest_type_functionszTypesTests.test_type_functioncszfdd}|ddd|ddd|ddd|dd d |d d d |dd d|d d d|ddd|d dd|ddd|d dd|ddd|d dd |ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|d dd |d dd |td!d"dd!|td!d"dd#|td!d" dd$|td!d" dd%|dd&d|d d&d |d'd&d(|d)d&d*|dd&d+|dd&d,|dd-d+|dd-d,|dd.d/|dd.d,|dd0d1|dd0d,|dd2d3|d d2d4|dd2d5|dd2d6|dd7d5|dd7d6|dd8d9|dd8d6|dd:d;|dd:d6|d|d|dd?d@|d d?dA|d dBdC|ddDdE|dFdGdH|dFdIdJ|dKdIdL|d.test[rMZ 123456789rrL-r2r%-1z-3z 1z -1z+3z +1z 3  1rQr3XZ4d2i.z-4d2Z8xz 4d2z -4d2ber@ZBEz-bez-BEoAZ101iz-101Z2322z-2322z-oz oz 2322z+oz+2322rZ11z-11Z 10011010010z -10011010010z-bz bz 10011010010z+bz +10011010010rz#bZ0b0z-#bZ0b1z-0b1z-#5bz -0b1z+#5bz +0b1r0z+#bz +0b1100100z#012bZ 0b0001100100rRz -0b001100100z#oZ0o0z-#oZ0o1z-0o1z-#5oz -0o1z+#5oz +0o1z+#oz+0o144z#012oZ 0o0000000144z -0o000000144z#xZ0x0z-#xZ0x1z-0x1z-#5xz -0x1z+#5xz +0x1z+#xz+0x64z#012xZ 0x0000000064z -0x000000064@Z 0x000001e240iz -0x00001e240z#XZ0X0z-#XZ0X1z-0X1z-#5Xz -0X1z+#5Xz +0X1z+#Xz+0X64z#012XZ 0X0000000064z -0X000000064Z 0X000001E240z -0X00001E240{,Z123iz-123z1,234z-1,234z123,456z-123,456z 1,234,567iy)z -1,234,567z010,z 00,001,234 Ze10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000Ze10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100z1.3z+cz,nz,cz#ccSsg|] }t|qSrchr.0rrrr br z1TypesTests.test_int__format__..rzcSsg|] }t|qSrrlrnrrrrpcr AZzbcdoxXeEfFgGn%zeEfFgG%)rrr%r0rRIi.i0<20Z123456000000000000001<20Z12345611111111111111*<20z123456**************0>20Z000000000000001234561>20Z11111111111111123456*>20z**************1234560=201=20*=20) r(rrr-rWr3ordr,r )rr/rYvaluerrrtest_int__format__s                                                                                                          zTypesTests.test_int__format__ LC_NUMERICz en_US.UTF8cCs\tddD]L}dd|}|tjd|ddt|d|tjd |ddt|d q dS) NirkgeAg$@r1Tgroupingnz%.10gz.10n)r3r,locale format_stringr5)rr6rrrrtest_float__format__locale{s z%TypesTests.test_float__format__localecCsd}tddD]*}|tjd|ddt|d|d}qd }d }d }d D]d}|ttd|tt|||ttd|tt|||ttd|tt||qJdS) Nl ~l!]crz%dTrrrkz>20nz<20nz^20n)rbi90rgrjiNarZrtl4? )r3r,rrr5rS)rrr6ZrfmtZlfmtZcfmtrrrtest_int__format__locales   z#TypesTests.test_int__format__localecs6fdd}|ddd|ddd|ddd |dd d |d d d |dd d|d dd |ddd|ddd|ddd|ddd|ddd|dd d|ddd|ddd|ddd|ddd|ddd|dd d!|dd dd"}d#D]D}||}t|d$|d%d&|dd'd(qd}d#D]D}||}t|d)|d%d&|dd'd(qR|dd*d+|dd*d,|dd-d.|dd-d/|d0d*d1|d0d-d2|d3dd4|d3d5d4|d6dd7|d6d5d7|d8d9d:|d8d;d:|d8dd;d?|d>dd@dA|dBd@dC|dDdEdF|dGdHdI|d8dJdK|d8dLdK|d8dMdN|d>dLdO|d>dMdO|d>dPdQ|dRdSdT|dUdVdW|dUdXdW|dDdXdY|dDdZd[|dd\d]td^jdtd^jd_d`dattdbtdcddDdedattdftdgddDD]}|dhvrltt d|tt d|tt d|tt di|tt dj|tt dk|tt dl|ql|ddmdn|ddodp|ddqd |ddrds|dtd du|dtdvdw|ddxdy|ddzd{|dd|d+|dd}d+|dd~d|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddd|ddddS)Ncs(|||t|||dSr)r,r-r5)r rYr.rrrr/sz-TypesTests.test_float__format__..testrr z0.000000rz0.0g{Gz?z0.01ggGz?r2z1.23gGzz-1.23Z1grz gr_r&r]z+gz+1gϠ#l{wiz 1.1234e+200Gz 1.1234E+200z1.000000z -1.000000z fz 1.000000z+fz +1.000000g3R<=ɥR)r Fbi.r:)Z 112340000000Z 112339999999r*z 1.000000e+00z -1.000000e+00Ez 1.000000E+00z -1.000000E+00gM0k\Dz 1.123400e+20z 1.123400E+20gZbtiz+1e+200+g0l4viz +1.1e+200gH@Z010fz 1234.000000Z011fZ012fz 01234.000000gHz -1234.000000Z013fz -01234.000000g_~Hz -01234.123412g7$z011.2fz -0123456.12g333333?z010,.2z 0,000,001.2z011,fz 1,234.000000z012,fz013,fz 01,234.000000z -1,234.000000z014,fz-01,234.000000gz015,fz-012,345.000000g$z016,fz-0,123,456.000000z017,fz-0,123,456.123412z013,.2fz -0,123,456.12%z -100.000000%g@rcSsg|] }t|qSrrlrnrrrrpr z3TypesTests.test_float__format__..rrqrcSsg|] }t|qSrrlrnrrrrpr rrrszeEfFgGn%g}Ô%ITg}Ô%Ig0.++g0.+z.0ez1e+00z#.0ez1.e+00z.0fz#.0fz1.r'z1.1z#gz1.10000z.0%z100%z#.0%z100.%Z0ez#0eZ0fz#0fz.1ez1.0e+00z#.1ez.1fz1.0z#.1fz.1%z100.0%z#.1%g@ruz12345.60000000000000rvz12345.61111111111111rwz12345.6*************rxz000000000000012345.6ryz111111111111112345.6rzz*************12345.6r{r|r}) r-r,rSassertInrrWr3r~rr5)rr/r fmtr.rYrrrtest_float__format__s                                                                                 zTypesTests.test_float__format__cCsr|ttdddd|ttddddd|ttddddddD]}|ttdd|qTdS) Nrr2i'rMra1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111.ZxXobnsri)rrr5)rcoderrrtest_format_spec_errors-s z"TypesTests.test_format_spec_errorscCs |tjd|tjddSNr)Z assertGreaterobject __basicsize__tuple __itemsize__rrrrtest_internal_sizes@szTypesTests.test_internal_sizescCsD|tjtj|tjtj|tjtj|tjtjdSr)rEr__init__typesWrapperDescriptorType__str____lt__r(rrrrtest_slot_wrapper_typesDsz"TypesTests.test_slot_wrapper_typescCsJ|tjtj|tjtj|tjtj|djtjdS)N*)rErrrMethodWrapperTyperrrrrrtest_method_wrapper_typesJsz$TypesTests.test_method_wrapper_typescCsx|tjtj|tjtj|djtj|gjtj|tj dtj |tj tj|tj tjdS)Nr from_bytes) rEr4joinrMethodDescriptorTypelistappendBuiltinMethodTyper(__dict__ClassMethodDescriptorTyper__new__rrrrtest_method_descriptor_typesPsz'TypesTests.test_method_descriptor_typesN)r r rrrrr!r$r)r7rIrJrVrXrrrrrrrrrrrrrrrs0  9*  rc@szeZdZejZddZddZddZddZ d d Z d d Z d dZ ddZ ddZddZddZddZddZdS)MappingProxyTestscCsGdddt}ddd}|||||ddd}||||tddiddi}|||||t|jd|t|jd |t|jd d gdS) Nc@s eZdZdS)z4MappingProxyTests.test_constructor..userdictNr rrrruserdict_srrr>ryrrrk)rrrr)dictr, mappingproxy collectionsChainMaprrW)rrmappingrrrtest_constructor^s  z"MappingProxyTests.test_constructorcCs4tt|ittt}||hddS)N>__or__ __getitem__get__iter____len__ __reversed____class_getitem__valuesitems__ror____ior__ __contains__copykeys)setdirrrr,)rattrsrrr test_methodsms zMappingProxyTests.test_methodscCsz|ddd}||dd||dd|t|jd||dd||d||ddddS)NrrBrrrrxxxr)rr,rKeyErrorrr assertIsNonerviewrrrtest_getszMappingProxyTests.test_getcCsGdddt}||dd}||dd||dd||dd||dd||ddd|d|v|d|vdS) Nc@seZdZddZdS)z3MappingProxyTests.test_missing..dictmissingcSsd|S)Nz missing=%srrkeyrrr __missing__sz?MappingProxyTests.test_missing..dictmissing.__missing__N)r r rrrrrr dictmissingsrrrrrz missing=yr)rrr,r assertTrue assertFalse)rrrrrr test_missingszMappingProxyTests.test_missingcCsGdddt}|ddi}||}|d|v|d|v|d|v||dd|t|jd|t|d|t |d || d || dd || dd || d || d||ddS)Nc@sVeZdZddZddZddZddZd d Zd d Zd dZ ddZ dddZ dS)z5MappingProxyTests.test_customdict..customdictcSs|dkr dSt||SdS)NmagicT)rrrrrrrszBMappingProxyTests.test_customdict..customdict.__contains__cSstdS)Niterrrrrrrsz>MappingProxyTests.test_customdict..customdict.__iter__cSsdS)Nrrrrrrsz=MappingProxyTests.test_customdict..customdict.__len__cSsdS)Nrrrrrrrsz:MappingProxyTests.test_customdict..customdict.copycSsdS)Nrrrrrrrsz:MappingProxyTests.test_customdict..customdict.keyscSsdS)Nrrrrrrrsz;MappingProxyTests.test_customdict..customdict.itemscSsdS)Nrrrrrrrsz.customdict.valuescSsdt||S)Nz getitem=%s)rrrrrrrszAMappingProxyTests.test_customdict..customdict.__getitem__NcSsdt||d|S)Nzget=%sz default=%r)rr)rrdefaultrrrrsz9MappingProxyTests.test_customdict..customdict.get)N) r r rrrrrrrrrrrrrr customdictsrrrrrz getitem=valuerrrz get=valuezget=default=Nonerrr)rrrrr,rrrrrSrrrrr)rrZcustomrrrrtest_customdicts   z!MappingProxyTests.test_customdictcCsRddi}ddi}t||}||}|d|v|d|v|d|v||dd||dd|t|jd|t t |d|t |d| }| ||||tj|||||dd||dd||d|t t |d|t t |d|t t |ddS) Nrrrr>rqr))rr)rr>rr>)rrrrrr,rrrrsortedrSrZ assertIsNotrErrrrr)rZd1Zd2rrrrrr test_chainmaps,    zMappingProxyTests.test_chainmapcCsL|td}|d|v|d|v|d|v|d|vdS)NrrrrLr)rrfromkeysrrrrrr test_containss zMappingProxyTests.test_containscCsi}||}|}|}|}|t|g|t|g|t|gd|d<|t|dg|t|dg|t|dgdS)Nrr)rr)rrrrr,r)rrrrrrrrr test_viewss zMappingProxyTests.test_viewscCsNtdD]@}tdd|}|t||||}|t||qdS)NrKZabcde)r3rrr,rSr)rZexpecteddatarrrrtest_lens   zMappingProxyTests.test_lencCsd}d}tt||}|t|}|t|t||t|t||t|t||t|t|dS)Nrr) rziprrr,rrrr)rrrrrrrrtest_iteratorssz MappingProxyTests.test_iteratorscCsNdddddd}||}|d=t|}|t|td|tt|dS) Nrr>rrQr=)rrfoorLrMrZdcba)rreversedr,rr StopIterationnext)rrMmprrrr test_reverseds  zMappingProxyTests.test_reversedcCsfdddd}||}|}|t|t|||d|d<||dd||dddS)N3])key1Zkey2Zkey3Fr)rrr,rDr)rZoriginalrrrrr test_copy s   zMappingProxyTests.test_copycCs4dddd}||}|t|ddgBWdn1sB0Y|tddg|BWdn1sx0Y|t|ddgO}Wdn1s0Yddd}|||Bddddd |||Bddddd ||dddd||dddd||ddddS) Nrrr>)rrrL)rr>)rMr>rQ)rLp)rrrLr)rLrrr)rrrWZassertDictEqualr,)rrrotherrrr test_unions   * * * zMappingProxyTests.test_unionN)r r rrMappingProxyTyperrrrrrrrrrrrrrrrrrr[s 0  rc@seZdZGdddeZddZddZddZd d Zd d Z d dZ ddZ ddZ ddZ ddZddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-S).ClassCreationTestscs<eZdZfddZefddZefddZZS)zClassCreationTests.Metac st|||dSr)superr)clsnamebasesnskw __class__rrr+sz ClassCreationTests.Meta.__init__c st||||Sr)rr)mclsrrrrrrrr-szClassCreationTests.Meta.__new__c s$t||}d|d<|||S)Nrr)r __prepare__update)rrrrrrrrr 0s z#ClassCreationTests.Meta.__prepare__) r r rr staticmethodr classmethodr  __classcell__rrrrMeta*s  rcCs,td}||jd||jtfdSNrr new_classr,r __bases__rrrrrrtest_new_class_basics7s z(ClassCreationTests.test_new_class_basicscCs"tdtf}|t|tdSr)rrr(r issubclassrrrrtest_new_class_subclass<sz*ClassCreationTests.test_new_class_subclasscCs`|j}|dd}tdD]B}tdt|d|}|||||jd||jdqdS)Nr> metaclassrqrrr) rr3rrr4rEr,rrq)rrZsettingsr6rrrrtest_new_class_meta@s   z&ClassCreationTests.test_new_class_metacCs^|j}dd}tdd|dd|}|||||jd||jd||jddS) NcSs d|d<dSNrrrrrrrfuncLsz9ClassCreationTests.test_new_class_exec_body..funcrrr>rrr)rrrrEr,rrrqrrrrrrrtest_new_class_exec_bodyJs z+ClassCreationTests.test_new_class_exec_bodycCsBdd}tdttft|dd}||dttfiddifdS)Nc[s ||||fSrr)rrrrrrr meta_funcVszGClassCreationTests.test_new_class_metaclass_keywords..meta_funcrar)rrr)rrr(rrr,)rrresrrr!test_new_class_metaclass_keywordsTs  z4ClassCreationTests.test_new_class_metaclass_keywordscCs2tddid}||jd||jtfdS)Nrrrrrrrtest_new_class_defaults]sz*ClassCreationTests.test_new_class_defaultscCst|j}dd}tjdtft|dd|d}|t|t|||||j d||j d||j ddS) NcSs d|d<dSrrrrrrresz>ClassCreationTests.test_new_class_meta_with_base..funcrr>r)rrkwds exec_bodyrr) rrrr(rrrrEr,rrrqrrrrtest_new_class_meta_with_basecs  z0ClassCreationTests.test_new_class_meta_with_basecsnGdddGfddd}|}td|fi}||jf||j|f||j|tfdS)Nc@s eZdZdS)z;ClassCreationTests.test_new_class_with_mro_entry..ANr rrrrrrrr rrcseZdZfddZdS)z;ClassCreationTests.test_new_class_with_mro_entry..CcsfSrrrrrrrr__mro_entries__tszKClassCreationTests.test_new_class_with_mro_entry..C.__mro_entries__Nr r rr(rr'rrrssrDrrr,r__orig_bases____mro__r)rrrLr*rr'rtest_new_class_with_mro_entryqsz0ClassCreationTests.test_new_class_with_mro_entrycCstdtjtfi}||jttjf||j tjtf||j |ttjt ftdttfi}||jtf||j ttf||j |tt fdS)NL1L2) rrtypingListr(r,rrGenericr,r-r)rr/r0rrr*test_new_class_with_mro_entry_genericalias|sz=ClassCreationTests.test_new_class_with_mro_entry_genericaliascCsGddd}Gddd}Gddd}|}td|||fi}||j||f||j|||f||j|||tfdS)Nc@s eZdZdS)z@ClassCreationTests.test_new_class_with_mro_entry_none..ANr rrrrrrr rrc@s eZdZdS)z@ClassCreationTests.test_new_class_with_mro_entry_none..BNr rrrrrr rc@seZdZddZdS)z@ClassCreationTests.test_new_class_with_mro_entry_none..CcSsdSNrrr&rrrr(szPClassCreationTests.test_new_class_with_mro_entry_none..C.__mro_entries__Nr)rrrrrsrr*r+)rrrrrrLr*rrr"test_new_class_with_mro_entry_nonesz5ClassCreationTests.test_new_class_with_mro_entry_nonecsdGdddGfddd}|}|t td|fiWdn1sV0YdS)Nc@s eZdZdS)zAClassCreationTests.test_new_class_with_mro_entry_error..ANr rrrrrrr rrcseZdZfddZdS)zAClassCreationTests.test_new_class_with_mro_entry_error..CcsSrrr&r'rrr(szQClassCreationTests.test_new_class_with_mro_entry_error..C.__mro_entries__Nr)rr'rrrsrr*)rrWrr)rrrLrr'r#test_new_class_with_mro_entry_errors  z6ClassCreationTests.test_new_class_with_mro_entry_errorcsGdddGdddGdddGdddGfd d d }Gfd d d }td ||fi}||jfdS)Nc@s eZdZdS)zEClassCreationTests.test_new_class_with_mro_entry_multiple..A1Nr rrrrA1r r8c@s eZdZdS)zEClassCreationTests.test_new_class_with_mro_entry_multiple..A2Nr rrrrA2r r9c@s eZdZdS)zEClassCreationTests.test_new_class_with_mro_entry_multiple..B1Nr rrrrB1r r:c@s eZdZdS)zEClassCreationTests.test_new_class_with_mro_entry_multiple..B2Nr rrrrB2r r;cseZdZfddZdS)zDClassCreationTests.test_new_class_with_mro_entry_multiple..AcsfSrrr&r8r9rrr(szTClassCreationTests.test_new_class_with_mro_entry_multiple..A.__mro_entries__Nr)rr<rrrrsrrcseZdZfddZdS)zDClassCreationTests.test_new_class_with_mro_entry_multiple..BcsfSrrr&r:r;rrr(szTClassCreationTests.test_new_class_with_mro_entry_multiple..B.__mro_entries__Nr)rr=rrrsrr*rrr,r)rrrrr*r)r8r9r:r;r&test_new_class_with_mro_entry_multiplesz9ClassCreationTests.test_new_class_with_mro_entry_multiplec sGdddGdddGdddGdddGd d d Gfd d d }Gfd dd}Gddd}td|||fi}||j|fdS)Nc@s eZdZdS)zGClassCreationTests.test_new_class_with_mro_entry_multiple_2..A1Nr rrrrr8r r8c@s eZdZdS)zGClassCreationTests.test_new_class_with_mro_entry_multiple_2..A2Nr rrrrr9r r9c@s eZdZdS)zGClassCreationTests.test_new_class_with_mro_entry_multiple_2..A3Nr rrrrA3r r@c@s eZdZdS)zGClassCreationTests.test_new_class_with_mro_entry_multiple_2..B1Nr rrrrr:r r:c@s eZdZdS)zGClassCreationTests.test_new_class_with_mro_entry_multiple_2..B2Nr rrrrr;r r;cseZdZfddZdS)zFClassCreationTests.test_new_class_with_mro_entry_multiple_2..Acs fSrrr&r8r9r@rrr(szVClassCreationTests.test_new_class_with_mro_entry_multiple_2..A.__mro_entries__Nr)rrArrrrsrrcseZdZfddZdS)zFClassCreationTests.test_new_class_with_mro_entry_multiple_2..BcsfSrrr&r=rrr(szVClassCreationTests.test_new_class_with_mro_entry_multiple_2..B.__mro_entries__Nr)rr=rrrsrc@s eZdZdS)zFClassCreationTests.test_new_class_with_mro_entry_multiple_2..CNr rrrrrr rr*r>)rrrrrr*r)r8r9r@r:r;r(test_new_class_with_mro_entry_multiple_2sz;ClassCreationTests.test_new_class_with_mro_entry_multiple_2csiGfdddt}tdtf}tdtfd|i}td||fdti\}}}||||||t|ddS)Ncs eZdZddZfddZdS)z0ClassCreationTests.test_prepare_class..Ac_stj|i|Sr)rDrargskwargsrrrrsz8ClassCreationTests.test_prepare_class..A.__new__csSrrrDZ expected_nsrrr sz.A.__prepare__N)r r rrr rrGrrrrsrrrrrr*r)rDrrr prepare_classassertIsr,rS)rrrrrmetarr#rrGrtest_prepare_classs  z%ClassCreationTests.test_prepare_classcCsGdddt}|td"Gddd|d}Wdn1sD0YGddd}|td$Gd d d |d}Wdn1s0YdS) Nc@seZdZeddZdS)8ClassCreationTests.test_bad___prepare__..BadMetacWsdSrrrFrrrr sDClassCreationTests.test_bad___prepare__..BadMeta.__prepare__Nr r rr r rrrrBadMetasrOz>^BadMeta\.__prepare__\(\) must return a mapping, not NoneType$c@s eZdZdS)z4ClassCreationTests.test_bad___prepare__..FooNr rrrrFoosrPrc@seZdZeddZdS)rLcWsdSrrrFrrrr srMNrNrrrrrOszB^\.__prepare__\(\) must return a mapping, not NoneType$c@s eZdZdS)z4ClassCreationTests.test_bad___prepare__..BarNr rrrrBarsrR)rDassertRaisesRegexrW)rrOrPrRrrrtest_bad___prepare__s0z'ClassCreationTests.test_bad___prepare__c sGdddGddd}Gfddd}|}|tdd|t|ff|t|f|f|t|f|f|t|ff|t|fff}|f}|f}||f}||||fD]}|t||qdS)Nc@s eZdZdS)z0ClassCreationTests.test_resolve_bases..ANr rrrrrrr rrc@s eZdZdS)z0ClassCreationTests.test_resolve_bases..BNr rrrrrr rcseZdZfddZdS)z0ClassCreationTests.test_resolve_bases..Ccs|vr dSfSr5rr&r'rrr(sz@ClassCreationTests.test_resolve_bases..C.__mro_entries__Nr)rr'rrrsrr)r,r resolve_basesrI) rrrrLrrrqtrrr'rtest_resolve_basess  z%ClassCreationTests.test_resolve_basescCs>|ttjtfttjf|tttftfdSr)r,rrUr1r2r(rr3rrrr!test_resolve_bases_with_mro_entrysz4ClassCreationTests.test_resolve_bases_with_mro_entryc sbgGfdddt}Gfddd|}tddd|i}|dgtddd|i}|ddgtd ||f}|ddg|d |jtd ||f}|ddg|d |jtd |fdti}|ddg|d |jtd |fd|i}|ddg|d |jdS)Ncs*eZdZfddZeddZZS)z;ClassCreationTests.test_metaclass_derivation..AMetacsdt||||S)NAMetarrrrrrrr new_callsrrrs zCClassCreationTests.test_metaclass_derivation..AMeta.__new__cSsiSrrrrrrrrr szGClassCreationTests.test_metaclass_derivation..AMeta.__prepare__r r rrr r r rr]rrrYsrYcs.eZdZfddZefddZZS)z;ClassCreationTests.test_metaclass_derivation..BMetacsdt||||S)NBMetarZr[r\rrr s zCClassCreationTests.test_metaclass_derivation..BMeta.__new__cst||}d|d<|S)NTBMeta_was_here)rr r[rrrr szGClassCreationTests.test_metaclass_derivation..BMeta.__prepare__r_rr`rrra srarrrrrrrbC2r*r)rDrrr,clearrr) rrYrarrrrrcr*rrr`rtest_metaclass_derivations2 z,ClassCreationTests.test_metaclass_derivationcsGddd|jd}tfdd}tddd|i}td tfd|i}td |fd|i}||||||dS) Nc@s eZdZdS)z>ClassCreationTests.test_metaclass_override_function..ANr rrrrrr8srrrQcsSrrrCZmarkerrrr<szAClassCreationTests.test_metaclass_override_function..funcrarrYrs)rrrrrI)rrrrrargrsrrfr test_metaclass_override_function5s   z3ClassCreationTests.test_metaclass_override_functionc s*ggGfddd}Gfddd|}tddd|i}||t||dg|dgtddd|i}||t||ddg|ddgtd ||f}||t||ddg|ddgtd ||f}||t||ddg|ddg|t$td |fdti}Wdn1s0Ytd |fd|i}||t||ddg|ddgtd t|f} ||t| |ddg|ddgtd|tf} ||t| |ddg|ddg|t"td|t f} Wdn1s0Y|t"tdt |f} Wdn1s0YdS)Ncs.eZdZfddZefddZZS)zEClassCreationTests.test_metaclass_override_callable..ANotMetacsdt|SNANotMetarZrrDrEr\rrrLs zMClassCreationTests.test_metaclass_override_callable..ANotMeta.__new__csdiSri)rr^) prepare_callsrrr Os zQClassCreationTests.test_metaclass_override_callable..ANotMeta.__prepare__r_rr]rlrrrjKsrjcs0eZdZfddZefddZZS)zEClassCreationTests.test_metaclass_override_callable..BNotMetacsdt|SNBNotMetarZrkr\rrrUs zMClassCreationTests.test_metaclass_override_callable..BNotMeta.__new__csdt||Srn)rrr r^)rrlrrr Xs zQClassCreationTests.test_metaclass_override_callable..BNotMeta.__prepare__r_rrmrrroTsrorrrrrrrcr*rrF2ra) rrrIrDr,rdrrWrr() rrjrorrrrrcr*rrrprarrmr test_metaclass_override_callableFsh   4 2 z3ClassCreationTests.test_metaclass_override_callablecCsd}|tdtGdddt}|t}|dWdn1sL0Y|t|j|Gdddt|d}|t}|dWdn1s0Y|t|j|dS)Nz2type.__new__() takes exactly 3 arguments (1 given)r"c@s eZdZdS)z4ClassCreationTests.test_one_argument_type..MNr rrrrMsrrc@s eZdZdS)z4ClassCreationTests.test_one_argument_type..NNr rrrrNsrsrQ)rIrDr(rrWr,r4 exception)rZexpected_messagerrcmrsrrrtest_one_argument_types & &z)ClassCreationTests.test_one_argument_typeN)r r rrDrrrrrr!r"r%r.r4r6r7r?rBrKrTrWrXrerhrqrvrrrrr(s,        6Trc@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZddZdS) SimpleNamespaceTestscCst}tjddd}tjfitddd}|ttdddWdn1s\0Y|t$tjfiddiWdn1s0Y|t|jd|t|i|t|jd|t|ddd|t|jd|t|ddddS)Nrr>rrQrrr) rSimpleNamespacerrrWr,rSrvarsrns1ns2ns3rrrrs , 2z%SimpleNamespaceTests.test_constructorcCs@tt}ttjddd}||i||ddddS)Nrr>rrx)rzrryr,rr|r}rrr test_unbounds  z!SimpleNamespaceTests.test_unboundcCsft}tjddd}tjddd}|j}~||ji||jddd||tddddS)Nrr>rTFrrx)rryrr,r)rr|r}r~rrrrtest_underlying_dictsz)SimpleNamespaceTests.test_underlying_dictcCsntjdddd}||jd||jd||jd|t|jWdn1s`0YdS)Nrr>rQrrw) rryr,rrrrAttributeErrorrqrrrrr test_attrgets  z!SimpleNamespaceTests.test_attrgetc Csft}tjdddd}d|_d|_d|_d|_||jtddd||jtdddddd dS) Nrr>rQrspamhamr=r)rrrrqtheta) rryrrrqrr,rrrrrr test_attrsetsz!SimpleNamespaceTests.test_attrsetcCst}tjdddd}|t|`Wdn1s<0Y|t|`Wdn1sj0Y|`|t|tdddd|_|t|tdddd|`|t|tdddd|_|t|tdd |`|t|idS) Nrr>rQr)rrr)rrrr"r) rryrrrrr,rzrrrrr test_attrdels  " "z!SimpleNamespaceTests.test_attrdelcCs\tjdddd}t}d|_d|_d}|t|dj|d |t|d j|d dS) Nrr>rQrrr" namespacez{name}(x=1, y=2, w=3)rz{name}(x='spam', _y=5))rryrZ_yr,reprr5)rr|r}rrrr test_reprszSimpleNamespaceTests.test_reprcCsNtjdd}t}d|_|tt|||||tdS)Nrr)rryrr,ZassertNotEqualrrrr test_equals   zSimpleNamespaceTests.test_equalcCstjddd}t}tj|d}||_d|_||_|t|tddd|t|t|dd||j||t|t|d||jjddS)Nrr>rr?)rr) rryrrr,rzrrrr{rrr test_nesteds z SimpleNamespaceTests.test_nestedcCstjdd}t}tjdd}||_||_||_||j|||jj|||jj|j||j|||j|||jj|dS)NcookierLrr)rryrr,r{rrrtest_recursives  z#SimpleNamespaceTests.test_recursivecCsrtjdd}t}tjdd}||_||_||_d}dj|d}dj|d}|t|||t||dS) Nrrrrrz${name}(c='cookie', spam={name}(...))rz*{name}(spam={name}(x=1, spam={name}(...))))rryrr5r,r)rr|r}r~rrepr1Zrepr2rrrtest_recursive_repr+s    z(SimpleNamespaceTests.test_recursive_reprcCstjdd}|tt|Wdn1s40Y|tt|Wdn1sf0Y|td|vWdn1s0Y|t|dWdn1s0YdS)NZ spamspamspamrr)rryrrWrSrrrrr test_as_dict9s  & & & z!SimpleNamespaceTests.test_as_dictcCsHGdddtj}|ddd}|t|||t|ddddS)Nc@s eZdZdS)z0SimpleNamespaceTests.test_subclass..SpamNr rrrrSpamFsrr? )rZeggs)rryrIrDr,rz)rrrrrr test_subclassEs z"SimpleNamespaceTests.test_subclassc Cstjddd}ttjdD]f}d|}zt||}Wn.tyh}zt||WYd}~n d}~00t|}| |||qdS)Nr)Z breakfastZlunchrz protocol {}) rryr3pickleHIGHEST_PROTOCOLr5dumpsrWloadsr,)rrprotocolZpnameZ ns_pickledr*Z ns_roundtriprrr test_pickleNs   z SimpleNamespaceTests.test_picklecCsGdddt}|t|k|t|k|tt|kWdn1sf0Y|tt|kWdn1s0Y|tt|kWdn1s0Y|tt|kWdn1s0YdS)Nc@seZdZejZdS)zMSimpleNamespaceTests.test_fake_namespace_compare..FakeSimpleNamespaceN)r r rrryrrrrrFakeSimpleNamespace^sr)r4rrryrrrW)rrrrrtest_fake_namespace_compare[s , , , z0SimpleNamespaceTests.test_fake_namespace_compareN)r r rrrrrrrrrrrrrrrrrrrrrws        rwc@sdeZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ dS)CoroutineTestsc CsPddtg}|D]:}|tdt|Wdq1s@0YqdS)Nrz#types.coroutine.*expects a callable)rrSrWr coroutine)rZsamplessamplerrrtest_wrong_argsms  zCoroutineTests.test_wrong_argscsltjdd}||dGddd}|tjfdd}||t|}||dS)NcSsdSNrrrrrrrusz/CoroutineTests.test_non_gen_values..foorc@seZdZddZdS)z5CoroutineTests.test_non_gen_values..AwaitablecSsdSr5rrrrr __await__{sz?CoroutineTests.test_non_gen_values..Awaitable.__await__N)r r rrrrrr AwaitablezsrcsSrrrZawrrr~s)rrr,rI)rrrrrrtest_non_gen_valuests  z"CoroutineTests.test_non_gen_valuescsdd}|j}|jj}t|}|||||jj|||j||fdd}tdD]8}t|}|}||||jj||qddS)NcsdSrrrrrrrr z*CoroutineTests.test_async_def..foocsSrrrZfoo_cororrbarr z*CoroutineTests.test_async_def..barr>) __code__co_flagsrrrIr,r3cr_codeclose)rrZfoo_codeZ foo_flagsZ decorated_foor_cororrrtest_async_defs      zCoroutineTests.test_async_defcsJGddd}|tjfdd}||||dS)Nc@s,eZdZddZddZddZddZd S) z/CoroutineTests.test_duck_coro..CoroLikecSsdSrrrrrrsendr z4CoroutineTests.test_duck_coro..CoroLike.sendcSsdSrrrrrrthrowr z5CoroutineTests.test_duck_coro..CoroLike.throwcSsdSrrrrrrrr z5CoroutineTests.test_duck_coro..CoroLike.closecSs|Srrrrrrrr z9CoroutineTests.test_duck_coro..CoroLike.__await__N)r r rrrrrrrrrCoroLikesrcsSrrrrrrrsz*CoroutineTests.test_duck_coro..foorrrIr)rrrrrrtest_duck_coros zCoroutineTests.test_duck_corocsJGddd}|tjfdd}||||dS)Nc@s<eZdZddZddZddZddZd d Zd d Zd S)z5CoroutineTests.test_duck_corogen..CoroGenLikecSsdSrrrrrrrr z:CoroutineTests.test_duck_corogen..CoroGenLike.sendcSsdSrrrrrrrr z;CoroutineTests.test_duck_corogen..CoroGenLike.throwcSsdSrrrrrrrr z;CoroutineTests.test_duck_corogen..CoroGenLike.closecSs|Srrrrrrrr z?CoroutineTests.test_duck_corogen..CoroGenLike.__await__cSs|Srrrrrrrr z>CoroutineTests.test_duck_corogen..CoroGenLike.__iter__cSsdSrrrrrr__next__r z>CoroutineTests.test_duck_corogen..CoroGenLike.__next__N) r r rrrrrrrrrrr CoroGenLikes rcsSrrrrrrrsz-CoroutineTests.test_duck_corogen..foor)rrrrrrtest_duck_corogens z CoroutineTests.test_duck_corogenc sGddd}tj|dd_d_d_|tjj | t t j fdd}||t j| | t |tjj|tjj| jj| jjd D]:}|tt|Wdq1s 0Yqt_t_t_t_| jj| jj| jj| jj| jj| jj| jj| jjj d j d !t"j#!$d d d j$d d d !$d d j$d d !$d j$d !t%}|j$_&z$d Wn2t%y}z| ||WYd}~nd}~00|'d !|t($Wdn1s0Y|)j$j*|t(d Wdn1s60Y|)jj*|t( Wdn1sx0Y|)j j*t j fdd}| |t+,}| |dS)Nc@s4eZdZddZddZddZddZd d Zd S) z-CoroutineTests.test_duck_gen..GenLikecSsdSrrrrrrrr z2CoroutineTests.test_duck_gen..GenLike.sendcSsdSrrrrrrrr z3CoroutineTests.test_duck_gen..GenLike.throwcSsdSrrrrrrrr z3CoroutineTests.test_duck_gen..GenLike.closecSsdSrrrrrrrr z6CoroutineTests.test_duck_gen..GenLike.__iter__cSsdSrrrrrrrr z6CoroutineTests.test_duck_gen..GenLike.__next__N)r r rrrrrrrrrrGenLikes rcSs|Srrgenrrrr z.CoroutineTests.test_duck_gen..rztest.gencsSrrrrrrrsz)CoroutineTests.test_duck_gen..foo>cr_await gi_yieldfromgi_codecr_framergi_frame cr_running gi_runningrr>rQz&wrapper did not propagate an exceptioncsSrrr)wrapperrrrsz)CoroutineTests.test_duck_gen..bar)-unittestZmockZ MagicMockrr rrErr GeneratorrIrrr_GeneratorWrapperr CoroutinerrrgetattrrrrrrrrrrrZassert_called_once_withrZ reset_mockrrr ExceptionZ side_effectrrWrZcalledweakrefref)rrrrerrorexrrr)rrr test_duck_gens   ,       "  ( * ( zCoroutineTests.test_duck_genc sGdddtjfdd}||tjfdd}|}||ddz|dWn6ty}z||jd d WYd}~nd}~00|d dS) Nc@s@eZdZdZddZddZddZdd Zd d Zd d Z dS)z:CoroutineTests.test_duck_functional_gen..GeneratorzEmulates the following generator (very clumsy): def gen(fut): result = yield fut return result * 2 cSsd|_||_dSr)_i_fut)rZfutrrrr+szCCoroutineTests.test_duck_functional_gen..Generator.__init__cSs|Srrrrrrr.szCCoroutineTests.test_duck_functional_gen..Generator.__iter__cSs |dSr)rrrrrr0szCCoroutineTests.test_duck_functional_gen..Generator.__next__c Ssxzb|jdkr.|dusJ|jW|jd7_S|jdkrDt|d|jdkrRtW|jd7_n|jd7_0dS)Nrrr>)rrr)rvrrrr2s     z?CoroutineTests.test_duck_functional_gen..Generator.sendcWsd|_|tur|dSNr0)r GeneratorExit)rtpexcrrrr=sz@CoroutineTests.test_duck_functional_gen..Generator.throwcSs|tdSr)rrrrrrrAsz@CoroutineTests.test_duck_functional_gen..Generator.closeN) r r r__doc__rrrrrrrrrrr$s rcsdSrrr)rrrrDsz4CoroutineTests.test_duck_functional_gen..foocsIdHdSrrr)rrrcorofuncJsz9CoroutineTests.test_duck_functional_gen..corofuncrrzStopIteration was expected) rrrErr,rrrDr)rrrrrr)rrrtest_duck_functional_gen#s  (z'CoroutineTests.test_duck_functional_gencsFdd}|tjfdd}|}||tj||dD]}|t||t|qH||jj| t |d| | dd| t d| dWdn1s0Y||}| d| td  |ttd Wdn1s0Yt|}||dS) Ncss dVdVS)Nrr>rrrrrgen_funcWsz)CoroutineTests.test_gen..gen_funccsSrrrrrrr[sz$CoroutineTests.test_gen..foo)r rrrrrr>rr)rrrErrIrrrrr,rrrSrrr)rrrrrrrrtest_genVs.( 0 zCoroutineTests.test_gencsPtjdd}|tjfdd}||t|}||dS)Ncss dVdSrrrrrrrwsz3CoroutineTests.test_returning_itercoro..gencsSrrrZgencororrr}sz3CoroutineTests.test_returning_itercoro..foo)rrrI)rrrrrrtest_returning_itercorovs  z&CoroutineTests.test_returning_itercorocCsdd}|t|||tt||||jjtj@||jjtj @|}||j jtj@||j jtj @|t||dS)Ncss dVdSrrrrrrrr z(CoroutineTests.test_genfunc..gen) rIrrrrrinspectZCO_ITERABLE_COROUTINErZ CO_COROUTINEr)rrrrrr test_genfuncszCoroutineTests.test_genfunccsdddtjfdd}|}|dt||t|t||tt| hddS)Ncss dVdSrrrrrrrsz/CoroutineTests.test_wrapper_object..gencsSrrrrrrrsz0CoroutineTests.test_wrapper_object..coroZGeneratorWrapper> rrrrrrrrrrrr) rrrrr,r4rrr issuperset)rrrrrrtest_wrapper_objectsz"CoroutineTests.test_wrapper_objectN)r r rrrrrrrrrrrrrrrrrlsi3 r__main__)Z test.supportrcollections.abcrrrrrrr1Z unittest.mockrrZTestCaserrrrwrr mainrrrrs6 QN@;