Ϫf& dZddlmZddlmZmZddlmZddlm Z m Z  ddl Z ddlm Z ddl mZGd d eZee d Gd d eZy#e$rdZ eZY/wxYw)zTest SOAP support.)skipIf)deferreactor)TestCase)errorserverN)soap) SOAPPublishercXeZdZdZd dZde_dZdZdZdZ dZ d Z d Z d Z y )Testc ||zSNselfabs #K#- ((5rr zSOAPpy not installedc0eZdZdZdZdZdZdZdZy) SOAPTestsct|_tjdt j |jd|_|j jj|_y)Nrz 127.0.0.1) interface) r publisherr listenTCPrSitepgetHostportr"s rsetUpzSOAPTests.setUp=sK"" v{{4>>*k FFNN$)) rc6|jjSr)rJ stopListeningr"s rtearDownzSOAPTests.tearDownDsvv##%%rcFtjd|jzS)Nzhttp://127.0.0.1:%d/)r ProxyrLr"s rproxyzSOAPTests.proxyGszz0499<==rcdddddidfdfddgdfg}g}|D]T\}}}|jj|g|}|j|j||j |V|jjd }|jd |j|jd d d ggdd|j |t j |dS)N)add)r>)r)rrdictrr=triple)rr=)rr=Ncomplexc"|jSr)_asdict)results rz'SOAPTests.testResults..Zs V^^%5rrrr4r5r6T)fireOnOneErrback)rS callRemote addCallback assertEqualappendr DeferredList)r inputOutputdlmethargsoutpds r testResultszSOAPTests.testResultsJs  " sAh_a ( x 0   +  D$' ''4t4A MM$**D 1 IIaL  JJL # #I . 56 d&&sCR.@u(MN ! !!"t<.cbis   S_c 2r)rSr` assertFailurerErrorra)rrjrrs` rtestMethodNotFoundzSOAPTests.testMethodNotFoundbsG JJL # #M 2 1ekk* 3 brc|j|jjd|j|jjd|j|jjdy)zc Test lookupFunction method on publisher, to see available remote methods. rUr*foobarN) assertTruerGlookupFunction assertFalser"s rtestLookupFunctionzSOAPTests.testLookupFunctionosW 55e<= 55f=> 66x@ArN) r?r@rArMrPrSrkrur{rrrrDrD;s!*&>=0 BrrD)__doc__unittestrtwisted.internetrrtwisted.trial.unittestr twisted.webrrr r twisted.web.soapr ImportErrorobjectr rDrrrrsw ++% . =DF *+:B:B,:BQ FMsA A A