3 ,ςΏW™8γ@sΊdZddlZGdd„dejƒZGdd„dejƒZGdd„dejƒZGd d „d ejƒZGd d „d ejƒZGd d„dejƒZGdd„dejƒZ Gdd„dejƒZ Gdd„dejƒZ dd„Z dS)zTests for z.c.interface ιNc@sLeZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d d „Z d d„Z dS)ΪTest_provideInterfacer)ΪsetUpΪtearDowncOsddlm}|||ŽS)Nr)ΪprovideInterface)Ϊzope.component.interfacer)ΪselfΪargsΪkwr©r ϊ$/usr/lib/python3.6/test_interface.pyΪ_callFUTs zTest_provideInterface._callFUTcCs|jt|jdtƒƒdS)NΪxxx)Ϊ assertRaisesΪ TypeErrorr Ϊobject)rr r r Ϊtest_w_interface_not_IInterfacesz5Test_provideInterface.test_w_interface_not_IInterfacecCsHddlm}ddlm}Gdd„d|ƒ}|dƒ}|jt|jd||ƒdS)Nr)Ϊ Interface)ΪInterfaceClassc@s eZdZdS)zDTest_provideInterface.test_w_iface_type_not_IInterface..IFooN)Ϊ__name__Ϊ __module__Ϊ __qualname__r r r r ΪIFoo!srΪIBarr )Ϊzope.interfacerZzope.interface.interfacerrrr )rrrrrr r r Ϊ test_w_iface_type_not_IInterfaces   z6Test_provideInterface.test_w_iface_type_not_IInterfacecCszddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„dtƒ}|jd||ƒ|j|j|ƒƒ|jt t |j |ƒƒƒdƒdS) Nr)Ϊ IInterface)ΪgetGlobalSiteManagerc@s eZdZdS)z0Test_provideInterface.test_w_class..IBarN)rrrr r r r r*src@s eZdZdS)z/Test_provideInterface.test_w_class..FooN)rrrr r r r ΪFoo,srΪ) Ϊzope.interface.interfacesrΪzope.component.globalregistryrrr Z assertFalseΪ providedByΪ assertEqualΪlenΪlistZgetUtilitiesFor)rrrΪgsmrrr r r Ϊ test_w_class&s  z"Test_provideInterface.test_w_classcCs†ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}|jd ||ƒ|j|j|ƒƒd }|j|j ||ƒ|kƒdS) Nr)r)r)rc@s eZdZdS)z=Test_provideInterface.test_wo_name_w_iface_type..IFooN)rrrr r r r r7src@s eZdZdS)z=Test_provideInterface.test_wo_name_w_iface_type..IBarN)rrrr r r r r9srrz(zope.component.tests.test_interface.IFoo) rrrrr rr Ϊ assertTruer!Ϊ getUtility)rrrrr%rrZnmr r r Ϊtest_wo_name_w_iface_type2s   z/Test_provideInterface.test_wo_name_w_iface_typecCsvddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|jd|ƒ|j|j|ƒƒ|j |dd}|j||kƒdS) Nr)r)r)rc@s eZdZdS)z=Test_provideInterface.test_w_name_wo_ifact_type..IFooN)rrrr r r r rEsrΪfoo)Ϊname) rrrrr rr r'r!r()rrrrr%rZ registeredr r r Ϊtest_w_name_wo_ifact_type@s    z/Test_provideInterface.test_w_name_wo_ifact_typeN) rrrΪzope.component.testingrrr rrr&r)r,r r r r rs rc@s4eZdZddlmZmZdd„Zdd„Zdd„Zd S) ΪTest_getInterfacer)rrcOsddlm}|||ŽS)Nr)Ϊ getInterface)rr/)rrr r/r r r r Qs zTest_getInterface._callFUTcCs$ddlm}|j||jtƒdƒdS)Nr)ΪComponentLookupErrorΪnonesuch)Ϊzope.component.interfacesr0rr r)rr0r r r Ϊ test_missUs zTest_getInterface.test_misscCsdddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jt ƒdƒ|kƒdS)Nr)r)r)rc@s eZdZdS)z(Test_getInterface.test_hit..IFooN)rrrr r r r r_srr*) rrrrr rΪregisterUtilityr'r r)rrrrr%rr r r Ϊtest_hitZs   zTest_getInterface.test_hitN) rrrr-rrr r3r5r r r r r.Msr.c@s4eZdZddlmZmZdd„Zdd„Zdd„Zd S) ΪTest_queryInterfacer)rrcOsddlm}|||ŽS)Nr)ΪqueryInterface)rr7)rrr r7r r r r is zTest_queryInterface._callFUTcCs"tƒ}|j|jd|d|kƒdS)Nr1)Ϊdefault)rr'r )rZ_DEFAULTr r r r3mszTest_queryInterface.test_misscCs`ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jdƒ|kƒdS)Nr)r)r)rc@s eZdZdS)z*Test_queryInterface.test_hit..IFooN)rrrr r r r rwsrr*) rrrrr rr4r'r )rrrrr%rr r r r5rs   zTest_queryInterface.test_hitN) rrrr-rrr r3r5r r r r r6esr6c@sDeZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d d „Z d S)ΪTest_searchInterfacer)rrcOsddlm}|||ŽS)Nr)ΪsearchInterface)rr:)rrr r:r r r r s zTest_searchInterface._callFUTcCs|j|jtƒƒgƒdS)N)r"r r)rr r r Ϊ test_empty…szTest_searchInterface.test_emptycCsbddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jt ƒƒ|gƒdS)Nr)r)r)rc@s eZdZdS)z@Test_searchInterface.test_no_search_string_no_base..IFooN)rrrr r r r rsrr*) rrrrr rr4r"r r)rrrrr%rr r r Ϊtest_no_search_string_no_baseˆs   z2Test_searchInterface.test_no_search_string_no_basecCs‚ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}|j||d ƒ|j||d ƒ|j|jt ƒdƒ|gƒdS) Nr)r)r)rc@s eZdZdS)z?Test_searchInterface.test_w_search_string_no_base..IFooN)rrrr r r r r—src@s eZdZdS)z?Test_searchInterface.test_w_search_string_no_base..IBarN)rrrr r r r r™srr*Ϊbar) rrrrr rr4r"r r)rrrrr%rrr r r Ϊtest_w_search_string_no_base’s   z1Test_searchInterface.test_w_search_string_no_basecCs”ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}Gd d „d |ƒ}|j||d ƒ|j||d ƒ|j|jt ƒ|d |gƒdS)Nr)r)r)rc@s eZdZdS)z@Test_searchInterface.test_no_search_string_w_base..IBaseN)rrrr r r r ΪIBase€sr?c@s eZdZdS)z?Test_searchInterface.test_no_search_string_w_base..IFooN)rrrr r r r r¦src@s eZdZdS)z?Test_searchInterface.test_no_search_string_w_base..IBarN)rrrr r r r r¨srr*r=)Ϊbase) rrrrr rr4r"r r)rrrrr%r?rrr r r Ϊtest_no_search_string_w_baseŸs   z1Test_searchInterface.test_no_search_string_w_baseN) rrrr-rrr r;r<r>rAr r r r r9}s   r9c@sDeZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d d „Z d S)ΪTest_searchInterfaceIdsr)rrcOsddlm}|||ŽS)Nr)ΪsearchInterfaceIds)rrC)rrr rCr r r r ³s z Test_searchInterfaceIds._callFUTcCs|j|jtƒƒgƒdS)N)r"r r)rr r r r;·sz"Test_searchInterfaceIds.test_emptycCsbddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jt ƒƒdgƒdS)Nr)r)r)rc@s eZdZdS)zCTest_searchInterfaceIds.test_no_search_string_no_base..IFooN)rrrr r r r rΏsrr*) rrrrr rr4r"r r)rrrrr%rr r r r<Ίs   z5Test_searchInterfaceIds.test_no_search_string_no_basecCs‚ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}|j||d ƒ|j||d ƒ|j|jt ƒdƒd gƒdS) Nr)r)r)rc@s eZdZdS)zBTest_searchInterfaceIds.test_w_search_string_no_base..IFooN)rrrr r r r rΙsrc@s eZdZdS)zBTest_searchInterfaceIds.test_w_search_string_no_base..IBarN)rrrr r r r rΛsrr*r=) rrrrr rr4r"r r)rrrrr%rrr r r r>Δs   z4Test_searchInterfaceIds.test_w_search_string_no_basecCs”ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}Gd d „d |ƒ}|j||d ƒ|j||d ƒ|j|jt ƒ|d d gƒdS)Nr)r)r)rc@s eZdZdS)zCTest_searchInterfaceIds.test_no_search_string_w_base..IBaseN)rrrr r r r r?Φsr?c@s eZdZdS)zBTest_searchInterfaceIds.test_no_search_string_w_base..IFooN)rrrr r r r rΨsrc@s eZdZdS)zBTest_searchInterfaceIds.test_no_search_string_w_base..IBarN)rrrr r r r rΪsrr*r=)r@) rrrrr rr4r"r r)rrrrr%r?rrr r r rAΡs   z4Test_searchInterfaceIds.test_no_search_string_w_baseN) rrrr-rrr r;r<r>rAr r r r rB―s   rBc@sLeZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d d „Z d d„Z dS)ΪTest_searchInterfaceUtilitiesr)rrcOsddlm}|||ŽS)Nr)ΪsearchInterfaceUtilities)rrE)rrr rEr r r r εs z&Test_searchInterfaceUtilities._callFUTcCs|j|jtƒƒgƒdS)N)r"r r)rr r r r;ιsz(Test_searchInterfaceUtilities.test_emptycCsfddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jt ƒƒd|fgƒdS)Nr)r)r)rc@s eZdZdS)zITest_searchInterfaceUtilities.test_no_search_string_no_base..IFooN)rrrr r r r rρsrr*) rrrrr rr4r"r r)rrrrr%rr r r r<μs   z;Test_searchInterfaceUtilities.test_no_search_string_no_basecCs†ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}|j||d ƒ|j||d ƒ|j|jt ƒdƒd |fgƒdS) Nr)r)r)rc@s eZdZdS)zHTest_searchInterfaceUtilities.test_w_search_string_no_base..IFooN)rrrr r r r rϋsrc@s eZdZdS)zHTest_searchInterfaceUtilities.test_w_search_string_no_base..IBarN)rrrr r r r rύsrr*r=) rrrrr rr4r"r r)rrrrr%rrr r r r>φs   z:Test_searchInterfaceUtilities.test_w_search_string_no_basecCs˜ddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}Gd d „d |ƒ}|j||d ƒ|j||d ƒ|j|jt ƒ|d d |fgƒdS)Nr)r)r)rc@s eZdZdS)zITest_searchInterfaceUtilities.test_no_search_string_w_base..IBaseN)rrrr r r r r?sr?c@s eZdZdS)zHTest_searchInterfaceUtilities.test_no_search_string_w_base..IFooN)rrrr r r r r src@s eZdZdS)zHTest_searchInterfaceUtilities.test_no_search_string_w_base..IBarN)rrrr r r r r srr*r=)r@) rrrrr rr4r"r r)rrrrr%r?rrr r r rAs   z:Test_searchInterfaceUtilities.test_no_search_string_w_basecCsˆddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}Gdd„d|ƒ}|j||d ƒ|j||d ƒ|j|jt ƒ|d d |fgƒdS) Nr)r)r)rc@s eZdZdS)zPTest_searchInterfaceUtilities.test_no_search_string_w_base_is_same..IFooN)rrrr r r r rsrc@s eZdZdS)zPTest_searchInterfaceUtilities.test_no_search_string_w_base_is_same..IBarN)rrrr r r r rsrr*r=)r@) rrrrr rr4r"r r)rrrrr%rrr r r Ϊ$test_no_search_string_w_base_is_sames   zBTest_searchInterfaceUtilities.test_no_search_string_w_base_is_sameN) rrrr-rrr r;r<r>rArFr r r r rDαs  rDc@s,eZdZdd„Zdd„Zdd„Zdd„Zd S) ΪTest_getInterfaceAllDocscOsddlm}|||ŽS)Nr)ΪgetInterfaceAllDocs)rrH)rrr rHr r r r "s z!Test_getInterfaceAllDocs._callFUTcCs&Gdd„dtƒ}|j|j|ƒdƒdS)Nc@seZdZdZdZdd„ZdS)z2Test_getInterfaceAllDocs.test_w_class..FooΪ DOCSTRINGNcSsdS)ΪBAZNr )rr r r Ϊbaz*sz6Test_getInterfaceAllDocs.test_w_class..Foo.baz)rrrΪ__doc__r=rKr r r r r'srz(zope.component.tests.test_interface.foo Ϊ docstringz1zope.component.tests.test_interface.foo docstring)rr"r )rrr r r r&&s z%Test_getInterfaceAllDocs.test_w_classcCs2ddlm}Gdd„d|ƒ}|j|j|ƒdƒdS)Nr)rc@seZdZdZdS)zBTest_getInterfaceAllDocs.test_w_interface_no_members..IFoorIN)rrrrLr r r r r2srz)zope.component.tests.test_interface.ifoo rMz2zope.component.tests.test_interface.ifoo docstring)rrr"r )rrrr r r Ϊtest_w_interface_no_members0s   z4Test_getInterfaceAllDocs.test_w_interface_no_memberscsBddlm‰ddlm}G‡fdd„d|ƒ}|j|j|ƒd ƒdS) Nr)Ϊ Attribute)rcs"eZdZdZ”ddƒZdd„ZdS)zATest_getInterfaceAllDocs.test_w_interface_w_members..IFoorIr=zDo barcSsdS)rJNr )rr r r rK>szETest_getInterfaceAllDocs.test_w_interface_w_members..IFoo.bazN)rrrrLr=rKr )rOr r r;s rz)zope.component.tests.test_interface.ifoo z docstring zdo bar rKz3zope.component.tests.test_interface.ifoo docstring z:zope.component.tests.test_interface.ifoo docstring do bar z=zope.component.tests.test_interface.ifoo docstring do bar baz)rrOrr"r )rrrr )rOr Ϊtest_w_interface_w_members8s    z3Test_getInterfaceAllDocs.test_w_interface_w_membersN)rrrr r&rNrPr r r r rG s rGc@s<eZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d S) ΪTest_nameToInterfacer)rrcOsddlm}|||ŽS)Nr)ΪnameToInterface)rrR)rrr rRr r r r Ks zTest_nameToInterface._callFUTcCs|j|jtƒdƒdkƒdS)NΪNone)r'r r)rr r r Ϊ test_w_NoneOsz Test_nameToInterface.test_w_NonecCs$ddlm}|j||jtƒdƒdS)Nr)r0r1)r2r0rr r)rr0r r r r3Rs zTest_nameToInterface.test_misscCshddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|jtƒdƒ}|j ||kƒdS)Nr)r)r)rc@s eZdZdS)z+Test_nameToInterface.test_hit..IFooN)rrrr r r r r\srr*) rrrrr rr4r rr')rrrrr%rΪfoundr r r r5Ws   zTest_nameToInterface.test_hitN) rrrr-rrr rTr3r5r r r r rQGs rQc@s<eZdZddlmZmZdd„Zdd„Zdd„Zd d „Z d S) ΪTest_interfaceToNamer)rrcOsddlm}|||ŽS)Nr)ΪinterfaceToName)rrW)rrr rWr r r r gs zTest_interfaceToName._callFUTcCs|j|jtƒdƒdƒdS)NrS)r"r r)rr r r rTksz Test_interfaceToName.test_w_NonecCs6ddlm}Gdd„d|ƒ}|j|jtƒ|ƒdƒdS)Nr)rc@s eZdZdS)z6Test_interfaceToName.test_w_unregistered..IFooN)rrrr r r r rpsrz(zope.component.tests.test_interface.IFoo)rrr"r r)rrrr r r Ϊtest_w_unregisteredns z(Test_interfaceToName.test_w_unregisteredcCsbddlm}ddlm}ddlm}|ƒ}Gdd„d|ƒ}|j||dƒ|j|jt ƒ|ƒdƒdS) Nr)r)r)rc@s eZdZdS)z4Test_interfaceToName.test_w_registered..IFooN)rrrr r r r rzsrr*z(zope.component.tests.test_interface.IFoo) rrrrr rr4r"r r)rrrrr%rr r r Ϊtest_w_registeredus   z&Test_interfaceToName.test_w_registeredN) rrrr-rrr rTrXrYr r r r rVcs rVc CsRtjtjtƒtjtƒtjtƒtjtƒtjtƒtjtƒtjt ƒtjt ƒtjt ƒf ƒS)N) ΪunittestZ TestSuiteZ makeSuiterr.r6r9rBrDrGrQrVr r r r Ϊ test_suitesr[) rLrZZTestCaserr.r6r9rBrDrGrQrVr[r r r r Ϊs:22?'