mò %U²Ic@s¦dZdkZdkZdkZdkZdkZdklZlZd„Z ei e ƒdei ei ei fd„ƒYZd„Zedjo eƒndS(s— Test script for the Unicode implementation. Written by Marc-Andre Lemburg (mal@lemburg.com). (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. N(s test_supports string_testscCszdd„}dd„}dd„}dd„}|djo||ddfSn&|djo||ddfSndSdS(NtstrictcCsdS(Ni*((tinputterrors((t./data/zmath/lib/python2.4/test/test_unicode.pytdecode1scCsdS(Ni*((RR((Rtencode1scCsdS(Ni*(i*i*((RR((Rtencode2scCsdS(Ni*(i*i*((RR((Rtdecode2ss test.unicode1s test.unicode2(RRRRtencodingtNone(RRRRR((Rtsearch_function s      t UnicodeTestcBsRtZeZd„Zd„Zd„Zd„Zd„Zd„Z d„Z d„Z d „Z d „Z d „Zd „Zd „Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z d„Z!d„Z"d „Z#d!„Z$d"„Z%d#„Z&d$„Z'RS(%NcGs¿t||ƒ}||Œ}|i||ƒ|i t |ƒt |ƒjƒ||joddt fd„ƒY}||ƒ}t||ƒ}||Œ}|i||ƒ|i ||j ƒndS(NtusubcBstZd„ZRS(NcCsdti|ƒS(Nsusub(%r)(tunicodet__repr__tself(R((RR/s(t__name__t __module__R(((RR .s( tgetattrtobjectt methodnametmethodtargst realresultRt assertEqualtresulttassert_ttypeR R (RRRRRRRR ((Rtcheckequalnofix%s    cCsa|iddƒ|iddƒ|ittdƒ|ittdƒ|ittddƒdS(Nuÿuï¿¿s u'\Ufffffffe's u'\Uffffffff's u'\U%08x'i(RRt assertRaisest UnicodeErrorteval(R((Rt test_literals7s cCs§tiidƒp|itdƒdƒ|itdƒdƒ|itdƒdƒ|itdƒd ƒ|itd ƒd ƒ|itd ƒd ƒ|itdƒdƒ|itdƒdƒ|itdƒdƒ|itdƒdƒ|itdƒdƒ|itdƒdƒ|itdƒdƒd}tditt t dƒƒƒƒ}|i||ƒ|itdddd ƒtdddd ƒƒndS(!Ntjavauabcsu'abc'uab\csu'ab\\c'uab\su'ab\\'u\csu'\\c'u\su'\\'u su'\n'u su'\r'u su'\t'usu'\x08'u'"su'\'"'u'su"'"u"su'"'sâu'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x83\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x97\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xab\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xbf\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xfb\xfc\xfd\xfe\xff'uiuð€€i'uï¿¿i( tsystplatformt startswithRRtreprt latin1reprtjointmaptunichrtxrangettestrepr(RR+R&((Rt test_repr>s&$cCsìtii|ƒ|iddddƒ|iddddƒ|iddddƒ|idddd ƒ|idddd ƒ|id dddd ƒ|iddddd ƒ|id ddddd ƒ|idddddd ƒdS(Nitaaatcountuaiubuaaatatbiiÿÿÿÿiöÿÿÿi(t string_testst CommonTestt test_countRR(R((RR3dscCsu|iddddƒ|idddddƒ|iddddd ƒ|itd iƒ|itd id ƒdS( Niu abcdefghiabctfinduabci iiÿÿÿÿudefiuhelloi*(RRRt TypeErrorR4(R((Rt test_findqs cCsVtii|ƒ|iddddƒ|iddddƒ|iddddƒdS( Ni t abcdefghiabctrfinduabci uu abcdefghiabct(R1R2t test_rfindRR(R((RR:yscCsYtii|ƒxBttfttffD](\}}|id|dƒd|dƒƒ|id|dƒd|dƒƒ|id|dƒd|dƒƒ|id|dƒd|dƒd ƒ|i t |dƒi |d ƒƒ|i t |d ƒi |dƒd ƒ|i t |d ƒi |d ƒdƒ|i t |d ƒi |d ƒdƒq)WdS(NiR7tindexR9itdeftabci ithibt abcdefghiabt abcdefghitghiiiÿÿÿÿ( R1R2t test_indexRtstrR tt1tt2RRt ValueErrorR;(RRERD((RRB€s """%"%%cCsŠtii|ƒxsttfttffD]Y\}}|id|dƒd|dƒƒ|id|dƒd|dƒƒ|id|dƒd|dƒƒ|id |dƒd|dƒd d ƒ|i t |dƒi |d ƒƒ|i t |d ƒi |dƒd ƒ|i t |d ƒi |dƒd d ƒ|i t |dƒi |dƒd dƒ|i t |dƒi |dƒd d ƒq)WdS(Ni R7trindexR9iR<i R=iiÿÿÿÿR>t defghiabciR@RAi( R1R2t test_rindexRRCR RDRERRRFRG(RRERD((RRIs """("%((c Csq|idddhtdƒd<ƒ|idddhtdƒd<tdƒtdƒ<ƒ|idddhtdƒd<tdƒtdƒ<td ƒd <ƒ|id ddhtdƒd<tdƒd <ƒ|id ddhtdƒd<tdƒd<ƒ|idddhtdƒd<ƒ|itdiƒ|itdihtdƒd<ƒdS(Nubbbcuabababct translateR/uiiicR0tiuiiixtcuxu cuucuuxyyxuxzxtzuyyuhelloR9(RRtordR RR5RJ(R((Rttest_translateœs%:I44%cCsttii|ƒ|iddddgdddƒ|iddddgddd ƒ|id d gd dd ƒdS(Nuaubucudu a//b//c//dtsplits//s a//b//c//du//uendcase uu endcase testttest(R1R2t test_splitRR(R((RRR§s""cCsätii|ƒ|idddddddgƒ|idd ddƒ|id ddtid ƒƒ|idddd d ddgƒ|idddddddgƒ|iddddƒ|id ddtidƒƒdS(Nua b c du R'R/R0ucuduabcduuaubuw x y ztwxyzt R9uwxyz(uaubucud(uaubucud(R1tMixinStrUnicodeUserStringTestt test_joinRRtSequence(R((RRV¯s"""cCs*tii|ƒ|itdidƒdS(Nuhellosÿ(R1R2t test_stripRRRtstrip(R((RRX»scCsItii|ƒ|iddddddƒ|itdiddƒdS( Nuone@two!three!sone!two!three!treplaceu!u@iuri*(R1R2t test_replaceRRRR5RZ(R((RR[¿scCs¹|iddƒ|iddƒ|iddƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒdS(NuabcR=uabcdtabcduð€‚u𣑖(RRR(R((Rttest_comparisonÆs3cCs'tii|ƒ|itddƒdS(Nuῼtislower(R1RUt test_islowerRRtFalse(R((RR_scCs>tii|ƒtiidƒp|itddƒndS(NR!uῼtisupper( R1RUt test_isupperRR"R#R$RR`(R((RRb scCs:tii|ƒ|itddƒ|itddƒdS(NuῼtistitleuGreek ῼitlecases ...(R1RUt test_titleRRtTrue(R((Rt test_istitlescCsMtii|ƒ|itddƒ|itddƒ|itddƒdS(Nu tisspaceu u—(R1RUt test_isspaceRRReR`(R((RRhscCs'tii|ƒ|itddƒdS(Nuῼtisalpha(R1RUt test_isalphaRRRe(R((RRjscCs²|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itd dƒ|itd dd ƒdS( Nut isdecimaluau0uâ‘ u¼uÙ u 0123456789u 0123456789aR=i*(RRR`Ret checkraisesR5(R((Rttest_isdecimalscCsMtii|ƒ|itddƒ|itddƒ|itddƒdS(Nuâ‘ tisdigitu¼uÙ (R1RUt test_isdigitRRReR`(R((RRo+scCs²|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itddƒ|itd dƒ|itd id ƒdS( Nut isnumericuau0uâ‘ u¼uÙ u 0123456789u 0123456789auabci*(RRR`ReRR5Rp(R((Rttest_isnumeric1scCsö|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|idd jƒ|idd!jƒ|idd"jƒ|idd#jƒ|idd$jƒ|idd%jƒ|idd&jƒ|idd'jƒ|idd(jƒ|id djƒ|idd jƒ|iddjƒ|iddjƒ|idd)jƒ|iddjƒ|iddjƒ|itdidƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|iddjƒ|idd jƒ|idd jƒ|iddjƒ|iddjƒ|iddjƒ|itdiƒdS(*NR/uabdbubdabubdabaubdbauaubdbtbdbtbdbaitxuyuabcduabcxxxxuabtabuabcR=uR9sgâteauuâuttabcuabctabcuabcuasdftasdftasduasd(R/iN(iNR/(iNua(R/iN(iNR/(iNua(Rtiuy(RtiN(iNuab(RRR RRt __contains__R5(R((Rt test_contains=sjcCs¿tii|ƒ|idd:dƒ|idd;d ƒ|idd<d ƒ|idd=dƒ|idd>dƒ|idd?dƒtiidƒp|idd@dƒn|idhdd<dd<dƒ|idhdd<dd<dƒ|idddƒ|it di ti dfƒ|id hd!d<d"ƒ|id hd!d<d#ƒ|id hd$d<d#ƒ|id hd$d<d"ƒ|id hd$d<dd%<d"ƒ|id hd$d<d&d%<d"ƒ|id'dAd(ƒ|id)dBd*ƒ|id+dd"ƒ|id,dCd.ƒ|id,dDd0ƒ|id1dEd2ƒ|id1dFd.ƒ|id3dGd5ƒ|id6dHd7ƒ|id8d9d9ƒdS(INu%s, %suabcR=uabc, abcu%s, %s, %i, %f, %5.2fiiiuabc, abc, 1, 2.000000, 3.00iþÿÿÿuabc, abc, 1, -2.000000, 3.00iÿÿÿÿf3.5uabc, abc, -1, -2.000000, 3.50f3.5699999999999998uabc, abc, -1, -2.000000, 3.57f1003.5700000000001u abc, abc, -1, -2.000000, 1003.57R!u%r, %ru u'abc', 'abc'u %(x)s, %(y)sRttyR<uabc, defu %(x)s, %(ü)suüu%ci4uሴs ...%(foo)s...tfoou ...abc...s ...abc...ufooi{udefs...%s...%s...%s...%s...u...1...2...3...abc...s"...%%...%%s...%s...%s...%s...%s...u...%...%s...1...2...3...abc...s...%s...s%*siu abciûÿÿÿuabc s%*.*su abs%i %*.*si u10 abcs %i%s %*.*su 103 abcs%cua(uabcsabc(uabcsabciii(uabcsabciiþÿÿÿi(uabcsabciÿÿÿÿiþÿÿÿf3.5(uabcsabciÿÿÿÿiþÿÿÿf3.5699999999999998(uabcsabciÿÿÿÿiþÿÿÿf1003.5700000000001(uabcsabc(iiiuabc(iiiuabc(iuabc(iûÿÿÿuabc(iiuabc(iiuabc(i iiuabc(i iiiuabc( R1RUttest_formattingRRR"R#R$Rt OverflowErrort__mod__t maxunicode(R((RR{s:&& &&cCsˆy2dk}|i|iƒ}|i|idƒWn t|ifj o dSnXz|idddƒWd|i|i|ƒXdS(Ntde_DEu1.0u%.1ff1.0(tlocalet setlocaletLC_ALLt orig_localet ImportErrortErrorRR(RR„R‡((Rttest_format_floatŸs  cCsý|itdƒdƒdtfd„ƒY}|it|dƒƒdƒ|itdƒdƒdfd „ƒY}|it|d ƒƒd ƒd fd „ƒY}|it|dƒƒdƒ|dƒ}|it|ƒdƒ|it|ƒdƒ|id|dƒdƒ|id|dƒdƒx0d!D](}|it|ƒtt|ƒƒƒq/Wt i i dƒp|i t tdddƒn|itdddƒdƒt i i dƒp&|ittdƒddƒdƒn|i t td d d ƒdS("Nuunicode remains unicodetUnicodeSubclasscBstZRS(N(RR(((RR‹µss unicode subclass becomes unicodeu unicode subclass becomes unicodes strings are converted to unicodeu strings are converted to unicodet UnicodeCompatcBstZd„Zd„ZRS(NcCs ||_dS(N(RtR(RRt((Rt__init__ÃscCs|iS(N(RRt(R((Rt __unicode__Ås(RRRRŽ(((RRŒÂs s-__unicode__ compatible objects are recognizedu-__unicode__ compatible objects are recognizedt StringCompatcBstZd„Zd„ZRS(NcCs ||_dS(N(RtR(RRt((RRÍscCs|iS(N(RRt(R((Rt__str__Ïs(RRRR(((RRÌs s)__str__ compatible objects are recognizedu)__str__ compatible objects are recognizeds#unicode(obj) is compatible to str()u#unicode(obj) is compatible to str()u%su"u'%s' % obj uses obj.__unicode__()u'u'%s' % obj falls back to obj.__str__()i{f123.45l{R!u!decoding unicode is not supportedsutf-8Rsstrings are decoded to unicodeustrings are decoded to unicodes(character buffers are decoded to unicodeu(character buffers are decoded to unicodei*(i{f123.45l{(RRR R‹RŒRtoRCtobjR"R#R$RR5tbuffer(RR’RR‘RŒR‹((Rttest_constructor­sJ &   c Csdddddd d!d"d#d$d%d&g }x-|D]%\}}|i|idƒ|ƒq1W|ittddƒ|itdddƒdƒdS('NuA≢Α.s A+ImIDkQ.u Hi Mom -☺-!sHi Mom -+Jjo--!u 日本語s +ZeVnLIqe-uItem 3 is £1.sItem 3 is +AKM-1.u+s+-u+-s+--u+?s+-?u\?s+AFw?u\\?s+AFwAXA?u\\\?s +AFwAXABc?u++--s+-+---sutf-7s+3ADYAA-RZu�(uA≢Α.s A+ImIDkQ.(u Hi Mom -☺-!sHi Mom -+Jjo--!(u 日本語s +ZeVnLIqe-(uItem 3 is £1.sItem 3 is +AKM-1.(u+s+-(u+-s+--(u+?s+-?(u\?s+AFw?(u+?s+-?(u\\?s+AFwAXA?(u\\\?s +AFwAXABc?(u++--s+-+---( tutfTestsRtR}RRtencodeRRR (RR}RtR•((Rttest_codecs_utf7s * cCs|ididƒdƒ|ididƒdƒ|ididƒdƒ|ididƒd ƒ|id idƒd ƒ|id idƒd ƒ|iddidƒddƒ|ididƒdƒ|itd dƒdƒ|itddƒdƒ|itddƒdƒdS(Nusutf-8R9u€s€uð€‚sð€‚u𣑖s𣑖uí €sí €uí°€sí°€ièužæ­£ç¢ºã«è¨€ã†ã¨ç¿»è¨³ã¯ã•れã¦ã„ã¾ã›ã‚“。一部ã¯ãƒ‰ã‚¤ãƒ„語ã§ã™ãŒã€ã‚ã¨ã¯ã§ãŸã‚‰ã‚ã§ã™ã€‚実際ã«ã¯ã€ŒWenn ist das Nunstuck git undsžæ­£ç¢ºã«è¨€ã†ã¨ç¿»è¨³ã¯ã•れã¦ã„ã¾ã›ã‚“。一部ã¯ãƒ‰ã‚¤ãƒ„語ã§ã™ãŒã€ã‚ã¨ã¯ã§ãŸã‚‰ã‚ã§ã™ã€‚実際ã«ã¯ã€ŒWenn ist das Nunstuck git und(RRR–R (R((Rttest_codecs_utf8s  cCs|ididƒdƒdS(Nuwww.python.org.tidnaswww.python.org.(RRR–(R((Rttest_codecs_idnaDscCs°|itdidƒ|itdiddƒ|ididdƒdƒ|ididdƒdƒ|ittddƒ|ittdddƒ|itdddƒd ƒ|itdddƒd ƒ|id id dƒd ƒ|itdid ƒ|itdidƒ|ittddƒ|itdidƒ|itdidƒdk}|it |i ddgƒ|itdidddƒ|itt dƒdS(NuAndr‚ xtasciiRtignoresAndr xRZsAndr? xsAndr‚ xuAndr xu Andr� xs \N{foo}xxsunicode-escapeuxxs\thellos test.unicode1s test.unicode2uhellosnon-existing moduleunon-existing diri*uÈ€( RRRR–RR tdecodeR5timpRˆt find_moduletint(RRŸ((Rttest_codecs_errorsHs*   cCs@|ididƒdƒ|ididƒdƒ|ididƒdƒ|ididƒdƒ|ididƒdƒ|idid ƒd ƒ|idid ƒdƒd itttd ƒƒƒ}x0dD](}|it |i|ƒ|ƒ|ƒqÔWd itttdƒƒƒ}x0dD](}|it |i|ƒ|ƒ|ƒq%Wd itttdƒƒƒ}x0dD](}|it |i|ƒ|ƒ|ƒqvWd}x0dD](}|it |i|ƒ|ƒ|ƒq¯Wd ittt ddƒt ddƒƒƒ}x0dD](}|it |i|ƒ|ƒ|ƒqWdS(NuhelloR›Rsutf-7sutf-8tutf8s utf-16-let hellos utf-16-bet helloslatin-1uisutf-16traw_unicode_escapetunicode_escapetunicode_internalii€uð€ð €‚𰀃ñ€€„ñ€…iiØiài(sutf-7sutf-8sutf-16s utf-16-les utf-16-beR¦R§R¨(slatin-1(sascii(sutf-8sutf-16s utf-16-les utf-16-beR§R¨(sutf-8( RRR–R'R(R)R*tuRR trange(RRR©((Rt test_codecsns6&&&&.c2Cs©ditttdƒƒƒ}x0d6D](}|it||ƒi |ƒ|ƒq%Wditttdd5ƒƒƒ}x0d7D](}|it||ƒi |ƒ|ƒqyWdS(8NR9i€tcp037tcp1026tcp437tcp500tcp737tcp775tcp850tcp852tcp855tcp860tcp861tcp862tcp863tcp865tcp866t iso8859_10t iso8859_13t iso8859_14t iso8859_15t iso8859_2t iso8859_3t iso8859_4t iso8859_5t iso8859_6t iso8859_7t iso8859_9tkoi8_rtlatin_1t mac_cyrillict mac_latin2tcp1250tcp1251tcp1252tcp1253tcp1254tcp1255tcp1256tcp1257tcp1258tcp856tcp857tcp864tcp869tcp874t mac_greekt mac_icelandt mac_romant mac_turkishtcp1006t iso8859_8i(2scp037scp1026scp437scp500R°scp775scp850scp852scp855scp860scp861scp862scp863scp865scp866s iso8859_10s iso8859_13s iso8859_14s iso8859_15s iso8859_2s iso8859_3s iso8859_4s iso8859_5s iso8859_6s iso8859_7s iso8859_9skoi8_rslatin_1s mac_cyrillics mac_latin2scp1250scp1251scp1252scp1253scp1254scp1255scp1256scp1257scp1258RÓscp857scp864scp869R×s mac_greeks mac_icelands mac_romans mac_turkishRÜs iso8859_8(scp037scp1026scp437scp500R°scp775scp850scp852scp855scp860scp861scp862scp863scp865scp866s iso8859_10s iso8859_13s iso8859_14s iso8859_15s iso8859_2s iso8859_4s iso8859_5s iso8859_9skoi8_rslatin_1s mac_cyrillics mac_latin2( R'R(tchrR*tsRRRR R–(RRRß((Rttest_codecs_charmap—s&!cCsT|iddƒ|iddƒ|iddƒ|iddƒ|iddƒdS(Nuabcdefu abcdefghi(RR(R((Rttest_concatenationÍs c CsŒdfd„ƒY}|ƒ}|dIJ|dIdIJ|dIdIJ|dIdIJ|dIJ|dI|dI|dIJ|dIJdS( Nt BitBucketcBstZd„ZRS(NcCsdS(N((Rttext((RtwriteÖs(RRRä(((RRâÕsuabcudefR<R=uabc udef (Râtout(RRâRå((Rt test_printingÔs      cCsJtidjodSnd}|idƒidƒ}|i||ƒdS(Niÿÿuô€€€sraw-unicode-escape(R"R‚RtR–RžR}RR(RRtR}((Rt test_ucs4äs cCs\dfd„ƒY}dfd„ƒY}|it|ƒƒdƒ|it|ƒƒdƒdS(Nts1cBstZd„ZRS(NcCsdS(Ns\n((R((RRís(RRR(((RRèìsts2cBstZd„ZRS(NcCsdS(Nu\n((R((RRñs(RRR(((RRéðss\n(RèRéRRR%(RRéRè((Rttest_unicode_reprës((RRR t type2testRR R,R3R6R:RBRIRORRRVRXR[R]R_RbRfRhRjRmRoRqR|RRŠR”R—R˜RšR¢R«RàRáRæRçRê(((RR sJ   &       A       > $  X  '  & ) 6   cCstitƒdS(N(t test_supportt run_unittestR (((Rt test_main÷st__main__(t__doc__tunittestR"tstringtcodecstnewRQRìR1R tregisterR2RUtMixinStrUnicodeTestR RîR( RìR RòRñR1R"RîR RóRô((Rt?s-  %ÿÿÛ