mò Cã¸Ec@sdZdkZdkZdkZdkZdkZdkZdkZdkZ y e Z Wn e j oei dZ nXeiie ƒZ yeWne j o eZnXeZdeifd„ƒYZdeifd„ƒYZdZd„Zed joeid d ƒndS( s$Tests of standard ZConfig datatypes.NitDatatypeTestCasecBsøtZeiiƒ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„ZRS(NcCs´|iidƒ}|i}|i}||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ|t|d ƒ|t|d ƒ|t|d ƒ|t|d ƒdS( Ns basic-keytabcs ABC_DEF.123s abc_def.123s Abc-Def-456s abc-def-456sAbc.Defsabc.deft_abcs-abct123t( tselfttypestgettconvertt assertEqualteqt assertRaisestraisest ValueError(RR RR ((t;/data/zmath/zope/lib/python/ZConfig/tests/test_datatypes.pyttest_datatype_basickey,s  cCsË|iidƒ}|i}|i}||dƒƒ||dƒƒ||dƒƒ||dƒ ƒ||dƒ ƒ||dƒ ƒ|t|dƒ|t|d ƒ|t|d ƒ|t|d ƒdS( Ntbooleantonttruetyestofftfalsetnot0t1Rtjunk( RRRRtassert_tcheckR R R (RR RR((Rttest_datatype_boolean;s  cCs’|iidƒ}|i}|i}||dƒdƒ|it |dƒƒt dƒjƒ||dƒdƒ||dƒdƒ||d ƒd ƒ||d ƒd ƒ||d ƒd ƒ||dƒd ƒ||dƒd ƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒt oF|t |t dƒƒ|t |t dƒƒ|t |t dƒƒndS(NtfloatRf1.0is1.1f1.1000000000000001s50.50f50.5s-50.50f-50.5if0.0Rs-0s0.0Rs 0x234.1.9s0.9-tinfs-inftnan( RRRRR R R R RttypeR t have_unicodetunicode(RRR R ((Rttest_datatype_floatKs,  %cCsI|iidƒ}|i}|i|ƒ|i|ƒ|t|dƒdS(Nt identifiers.abc( RRRRR R t check_namestcheck_never_namelikeR (RRR ((Rttest_datatype_identifieris    cCsh|i}||dƒ||dƒ||dƒ||dƒ||dƒ||dƒ||dƒdS(NtAbcDeft a________tabc_deftint123Rt_123t__dict__(Rtassert_ascii_equalR R(RRR ((RR%ps       cCs||ƒ}|i||ƒ|it|tƒƒtoBt |ƒ}||ƒ}|i||ƒ|it|tƒƒndS(N( RtvaluetvRR Rt isinstancetstrR!R"t unicode_value(RRR/R3R0((RR.zs   cCsÝ|i}|t|dƒ|t|dƒ|t|dƒ|t|dƒ|t|dƒ|t|dƒ|t|dƒ|t|dƒ|t|d ƒ|t|d ƒ|t|d ƒ|t|d ƒ|t|d ƒdS(Nt2345s23.45s.45s23.sabc.s-abcs-123sabc-s123-t-t.s&%$*()R(RR R R R(RRR ((RR&„s cCs–|iidƒ}|i}|i|ƒ|i|ƒ|i|ƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒdS(Ns dotted-namesabc.s.abc.sabc.def.s .abc.def.s.abc.def( RRRRR R R%tcheck_dotted_namesR&R (RRR ((Rttest_datatype_dotted_name”s    cCs¶|iidƒ}|i}|i}|i|ƒ|i |ƒ|i |ƒ||dƒ||dƒ||dƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒdS( Ns dotted-suffixs.as.a.bs.a.b.c.d.e.f.g.h.i.j.k.l.m.n.osabc.s.abc.sabc.def.s .abc.def.( RRRRR.R R R R%R7R&R (RR RR ((Rttest_datatype_dotted_suffix s        cCs4|i}||dƒ||dƒ||dƒdS(Nsabc.defs abc.def.ghisa.d.g.g.g.g.g.g.g(RR.R R(RRR ((RR7¯s   cCs–|iidƒ}|i}tii}||dƒd ƒ||dƒ|dfƒ||dƒ|dfƒ||dƒd ƒ|i t |dƒdS( Ns inet-addresssHost.Example.Com:80shost.example.comiPs:80t80shost.EXAMPLE.coms40 # foo(shost.example.comiP(shost.example.comN( RRRRR R tZConfigt datatypest DEFAULT_HOSTtdefhosttNoneR R (RR RR>((Rttest_datatype_inet_addressµs  cCs|iidƒ}|i}d}||dƒd ƒ||dƒ|dfƒ||dƒ|dfƒ||dƒd ƒ|it |d ƒdS( Nsinet-binding-addressRsHost.Example.Com:80shost.example.comiPs:80R:shost.EXAMPLE.coms40 # foo(shost.example.comiP(shost.example.comN( RRRRR R R>R?R R (RR RR>((Rt"test_datatype_inet_binding_address¿s cCs|iidƒ}|i}d}||dƒd ƒ||dƒ|dfƒ||dƒ|dfƒ||dƒd ƒ|it |d ƒdS( Nsinet-connection-addresss 127.0.0.1sHost.Example.Com:80shost.example.comiPs:80R:shost.EXAMPLE.coms40 # foo(shost.example.comiP(shost.example.comN( RRRRR R R>R?R R (RR RR>((Rt%test_datatype_inet_connection_addressÉs cCsT|iidƒ}|i}|i}||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ||d ƒd ƒ||d ƒd ƒ||d ƒdƒ||dƒdƒti d}t |ƒ}|||ƒ|ƒ||d|ƒ| ƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒ|t |dƒdS(Ntintegers-100iœÿÿÿs-1iÿÿÿÿs-0iRRit100idt65535iÿÿt65536ilR5Rs-0xabcRs123 456s123-(RRRRR R R R tsystmaxinttbigR2tsR (RRRIRJR R ((Rttest_datatype_integerÓs(    cCs?|iidƒ}|i|dƒdƒ|it|dƒdS(NtlocaletCslocale-does-not-exist(RRRRR R R (RR((Rttest_datatype_localeìscCsÊ|iidƒ}|i}|i}|t|dƒ|t|dƒ||dƒdƒ||dƒdƒ||dƒd ƒ||d ƒd ƒ||d ƒd ƒ||dƒdƒ|t|dƒdS(Ns port-numbers-1RRiR:iPt1023iÿt1024it60000i`êREiÿÿRF( RRRRR R R R R (RR RR ((Rttest_datatype_portòs  cCs9|iidƒ}|i}ti}ti i }||d„}|d|d ƒ|d||dfƒ|d||dfƒ|d|d ƒ|d ƒ}|d ƒ}|i|id ƒ|i|id ƒttd ƒo0|i|itiƒ|i|itiƒn-|i|idjƒ|i|idjƒdS(Nssocket-addresscCs6||ƒ}|i|i|ƒ|i|i|ƒdS(N(RR/taRR tfamilytaddress(R/RTRURRRS((RRs sHost.Example.Com:80shost.example.comiPs:80R:shost.EXAMPLE.coms/tmp/var/@345.4s/tmp/var/@345.4:80tAF_UNIX(shost.example.comiP(shost.example.comN(RRRRR R tsockettAF_INETR;R<R=R>RR?ta1ta2RUthasattrRTRVR(RRR RXRYRZR>R((Rttest_datatype_socket_addresss$     cCsý|iidƒ}|i}|i}||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ||dƒdƒ|t|d ƒ|t|d ƒ|t|d ƒ|t|d ƒ|t|d ƒdS(Nsipaddr-or-hostnamethostnames hostname.comswww.hostname.comtHOSTNAMEs HOSTNAME.COMsWWW.HOSTNAME.COMs 127.0.0.1t1hostnamewithleadingnumerics255.255t12345678s999.999.999.999s a!badhostname( RRRRR R R R R (RR RR ((Rttest_ipaddr_or_hostnames  cCs||iidƒ}|i}|i}||dƒdƒ||ti i t ƒƒti i t ƒƒ|t |t iƒƒdS(Nsexisting-directoryR6(RRRRR R R R tostpathtdirnamethereR ttempfiletmktemp(RRR R ((Rttest_existing_directory,s   +cCsd|iidƒ}|i}|i}||dƒdƒ||tƒtƒ|t |t i ƒƒdS(Ns existing-fileR6( RRRRR R R R ReR RfRg(RRR R ((Rttest_existing_file4s   cCs|iidƒ}|i}|i}||dƒdƒ||tƒtƒ||t i i tƒƒt i i tƒƒ|t |t iƒƒdS(Ns existing-pathR6(RRRRR R R R ReRbRcRdR RfRg(RRR R ((Rttest_existing_path<s  +cCsr|iidƒ}|i}|i}||dƒdƒ||tƒtƒ|t |dƒ|t |tdƒdS(Nsexisting-dirpathR6s/a/hopefully/nonexistent/paths/bogus( RRRRR R R R ReR (RRR R ((Rttest_existing_dirpathEs  cCs|i}|i}|iidƒ}||dƒdƒ||dƒddƒ||dƒdddƒ||dƒddddƒ|t|d ƒ||dƒdƒ||d ƒddƒ||d ƒdddƒ||d ƒddddƒ|t|d ƒdS(Ns byte-sizet128i€t128KBit128MBt128GBlt128TBt128kbt128mbt128gbt128tb( RR R R R RRRR (RRR R ((Rttest_byte_sizeNs  cCs6|i}|i}|iidƒ}||dƒdƒ||dƒdƒ||dƒddƒ||dƒdddƒ||dƒdddd ƒ|t|d ƒ||dƒdƒ||d ƒdƒ||d ƒddƒ||d ƒdddƒ||dƒdddd ƒ|t|dƒdS(Ns time-intervalt120ixt120St120Mi<t120Ht120Dit120Wt120st120mt120ht120dt120w( RR R R R RRRR (RRR R ((Rttest_time_interval]s  c Csô|i}|i}|iidƒ}||dƒti ddƒƒ||dƒti ddƒƒ||dƒti d d ƒƒ||d ƒti d d ƒƒ||dƒti ddƒƒ||dƒti ddd d d d ddƒƒdS(Nt timedeltat4wtweeksit2dtdaysit7hthoursit12mtminutesi t14stsecondsis4w 2d 7h 12m 14s( RR R R R RRRtdatetimeR‚(RRR R ((Rttest_timedeltans   (t__name__t __module__R;R<tRegistryRRRR#R'R%R.R&R8R9R7R@RARBRKRNRRR\RaRhRiRjRkRuRRŽ(((RR)s4                tRegistryTestCasecBstZd„ZRS(NcCs»ti}tiddƒ}tii|dƒ}t |dƒ}|i t ƒ|i ƒtiiƒ}tiid|ƒz|idƒ}Wdti|ƒ|ti(X|i|dƒdS(Ntprefixttest_datatypes_s datatypes.pytwisdatatypes.my_sample_datatypei*(RGRct old_sys_pathRftmkdtempttmpdirRbtjointfntopentftwritetTEST_DATATYPE_SOURCEtcloseR;R<R‘tregistrytinsertRtdatatypetshutiltrmtreeRR (RR–RœR¢RšR˜R ((Rt,test_registry_does_not_mask_toplevel_imports}s     (RRR¥(((RR’{ss2 # sample datatypes file my_sample_datatype = 42 cCs)titƒ}|ititƒƒ|S(N(tunittestt makeSuiteRtsuitetaddTestR’(R¨((Rt test_suite–st__main__t defaultTestRª(t__doc__RbRGR£RWRRfR¦tZConfig.datatypesR;t__file__Ret NameErrortargvRctabspathR"tFalseR!tTruetTestCaseRR’RžRªRtmain(RWR!RžRfR¦ReRRGRR;RªR’R£Rb((Rt?s2          ÿS