Ë
    š”e³¸ ã                   óâ  — d Z ddlZddlmZ ddlmZ ddlmZ  G d„ dej                  «      Z	 G d„ d	e	«      Z
 G d
„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Z G d„ dej                  «      Z G d„ de«      Z G d„ de«      Z G d„ dee«      Z G d„ dee«      Z G d„ dej                  «      Z G d„ de«      Z G d„ de«      Z G d „ d!«      Zy)"zComponent Registry Testsé    N©Ú	Interface)ÚVerifyingAdapterRegistry©Ú
Componentsc                   óÐ  ‡ — e Zd Zd„ Zdsd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)d(„ Z*d)„ Z+d*„ Z,d+„ Z-d,„ Z.d-„ Z/d.„ Z0d/„ Z1d0„ Z2d1„ Z3d2„ Z4d3„ Z5d4„ Z6d5„ Z7d6„ Z8d7„ Z9d8„ Z:d9„ Z;d:„ Z<d;„ Z=d<„ Z>d=„ Z?d>„ Z@d?„ ZAd@„ ZBdA„ ZCdB„ ZDdC„ ZEdD„ ZFdE„ ZGˆ fdF„ZHˆ fdG„ZIdH„ ZJdI„ ZKdJ„ ZLdK„ ZMdL„ ZNdM„ ZOˆ fdN„ZPdO„ ZQdP„ ZRdQ„ ZSdR„ ZTdS„ ZUdT„ ZVdU„ ZWdV„ ZXdW„ ZYdX„ ZZdY„ Z[dZ„ Z\d[„ Z]d\„ Z^d]„ Z_d^„ Z`d_„ Zad`„ Zbda„ Zcdb„ Zddc„ Zedd„ Zfde„ Zgdf„ Zhdg„ Zidh„ Zjdi„ Zkdj„ Zldk„ Zmdl„ Zndm„ Zodn„ Zpdo„ Zqdtdp„Zrdq„ Zsdr„ Ztˆ xZuS )uÚComponentsTestsc                 ó   — t         S ©Nr   ©Úselfs    úD/usr/lib/python3/dist-packages/zope/interface/tests/test_registry.pyÚ_getTargetClasszComponentsTests._getTargetClass   s   € ÜÐó    c                 ó6   —  | j                  «       |g|¢­i |¤ŽS r   ©r   )r   ÚnameÚargsÚkws       r   Ú_makeOnezComponentsTests._makeOne   s"   € Ø%ˆt×#Ñ#Ó% dÐ8¨TÒ8°RÑ8Ð8r   c                 ó@   ‡— ddl m} g Šˆfd„}t        ||¬«      }|‰fS )Nr   )Úregistryc                  ó,   •— ‰j                  | |f«       y r   ©Úappend)r   r   Ú_eventss     €r   Ú_notifyz,ComponentsTests._wrapEvents.<locals>._notify"   s   ø€ Ø�N‰N˜D "˜:Õ&r   )Únotify)Úzope.interfacer   Ú_Monkey)r   r   r   Ú_monkeyr   s       @r   Ú_wrapEventszComponentsTests._wrapEvents   s'   ø€ Ý+Øˆô	'ä˜(¨7Ô3ˆØ˜ÐÐr   c                 ó®  — ddl m} | j                  d«      }| j                  |j                  d«       | j                  |j
                  d«       | j                  t        |j                  |«      «       | j                  t        |j                  |«      «       | j                  |j                  j
                  d«       | j                  |j                  j
                  d«       | j                  |j                  i «       | j                  |j                  i «       | j                  |j                  g «       | j                  |j                  g «       y )Nr   )ÚAdapterRegistryÚtesting© )Úzope.interface.adapterr$   r   ÚassertEqualÚ__name__Ú	__bases__Ú
assertTrueÚ
isinstanceÚadaptersÚ	utilitiesÚ_utility_registrationsÚ_adapter_registrationsÚ_subscription_registrationsÚ_handler_registrations)r   r$   Úcomps      r   Útest_ctor_no_basesz"ComponentsTests.test_ctor_no_bases'   sõ   € Ý:Ø�}‰}˜YÓ'ˆØ×Ñ˜Ÿ™¨	Ô2Ø×Ñ˜Ÿ™¨Ô,Ø�‰œ
 4§=¡=°/ÓBÔCØ�‰œ
 4§>¡>°?ÓCÔDØ×Ñ˜Ÿ™×0Ñ0°"Ô5Ø×Ñ˜Ÿ™×1Ñ1°2Ô6Ø×Ñ˜×4Ñ4°bÔ9Ø×Ñ˜×4Ñ4°bÔ9Ø×Ñ˜×9Ñ9¸2Ô>Ø×Ñ˜×4Ñ4°bÕ9r   c                 ó‚  — | j                  d«      }| j                  d|f«      }| j                  |j                  d«       | j                  |j                  |f«       | j                  |j                  j                  |j                  f«       | j                  |j
                  j                  |j
                  f«       y )NÚbaser%   )r   r(   r)   r*   r-   r.   )r   r6   r3   s      r   Útest_ctor_w_basez ComponentsTests.test_ctor_w_base5   sŽ   € Ø�}‰}˜VÓ$ˆØ�}‰}˜Y¨¨Ó0ˆØ×Ñ˜Ÿ™¨	Ô2Ø×Ñ˜Ÿ™¨$¨Ô1Ø×Ñ˜Ÿ™×0Ñ0°4·=±=Ð2BÔCØ×Ñ˜Ÿ™×1Ñ1°D·N±NÐ3DÕEr   c                 ó\   — | j                  d«      }| j                  t        |«      d«       y )Nr%   z<Components testing>©r   r(   Úrepr©r   r3   s     r   Útest___repr__zComponentsTests.test___repr__=   s%   € Ø�}‰}˜YÓ'ˆØ×Ñœ˜d›Ð%;Õ<r   c                 ó¦  — | j                  d«      }| j                  d«      }| j                  «       }||f|_        | j                  |j                  ||f«       | j                  |j                  j                  |j                  |j                  f«       | j                  |j                  j                  |j                  |j                  f«       y )NÚbase1Úbase2)r   r*   r(   r-   r.   )r   r>   r?   r3   s       r   Útest_assign_to___bases__z(ComponentsTests.test_assign_to___bases__C   s    € Ø—‘˜gÓ&ˆØ—‘˜gÓ&ˆØ�}‰}‹ˆØ ˜ˆŒØ×Ñ˜Ÿ™¨%°¨Ô8Ø×Ñ˜Ÿ™×0Ñ0ØŸ.™.¨%¯.©.Ð9ô	;à×Ñ˜Ÿ™×1Ñ1ØŸ/™/¨5¯?©?Ð;õ	=r   c                 ó  — ddl m}m}  G d„ d|«      } |d«      } |d«       G d„ d«      «       } |«       }d}| j                  «       }|j	                  |||¬	«       | j                  |j                  |df   ||d f«       y )
Nr   ©ÚnamedÚInterfaceClassc                   ó   — e Zd Zy)úFComponentsTests.test_registerUtility_with_component_name.<locals>.IFooN©r)   Ú
__module__Ú__qualname__r&   r   r   ÚIFoorF   R   ó   „ Ør   rJ   Úfooc                   ó   — e Zd Zy)úEComponentsTests.test_registerUtility_with_component_name.<locals>.FooNrG   r&   r   r   ÚFoorN   V   ó   „ àr   rO   Úinfo©rQ   )Úzope.interface.declarationsrC   rD   r   ÚregisterUtilityr(   r/   )	r   rC   rD   rJ   ÚifoorO   rL   Ú_infor3   s	            r   Ú(test_registerUtility_with_component_namez8ComponentsTests.test_registerUtility_with_component_nameN   s‹   € ßEô	�>ô 	á�F‹|ˆá	ˆu‹÷	ð 	ó 
ð	á‹eˆØˆà�}‰}‹ˆØ×Ñ˜S $¨UÐÔ3Ø×ÑØ×'Ñ'¨¨e¨Ñ4Ø�%˜Ðõ	 r   c                 ó„   — d„ }t        «       }| j                  «       }| j                  t        |j                  ||¬«       y )Nc                  ó   — t        «       ‚r   ©ÚNotImplementedErrorr&   r   r   Ú_factoryzQComponentsTests.test_registerUtility_both_factory_and_component.<locals>._factoryc   ó   € Ü%Ó'Ð'r   ©Ú	componentÚfactory)Úobjectr   ÚassertRaisesÚ	TypeErrorrT   ©r   r\   Ú_to_regr3   s       r   Ú/test_registerUtility_both_factory_and_componentz?ComponentsTests.test_registerUtility_both_factory_and_componentb   s;   € ò	(ä“(ˆØ�}‰}‹ˆØ×Ñœ) T×%9Ñ%9Ø$+°Xð 	õ 	?r   c                 óÖ  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }d}d}t        «       }| j                  «       }	| j                  «       \  }
}|
5  |	j                  ||||«       d d d «       | j                  |	j                  j                  d   |   |   |u «       | j                  |	j                  ||f   ||d f«       | j                  |	j                  j                  d   |   d	   |f«       | j                  t!        |«      d
«       |d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j                  |«      «       | j                  |j                  j$                  |	u «       | j                  |j                  j&                  |u «       | j                  |j                  j(                  |u «       | j                  |j                  j*                  |u «       | j                  |j                  j,                  |u «       | j                  |j                  j.                  d u «       y # 1 sw Y   �ŒòxY w)Nr   ©rD   ©Ú
Registered©ÚUtilityRegistrationc                   ó   — e Zd Zy)ú>ComponentsTests.test_registerUtility_w_component.<locals>.IFooNrG   r&   r   r   rJ   rn   o   rK   r   rJ   rQ   r   Ú é   )rS   rD   Úzope.interface.interfacesrj   Úzope.interface.registryrl   ra   r   r"   rT   r+   r.   Ú	_adaptersr(   r/   Ú_subscribersÚlenr,   r   Úprovidedr   r_   rQ   r`   )r   rD   rj   rl   rJ   rU   rV   Ú_namere   r3   r!   r   r   r   Úevents                  r   Ú test_registerUtility_w_componentz0ComponentsTests.test_registerUtility_w_componentj   sþ  € Ý>Ý8Ý?ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	>Ø× Ñ  ¨$°°uÔ=÷	>à�‰˜Ÿ™×0Ñ0°Ñ3°DÑ9¸%Ñ@ÀGÐKÔLØ×Ñ˜×4Ñ4°T¸5°[ÑAØ! 5¨$Ð/ô	1à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAÀGÀ:ÔNØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷#	>ñ 	>ús   ÁIÉI(c                 óÞ  ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }d}d}t        «       Šˆfd	„}| j                  «       }	| j                  «       \  }
}|
5  |	j                  d ||||¬
«       d d d «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |	u «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  ‰u «       | j                  |j                  j$                  |u «       | j                  |j                  j&                  |u «       y # 1 sw Y   �ŒnxY w)Nr   rh   ri   rk   c                   ó   — e Zd Zy)ú<ComponentsTests.test_registerUtility_w_factory.<locals>.IFooNrG   r&   r   r   rJ   r|   �   rK   r   rJ   rQ   r   c                  ó   •— ‰ S r   r&   ©re   s   €r   r\   z@ComponentsTests.test_registerUtility_w_factory.<locals>._factory•   ó   ø€ ØˆNr   ©r`   rp   )rS   rD   rq   rj   rr   rl   ra   r   r"   rT   r(   ru   r+   r,   r   rv   r   r_   rQ   r`   )r   rD   rj   rl   rJ   rU   rV   rw   r\   r3   r!   r   r   r   rx   re   s                  @r   Útest_registerUtility_w_factoryz.ComponentsTests.test_registerUtility_w_factoryŠ   s�  ø€ Ý>Ý8Ý?ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆô	à�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	MØ× Ñ   t¨U°EÀ8Ð ÔL÷	Mà×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	Mñ 	Mús   ÁG"Ç"G,c                 ó–   —  G d„ d«      }d}d} |«       }| j                  «       }| j                  t        |j                  |d ||«       y )Nc                   ó   — e Zd Zy)úGComponentsTests.test_registerUtility_no_provided_available.<locals>.FooNrG   r&   r   r   rO   r„   ©   rK   r   rO   rQ   r   )r   rb   rc   rT   )r   rO   rV   rw   re   r3   s         r   Ú*test_registerUtility_no_provided_availablez:ComponentsTests.test_registerUtility_no_provided_available¨   sL   € ÷	ñ 	ð ˆØˆÙ“%ˆØ�}‰}‹ˆØ×Ñœ)Ø×.Ñ.°¸¸uÀeõ	Mr   c                 óú  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } G d„ d	«      } |d«      }d
}d}	 |«       }
 ||
|«       | j                  «       }| j                  «       \  }}|5  |j                  |
d |	|«       d d d «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |	u «       | j                  |j                  j$                  |
u «       | j                  |j                  j&                  |u «       | j                  |j                  j(                  d u «       y # 1 sw Y   �ŒnxY w)Nr   ©ÚdirectlyProvidesrh   ri   rk   c                   ó   — e Zd Zy)ú>ComponentsTests.test_registerUtility_wo_provided.<locals>.IFooNrG   r&   r   r   rJ   rŠ   ¹   rK   r   rJ   c                   ó   — e Zd Zy)ú=ComponentsTests.test_registerUtility_wo_provided.<locals>.FooNrG   r&   r   r   rO   rŒ   »   rK   r   rO   rQ   r   rp   )rS   rˆ   rD   rq   rj   rr   rl   r   r"   rT   r(   ru   r+   r,   ra   r   rv   r   r_   rQ   r`   )r   rˆ   rD   rj   rl   rJ   rO   rU   rV   rw   re   r3   r!   r   r   r   rx   s                    r   Ú test_registerUtility_wo_providedz0ComponentsTests.test_registerUtility_wo_provided³   s—  € Ý@Ý>Ý8Ý?ô	�>ô 	÷	ñ 	á�F‹|ˆØˆØˆÙ“%ˆÙ˜ $Ô'Ø�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	>Ø× Ñ  ¨$°°uÔ=÷	>à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷	>ñ 	>ús   Á/G0Ç0G:c                 óL  — ddl m}  G d„ d|«      } |d«      }d}d}t        «       }| j                  «       }|j	                  ||||«       | j                  «       \  }}	|5  |j	                  ||||«       d d d «       | j                  t        |	«      d«       y # 1 sw Y   Œ%xY w)Nr   rh   c                   ó   — e Zd Zy)úJComponentsTests.test_registerUtility_duplicates_existing_reg.<locals>.IFooNrG   r&   r   r   rJ   r�   Ö   rK   r   rJ   rQ   r   )rS   rD   ra   r   rT   r"   r(   ru   ©
r   rD   rJ   rU   rV   rw   re   r3   r!   r   s
             r   Ú,test_registerUtility_duplicates_existing_regz<ComponentsTests.test_registerUtility_duplicates_existing_regÓ   s�   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨E°5Ô9Ø×+Ñ+Ó-Ñˆ�Øñ 	>Ø× Ñ  ¨$°°uÔ=÷	>à×Ñœ˜W› qÕ)÷	>ð 	>ús   Á!BÂB#c                 óø  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }| j                  «       }|j	                  ||||«       | j                  «       \  }	}
|	5  |j	                  ||||«       d d d «       | j                  t        |
«      d«       | j                  |j                  ||f   ||d f«       | j                  |j                  j                  d   |   d	   |f«       y # 1 sw Y   ŒyxY w)
Nr   rh   c                   ó   — e Zd Zy)úCComponentsTests.test_registerUtility_w_different_info.<locals>.IFooNrG   r&   r   r   rJ   r•   æ   rK   r   rJ   Úinfo1Úinfo2r   é   ro   ©rS   rD   ra   r   rT   r"   r(   ru   r/   r.   rt   )r   rD   rJ   rU   Ú_info1Ú_info2rw   re   r3   r!   r   s              r   Ú%test_registerUtility_w_different_infoz5ComponentsTests.test_registerUtility_w_different_infoã   sù   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨E°6Ô:Ø×+Ñ+Ó-Ñˆ�Øñ 	?Ø× Ñ  ¨$°°vÔ>÷	?à×Ñœ˜W› qÔ)Ø×Ñ˜×4Ñ4°d¸E°]ÑCØ! 6¨4Ð0ô	2à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAØ!˜õ	%÷	?ð 	?ús   Á#C0Ã0C9c                 óV  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }t        «       }| j                  «       }	|	j	                  ||||«       | j                  «       \  }
}|
5  |	j	                  ||||«       d d d «       | j                  t        |«      d«       | j                  |	j                  ||f   ||d f«       | j                  |	j                  ||f   ||d f«       | j                  |	j                  j                  d   |   d	   ||f«       y # 1 sw Y   ŒžxY w)
Nr   rh   c                   ó   — e Zd Zy)úSComponentsTests.test_registerUtility_w_different_names_same_component.<locals>.IFooNrG   r&   r   r   rJ   rŸ   û   rK   r   rJ   rQ   Úname1Úname2rp   ro   r™   ©r   rD   rJ   rU   rV   Ú_name1Ú_name2Ú
_other_regre   r3   r!   r   s               r   Ú5test_registerUtility_w_different_names_same_componentzEComponentsTests.test_registerUtility_w_different_names_same_componentø   s,  € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“Xˆ
Ü“(ˆØ�}‰}‹ˆØ×Ñ˜Z¨¨v°uÔ=Ø×+Ñ+Ó-Ñˆ�Øñ 	?Ø× Ñ  ¨$°¸Ô>÷	?à×Ñœ˜W› qÔ)Ø×Ñ˜×4Ñ4°d¸F°^ÑDØ$ e¨TÐ2ô	4à×Ñ˜×4Ñ4°d¸F°^ÑDØ! 5¨$Ð/ô	1à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAØ$ gÐ/õ	1÷	?ð 	?ús   Á-DÄD(c                 ó¦  — ddl m} ddlm} ddlm} ddlm}  G d„ d|«      } |d«      }d}d	}t        «       t        «       }
}	| j                  «       }|j                  |	|||«       | j                  «       \  }}|5  |j                  |
|||«       d d d «       | j                  t        |«      d
«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |	u «       | j                  |j                  j&                  |u «       | j                  |j                  j(                  d u «       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |
u «       | j                  |j                  j&                  |u «       | j                  |j                  j(                  d u «       y # 1 sw Y   �Œ¶xY w)Nr   rh   ©ÚUnregisteredri   rk   c                   ó   — e Zd Zy)úHComponentsTests.test_registerUtility_replaces_existing_reg.<locals>.IFooNrG   r&   r   r   rJ   r«     rK   r   rJ   rQ   r   r˜   rp   )rS   rD   rq   r©   rj   rr   rl   ra   r   rT   r"   r(   ru   r+   r,   r   rv   r   r_   rQ   r`   )r   rD   r©   rj   rl   rJ   rU   rV   rw   Ú_beforeÚ_afterr3   r!   r   r   r   rx   s                    r   Ú*test_registerUtility_replaces_existing_regz:ComponentsTests.test_registerUtility_replaces_existing_reg  sŽ  € Ý>Ý:Ý8Ý?ô	�>ô 	á�F‹|ˆØˆØˆÜ ›(¤F£H�ˆØ�}‰}‹ˆØ×Ñ˜W d¨E°5Ô9Ø×+Ñ+Ó-Ñˆ�Øñ 	=Ø× Ñ  ¨¨u°eÔ<÷	=à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Ô5Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°&Ð8Ô9Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷1	=ñ 	=ús   Á=MÍMc                 óz  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }| j                  «       }|j	                  ||||«       | j                  «       \  }	}
|	5  |j	                  ||||«       d d d «       | j                  |j                  j                  d   |   d   |f«       y # 1 sw Y   Œ:xY w)	Nr   rh   c                   ó   — e Zd Zy)úDComponentsTests.test_registerUtility_w_existing_subscr.<locals>.IFooNrG   r&   r   r   rJ   r±   <  rK   r   rJ   rQ   r    r¡   ro   )	rS   rD   ra   r   rT   r"   r(   r.   rt   ©r   rD   rJ   rU   rV   r£   r¤   re   r3   r!   r   s              r   Ú&test_registerUtility_w_existing_subscrz6ComponentsTests.test_registerUtility_w_existing_subscr9  s¹   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×+Ñ+Ó-Ñˆ�Øñ 	?Ø× Ñ  ¨$°¸Ô>÷	?à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAÀGÀ:ÕN÷	?ð 	?ús   Á#B1Â1B:c                 ó&  — ddl m}  G d„ d|«      } |d«      }d}d}t        «       }| j                  «       }| j	                  «       \  }}	|5  |j                  ||||d«       d d d «       | j                  t        |	«      d«       y # 1 sw Y   Œ%xY w)Nr   rh   c                   ó   — e Zd Zy)ú;ComponentsTests.test_registerUtility_wo_event.<locals>.IFooNrG   r&   r   r   rJ   r¶   M  rK   r   rJ   rQ   r   F)rS   rD   ra   r   r"   rT   r(   ru   r‘   s
             r   Útest_registerUtility_wo_eventz-ComponentsTests.test_registerUtility_wo_eventJ  s�   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	EØ× Ñ  ¨$°°u¸eÔD÷	Eà×Ñœ˜W› qÕ)÷	Eð 	Eús   ÁBÂBc                 óš  —  G d„ d| j                  «       «      } |«       }|j                  t        «       t        «       | j	                  t        t        |j                  «       «      «      d«        G d„ dt        «      }|j                  t        «       |«       | j	                  t        t        |j                  «       «      «      d«       y )Nc                   ó"   ‡ — e Zd ZdZˆ fd„Zˆ xZS )údComponentsTests.test_registerUtility_changes_object_identity_after.<locals>.CompThatChangesAfter1Regr   c                 óœ   •— | xj                   dz  c_         t        ‰| �  |Ž  | j                   dk(  rt        | j                  «      | _        y y )Nrp   )Ú	reg_countÚsuperrT   Údictr/   ©r   r   Ú	__class__s     €r   rT   ztComponentsTests.test_registerUtility_changes_object_identity_after.<locals>.CompThatChangesAfter1Reg.registerUtility^  sB   ø€ Ø—’ !Ñ#•Ü‘Ñ'¨Ñ.Ø—>‘> QÒ&Ü26°t×7RÑ7RÓ2S�DÕ/ð 'r   ©r)   rH   rI   r¼   rT   Ú__classcell__©rÀ   s   @r   ÚCompThatChangesAfter1Regrº   \  s   ø„ ØˆI÷Tð Tr   rÄ   rp   c                   ó   — e Zd Zy)úPComponentsTests.test_registerUtility_changes_object_identity_after.<locals>.IFooNrG   r&   r   r   rJ   rÆ   i  rK   r   rJ   r˜   ©r   rT   ra   r   r(   ru   ÚlistÚregisteredUtilities)r   rÄ   r3   rJ   s       r   Ú2test_registerUtility_changes_object_identity_afterzBComponentsTests.test_registerUtility_changes_object_identity_afterY  s›   € ô	T t×';Ñ';Ó'=ô 	Tñ (Ó)ˆØ×ÑœV›X¤yÔ1à×ÑœœT $×":Ñ":Ó"<Ó=Ó>ÀÔBô	”9ô 	ð 	×ÑœV›X tÔ,Ø×ÑœœT $×":Ñ":Ó"<Ó=Ó>ÀÕBr   c                 óP  —  G d„ d| j                  «       «      } |«       }|j                  t        «       t        «       | j	                  t        t        |j                  «       «      «      d«        G d„ dt        «      }|j                  t        «       |«       | j	                  t        t        |j                  «       «      «      d«        G d„ dt        «      }|j                  t        «       |«       | j	                  t        t        |j                  «       «      «      d	«       y )
Nc                   ó"   ‡ — e Zd ZdZˆ fd„Zˆ xZS )úeComponentsTests.test_registerUtility_changes_object_identity_before.<locals>.CompThatChangesAfter2Regr   c                 óš   •— | xj                   dz  c_         | j                   dk(  rt        | j                  «      | _        t        ‰| �  |Ž  y )Nrp   r˜   )r¼   r¾   r/   r½   rT   r¿   s     €r   rT   zuComponentsTests.test_registerUtility_changes_object_identity_before.<locals>.CompThatChangesAfter2Reg.registerUtilityt  s=   ø€ Ø—’ !Ñ#•Ø—>‘> QÒ&Ü26°t×7RÑ7RÓ2S�DÔ/ä‘Ñ'¨Ò.r   rÁ   rÃ   s   @r   ÚCompThatChangesAfter2RegrÍ   r  s   ø„ ØˆI÷/ð /r   rÏ   rp   c                   ó   — e Zd Zy)úQComponentsTests.test_registerUtility_changes_object_identity_before.<locals>.IFooNrG   r&   r   r   rJ   rÑ   €  rK   r   rJ   r˜   c                   ó   — e Zd Zy)úQComponentsTests.test_registerUtility_changes_object_identity_before.<locals>.IBarNrG   r&   r   r   ÚIBarrÓ   ‡  rK   r   rÔ   é   rÇ   )r   rÏ   r3   rJ   rÔ   s        r   Ú3test_registerUtility_changes_object_identity_beforezCComponentsTests.test_registerUtility_changes_object_identity_beforeo  sÜ   € ô	/ t×';Ñ';Ó'=ô 	/ñ (Ó)ˆØ×ÑœV›X¤yÔ1à×ÑœœT $×":Ñ":Ó"<Ó=Ó>ÀÔBô	”9ô 	ð 	×ÑœV›X tÔ,Ø×ÑœœT $×":Ñ":Ó"<Ó=Ó>ÀÔBô	”9ô 	ð 	×ÑœV›X tÔ,Ø×ÑœœT $×":Ñ":Ó"<Ó=Ó>ÀÕBr   c                 ól   — | j                  «       }| j                  t        |j                  d d d ¬«       y )N)r_   rv   r`   )r   rb   rc   ÚunregisterUtilityr;   s     r   ÚAtest_unregisterUtility_neither_factory_nor_component_nor_providedzQComponentsTests.test_unregisterUtility_neither_factory_nor_component_nor_providedŽ  s2   € Ø�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Ø$(°4Àð 	õ 	Gr   c                 ó„   — d„ }t        «       }| j                  «       }| j                  t        |j                  ||¬«       y )Nc                  ó   — t        «       ‚r   rZ   r&   r   r   r\   zSComponentsTests.test_unregisterUtility_both_factory_and_component.<locals>._factory”  r]   r   r^   )ra   r   rb   rc   rØ   rd   s       r   Ú1test_unregisterUtility_both_factory_and_componentzAComponentsTests.test_unregisterUtility_both_factory_and_component“  s;   € ò	(ä“(ˆØ�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Ø$+°Xð 	õ 	?r   c                 ó,  — ddl m}  G d„ d|«      } |d«      }d}t        «       }| j                  «       }| j	                  «       \  }}|5  |j                  |||«      }	d d d «       | j                  	«       | j                  |«       y # 1 sw Y   Œ,xY w)Nr   rh   c                   ó   — e Zd Zy)úEComponentsTests.test_unregisterUtility_w_component_miss.<locals>.IFooNrG   r&   r   r   rJ   rß   ž  rK   r   rJ   r   )rS   rD   ra   r   r"   rØ   ÚassertFalse)
r   rD   rJ   rU   rw   re   r3   r!   r   Úunregs
             r   Ú'test_unregisterUtility_w_component_missz7ComponentsTests.test_unregisterUtility_w_component_miss›  s�   € Ý>ô	�>ô 	á�F‹|ˆØˆÜ“(ˆØ�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	AØ×*Ñ*¨7°D¸%Ó@ˆE÷	Aà×Ñ˜ÔØ×Ñ˜Õ!÷	Að 	Aús   ÁB
Â
Bc                 ó”  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }d}t        «       }| j                  «       }|j                  |||«       | j                  «       \  }	}
|	5  |j                  |||«      }d d d «       | j                  «       | j                  |j                  j                  «       | j                  ||f|j                  v «       | j                  |j                  j                   «       | j#                  t%        |
«      d«       |
d   \  }}|\  }| j#                  |i «       | j                  t'        ||«      «       | j                  t'        |j                  |«      «       | j                  |j                  j(                  |u «       | j                  |j                  j*                  |u «       | j                  |j                  j,                  |u «       | j                  |j                  j.                  |u «       | j                  |j                  j0                  d u «       y # 1 sw Y   �ŒÁxY w)	Nr   rh   r¨   rk   c                   ó   — e Zd Zy)ú@ComponentsTests.test_unregisterUtility_w_component.<locals>.IFooNrG   r&   r   r   rJ   rå   ¯  rK   r   rJ   r   rp   )rS   rD   rq   r©   rr   rl   ra   r   rT   r"   rØ   r+   rà   r.   rs   r/   rt   r(   ru   r,   r   rv   r   r_   r`   )r   rD   r©   rl   rJ   rU   rw   re   r3   r!   r   rá   r   r   rx   s                  r   Ú"test_unregisterUtility_w_componentz2ComponentsTests.test_unregisterUtility_w_componentª  sÏ  € Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨EÔ2Ø×+Ñ+Ó-Ñˆ�Øñ 	AØ×*Ñ*¨7°D¸%Ó@ˆE÷	Aà�‰˜ÔØ×Ñ˜Ÿ™×1Ñ1Ô2Ø×Ñ˜$ ˜¨$×*EÑ*EÐEÔFØ×Ñ˜Ÿ™×4Ñ4Ô5Ø×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷!	Añ 	Aús   Á*H=È=Ic                 óÜ  ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }d}d}t        «       Šˆfd	„}| j                  «       }	|	j                  d ||||¬
«       | j                  «       \  }
}|
5  |	j                  d |||¬
«      }d d d «       | j                  «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |	u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  ‰u «       | j                  |j                  j&                  |u «       y # 1 sw Y   �ŒXxY w)Nr   rh   r¨   rk   c                   ó   — e Zd Zy)ú>ComponentsTests.test_unregisterUtility_w_factory.<locals>.IFooNrG   r&   r   r   rJ   ré   Î  rK   r   rJ   rQ   r   c                  ó   •— ‰ S r   r&   r~   s   €r   r\   zBComponentsTests.test_unregisterUtility_w_factory.<locals>._factoryÔ  r   r   r€   rp   )rS   rD   rq   r©   rr   rl   ra   r   rT   r"   rØ   r+   r(   ru   r,   r   rv   r   r_   r`   )r   rD   r©   rl   rJ   rU   rV   rw   r\   r3   r!   r   rá   r   r   rx   re   s                   @r   Ú test_unregisterUtility_w_factoryz0ComponentsTests.test_unregisterUtility_w_factoryÉ  s™  ø€ Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆô	à�}‰}‹ˆØ×Ñ˜T 4¨°¸xÐÔHØ×+Ñ+Ó-Ñˆ�Øñ 	PØ×*Ñ*¨4°°uÀhÐ*ÓOˆE÷	Pà�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	Pñ 	Pús   Á5G!Ç!G+c                 óB  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } G d„ d	«      } |d«      }d
}d}	 |«       }
 ||
|«       | j                  «       }|j                  |
||	|«       | j                  «       \  }}|5  |j                  |
d |	«      }d d d «       | j                  «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |	u «       | j                  |j                  j&                  |
u «       | j                  |j                  j(                  |u «       | j                  |j                  j*                  d u «       y # 1 sw Y   �ŒxY w)Nr   r‡   rh   r¨   rk   c                   ó   — e Zd Zy)úIComponentsTests.test_unregisterUtility_wo_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   rî   î  rK   r   rJ   c                   ó   — e Zd Zy)úHComponentsTests.test_unregisterUtility_wo_explicit_provided.<locals>.FooNrG   r&   r   r   rO   rð   ð  rK   r   rO   rQ   r   rp   ©rS   rˆ   rD   rq   r©   rr   rl   r   rT   r"   rØ   r+   r(   ru   r,   ra   r   rv   r   r_   rQ   r`   ©r   rˆ   rD   r©   rl   rJ   rO   rU   rV   rw   re   r3   r!   r   rá   r   r   rx   s                     r   Ú+test_unregisterUtility_wo_explicit_providedz;ComponentsTests.test_unregisterUtility_wo_explicit_providedè  s»  € Ý@Ý>Ý:Ý?ô	�>ô 	÷	ñ 	á�F‹|ˆØˆØˆÙ“%ˆÙ˜ $Ô'Ø�}‰}‹ˆØ×Ñ˜W d¨E°5Ô9Ø×+Ñ+Ó-Ñˆ�Øñ 	AØ×*Ñ*¨7°D¸%Ó@ˆE÷	Aà�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷	Añ 	Aúó   ÂHÈHc                 óB  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } G d„ d	«      } |d«      }d
}d}	 |«       }
 ||
|«       | j                  «       }|j                  |
||	|«       | j                  «       \  }}|5  |j                  ||	¬«      }d d d «       | j                  «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                   |u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |	u «       | j                  |j                  j&                  |
u «       | j                  |j                  j(                  |u «       | j                  |j                  j*                  d u «       y # 1 sw Y   �ŒxY w)Nr   r‡   rh   r¨   rk   c                   ó   — e Zd Zy)úLComponentsTests.test_unregisterUtility_wo_component_or_factory.<locals>.IFooNrG   r&   r   r   rJ   r÷     rK   r   rJ   c                   ó   — e Zd Zy)úKComponentsTests.test_unregisterUtility_wo_component_or_factory.<locals>.FooNrG   r&   r   r   rO   rù     rK   r   rO   rQ   r   ©rv   r   rp   rñ   rò   s                     r   Ú.test_unregisterUtility_wo_component_or_factoryz>ComponentsTests.test_unregisterUtility_wo_component_or_factory
  s¾  € Ý@Ý>Ý:Ý?ô	�>ô 	÷	ñ 	á�F‹|ˆØˆØˆÙ“%ˆÙ˜ $Ô'Ø�}‰}‹ˆØ×Ñ˜W d¨E°5Ô9Ø×+Ñ+Ó-Ñˆ�Øñ 	Fà×*Ñ*°D¸uÐ*ÓEˆE÷	Fð 	�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×.Ñ.°'Ð9Ô:Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷	Fñ 	Fúrô   c                 ó   — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }| j                  «       }|j	                  ||||«       |j	                  ||||«       | j                  «       \  }	}
|	5  |j                  |||«       d d d «       | j                  |j                  j                  d   |   d   |f«       y # 1 sw Y   Œ:xY w)	Nr   rh   c                   ó   — e Zd Zy)úFComponentsTests.test_unregisterUtility_w_existing_subscr.<locals>.IFooNrG   r&   r   r   rJ   rþ   0  rK   r   rJ   rQ   r    r¡   ro   ©
rS   rD   ra   r   rT   r"   rØ   r(   r.   rt   r²   s              r   Ú(test_unregisterUtility_w_existing_subscrz8ComponentsTests.test_unregisterUtility_w_existing_subscr-  sË   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×Ñ˜W d¨F°EÔ:Ø×+Ñ+Ó-Ñˆ�Øñ 	:Ø×"Ñ" 7¨D°&Ô9÷	:à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAÀGÀ:ÕN÷	:ð 	:úó   Á7CÃCc                 ó   — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }| j                  «       }|j	                  ||||«       |j	                  ||||«       | j                  «       \  }	}
|	5  |j                  |||«       d d d «       | j                  |j                  j                  d   |   d   |f«       y # 1 sw Y   Œ:xY w)	Nr   rh   c                   ó   — e Zd Zy)úSComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable.<locals>.IFooNrG   r&   r   r   rJ   r  B  rK   r   rJ   rQ   r    r¡   ro   )
rS   rD   r¾   r   rT   r"   rØ   r(   r.   rt   r²   s              r   Ú5test_unregisterUtility_w_existing_subscr_non_hashablezEComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable?  sË   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“&ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×Ñ˜W d¨F°EÔ:Ø×+Ñ+Ó-Ñˆ�Øñ 	:Ø×"Ñ" 7¨D°&Ô9÷	:à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAÀGÀ:ÕN÷	:ð 	:úr  c                 ó¬  — ddl m} ddlm}  G d„ d|«      } |d«      }d}d}d}t	        «       }| j                  «       }	|	j                  ||||«       |	j                  ||||«       | j                  «       \  }
}|
5  |	j                  |||«       d d d «       | j                  |	j                  j                  d   |   d	   |f«       y # 1 sw Y   Œ:xY w)
Nr   rh   )Ú_UtilityRegistrationsc                   ó   — e Zd Zy)ú_ComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable_fresh_cache.<locals>.IFooNrG   r&   r   r   rJ   r	  W  rK   r   rJ   rQ   r    r¡   ro   )rS   rD   rr   r  r¾   r   rT   r"   rØ   r(   r.   rt   )r   rD   r  rJ   rU   rV   r£   r¤   re   r3   r!   r   s               r   ÚAtest_unregisterUtility_w_existing_subscr_non_hashable_fresh_cachezQComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable_fresh_cacheQ  sÐ   € õ 	?ÝAô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“&ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×Ñ˜W d¨F°EÔ:à×+Ñ+Ó-Ñˆ�Øñ 	:Ø×"Ñ" 7¨D°&Ô9÷	:à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAÀGÀ:ÕN÷	:ð 	:ús   Á=C
Ã
Cc                 óè  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }| j                  «       }|j	                  ||||«       |j	                  ||||«       |j                  d«       |j	                  ||||«       | j                  «       \  }	}
|	5  |j                  |||«       d d d «       | j                  dt        |j                  j                  «      «       y # 1 sw Y   Œ9xY w)	Nr   rh   c                   ó   — e Zd Zy)ú]ComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable_reinitted.<locals>.IFooNrG   r&   r   r   rJ   r  l  rK   r   rJ   rQ   r    r¡   r6   )rS   rD   r¾   r   rT   Ú__init__r"   rØ   r(   ru   r.   rt   r²   s              r   Ú?test_unregisterUtility_w_existing_subscr_non_hashable_reinittedzOComponentsTests.test_unregisterUtility_w_existing_subscr_non_hashable_reinittedg  så   € õ 	?ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“&ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×Ñ˜W d¨F°EÔ:ð 	�‰�fÔà×Ñ˜W d¨F°EÔ:à×+Ñ+Ó-Ñˆ�Øñ 	:à×"Ñ" 7¨D°&Ô9÷	:ð 	×Ñ˜œC §¡× ;Ñ ;Ó<Õ=÷	:ð 	:ús   ÂC(Ã(C1c                 ó´  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }t        «       }| j                  «       }	|	j	                  ||||«       |	j	                  ||||«       | j                  «       \  }
}|
5  |	j                  |||«       d d d «       | j                  |	j                  j                  d   |   d   |f«       y # 1 sw Y   Œ:xY w)	Nr   rh   c                   ó   — e Zd Zy)úVComponentsTests.test_unregisterUtility_w_existing_subscr_other_component.<locals>.IFooNrG   r&   r   r   rJ   r  …  rK   r   rJ   rQ   r    r¡   ro   rÿ   r¢   s               r   Ú8test_unregisterUtility_w_existing_subscr_other_componentzHComponentsTests.test_unregisterUtility_w_existing_subscr_other_component‚  sÕ   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“Xˆ
Ü“(ˆØ�}‰}‹ˆØ×Ñ˜Z¨¨v°uÔ=Ø×Ñ˜W d¨F°EÔ:Ø×+Ñ+Ó-Ñˆ�Øñ 	:Ø×"Ñ" 7¨D°&Ô9÷	:à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAØ$˜õ	(÷	:ð 	:úó   ÂCÃCc                 ó´  — ddl m}  G d„ d|«      } |d«      }d}d}d}t        «       }t        «       }| j	                  «       }	|	j                  ||||«       |	j                  ||||«       | j                  «       \  }
}|
5  |	j                  |||«       d d d «       | j                  |	j                  j                  d   |   d   |f«       y # 1 sw Y   Œ:xY w)	Nr   rh   c                   ó   — e Zd Zy)úaComponentsTests.test_unregisterUtility_w_existing_subscr_other_component_mixed_hash.<locals>.IFooNrG   r&   r   r   rJ   r  ™  rK   r   rJ   rQ   r    r¡   ro   )rS   rD   ra   r¾   r   rT   r"   rØ   r(   r.   rt   r¢   s               r   ÚCtest_unregisterUtility_w_existing_subscr_other_component_mixed_hashzSComponentsTests.test_unregisterUtility_w_existing_subscr_other_component_mixed_hash–  sÕ   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆØˆä“Xˆ
ä“&ˆØ�}‰}‹ˆØ×Ñ˜Z¨¨v°uÔ=Ø×Ñ˜W d¨F°EÔ:Ø×+Ñ+Ó-Ñˆ�Øñ 	:Ø×"Ñ" 7¨D°&Ô9÷	:à×Ñ˜Ÿ™×4Ñ4°QÑ7¸Ñ=¸bÑAØ$˜õ	(÷	:ð 	:úr  c                 óv   — | j                  «       }| j                  t        |j                  «       «      g «       y r   )r   r(   rÈ   rÉ   r;   s     r   Útest_registeredUtilities_emptyz.ComponentsTests.test_registeredUtilities_empty¬  s+   € Ø�}‰}‹ˆØ×Ñœ˜d×6Ñ6Ó8Ó9¸2Õ>r   c                 ó¸  — ddl m} ddlm}  G d„ d|«      } |d«      }d}d}d}t	        «       }| j                  «       }	|	j                  ||||«       |	j                  ||||«       t        |	j                  «       d	„ ¬
«      }
| j                  t        |
«      d«       | j                  t        |
d   |«      «       | j                  |
d   j                  |	u «       | j                  |
d   j                  |u «       | j                  |
d   j                  |u «       | j                  |
d   j                   |u «       | j                  |
d   j"                  |u «       | j                  |
d   j$                  d u «       | j                  t        |
d   |«      «       | j                  |
d   j                  |	u «       | j                  |
d   j                  |u «       | j                  |
d   j                  |u «       | j                  |
d   j                   |u «       | j                  |
d   j"                  |u «       | j                  |
d   j$                  d u «       y )Nr   rh   rk   c                   ó   — e Zd Zy)ú?ComponentsTests.test_registeredUtilities_notempty.<locals>.IFooNrG   r&   r   r   rJ   r  ´  rK   r   rJ   rQ   r    r¡   c                 ó   — | j                   S r   ©r   ©Úrs    r   ú<lambda>zCComponentsTests.test_registeredUtilities_notempty.<locals>.<lambda>¾  s
   € ¸q¿v¹v€ r   ©Úkeyr˜   rp   )rS   rD   rr   rl   ra   r   rT   ÚsortedrÉ   r(   ru   r+   r,   r   rv   r   r_   rQ   r`   )r   rD   rl   rJ   rU   rV   r£   r¤   re   r3   Úregs              r   Ú!test_registeredUtilities_notemptyz1ComponentsTests.test_registeredUtilities_notempty°  sð  € Ý>å?ô	�>ô 	á�F‹|ˆØˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d¨F°EÔ:Ø×Ñ˜W d¨F°EÔ:Ü�T×-Ñ-Ó/Ñ5EÔFˆØ×Ñœ˜S› 1Ô%Ø�‰œ
 3 q¡6Ð+>Ó?Ô@Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™ vÐ-Ô.Ø�‰˜˜A™×(Ñ(¨GÐ3Ô4Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨$Ð.Ô/Ø�‰œ
 3 q¡6Ð+>Ó?Ô@Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™ vÐ-Ô.Ø�‰˜˜A™×(Ñ(¨GÐ3Ô4Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨$Ð.Õ/r   c                 óš   — ddl m}  G d„ d|«      } |d«      }| j                  «       }| j                  |j	                  |«      d u «       y )Nr   rh   c                   ó   — e Zd Zy)ú?ComponentsTests.test_queryUtility_miss_no_default.<locals>.IFooNrG   r&   r   r   rJ   r*  Ñ  rK   r   rJ   )rS   rD   r   r+   ÚqueryUtility©r   rD   rJ   rU   r3   s        r   Ú!test_queryUtility_miss_no_defaultz1ComponentsTests.test_queryUtility_miss_no_defaultÏ  sA   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ�‰˜×)Ñ)¨$Ó/°4Ð7Õ8r   c                 ó²   — ddl m}  G d„ d|«      } |d«      }| j                  «       }t        «       }| j	                  |j                  ||¬«      |u «       y )Nr   rh   c                   ó   — e Zd Zy)ú>ComponentsTests.test_queryUtility_miss_w_default.<locals>.IFooNrG   r&   r   r   rJ   r0  Ù  rK   r   rJ   ©Údefault)rS   rD   r   ra   r+   r+  )r   rD   rJ   rU   r3   Ú_defaults         r   Ú test_queryUtility_miss_w_defaultz0ComponentsTests.test_queryUtility_miss_w_default×  sM   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆÜ“8ˆØ�‰˜×)Ñ)¨$¸Ð)ÓAÀXÐMÕNr   c                 óÒ   — ddl m}  G d„ d|«      } |d«      }t        «       }| j                  «       }|j	                  ||«       | j                  |j                  |«      |u «       y )Nr   rh   c                   ó   — e Zd Zy)ú3ComponentsTests.test_queryUtility_hit.<locals>.IFooNrG   r&   r   r   rJ   r7  â  rK   r   rJ   )rS   rD   ra   r   rT   r+   r+  ©r   rD   rJ   rU   re   r3   s         r   Útest_queryUtility_hitz%ComponentsTests.test_queryUtility_hità  sX   € Ý>ô	�>ô 	á�F‹|ˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W dÔ+Ø�‰˜×)Ñ)¨$Ó/°7Ð:Õ;r   c                 óœ   — ddl m} ddlm}  G d„ d|«      } |d«      }| j	                  «       }| j                  ||j                  |«       y )Nr   rh   ©ÚComponentLookupErrorc                   ó   — e Zd Zy)ú2ComponentsTests.test_getUtility_miss.<locals>.IFooNrG   r&   r   r   rJ   r>  í  rK   r   rJ   )rS   rD   rq   r<  r   rb   Ú
getUtility)r   rD   r<  rJ   rU   r3   s         r   Útest_getUtility_missz$ComponentsTests.test_getUtility_missê  s?   € Ý>ÝBô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×ÑÐ.°·±ÀÕFr   c                 óÒ   — ddl m}  G d„ d|«      } |d«      }t        «       }| j                  «       }|j	                  ||«       | j                  |j                  |«      |u «       y )Nr   rh   c                   ó   — e Zd Zy)ú1ComponentsTests.test_getUtility_hit.<locals>.IFooNrG   r&   r   r   rJ   rC  õ  rK   r   rJ   )rS   rD   ra   r   rT   r+   r?  r8  s         r   Útest_getUtility_hitz#ComponentsTests.test_getUtility_hitó  sV   € Ý>ô	�>ô 	á�F‹|ˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W dÔ+Ø�‰˜Ÿ™¨Ó-°Ð8Õ9r   c                 óª   — ddl m}  G d„ d|«      } |d«      }| j                  «       }| j                  t	        |j                  |«      «      g «       y )Nr   rh   c                   ó   — e Zd Zy)ú7ComponentsTests.test_getUtilitiesFor_miss.<locals>.IFooNrG   r&   r   r   rJ   rG  ÿ  rK   r   rJ   )rS   rD   r   r(   rÈ   ÚgetUtilitiesForr,  s        r   Útest_getUtilitiesFor_missz)ComponentsTests.test_getUtilitiesFor_missý  sE   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×Ñœ˜d×2Ñ2°4Ó8Ó9¸2Õ>r   c                 ó"  — ddl m}  G d„ d|«      } |d«      }d}d}t        «       }| j                  «       }|j	                  |||¬«       |j	                  |||¬«       | j                  t        |j                  |«      «      ||f||fg«       y )Nr   rh   c                   ó   — e Zd Zy)ú6ComponentsTests.test_getUtilitiesFor_hit.<locals>.IFooNrG   r&   r   r   rJ   rL    rK   r   rJ   r    r¡   r  )rS   rD   ra   r   rT   r(   r%  rH  ©r   rD   rJ   rU   r£   r¤   re   r3   s           r   Útest_getUtilitiesFor_hitz(ComponentsTests.test_getUtilitiesFor_hit  s“   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d°ÐÔ8Ø×Ñ˜W d°ÐÔ8Ø×Ñœ × 4Ñ 4°TÓ :Ó;Ø! 7Ð+¨f°gÐ->Ð?õ	Ar   c                 óª   — ddl m}  G d„ d|«      } |d«      }| j                  «       }| j                  t	        |j                  |«      «      g «       y )Nr   rh   c                   ó   — e Zd Zy)úDComponentsTests.test_getAllUtilitiesRegisteredFor_miss.<locals>.IFooNrG   r&   r   r   rJ   rQ    rK   r   rJ   )rS   rD   r   r(   rÈ   ÚgetAllUtilitiesRegisteredForr,  s        r   Ú&test_getAllUtilitiesRegisteredFor_missz6ComponentsTests.test_getAllUtilitiesRegisteredFor_miss  sE   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×Ñœ˜d×?Ñ?ÀÓEÓFÈÕKr   c                 ó  — ddl m}  G d„ d|«      } |d«      }d}d}t        «       }| j                  «       }|j	                  |||¬«       |j	                  |||¬«       | j                  t        |j                  |«      «      |g«       y )Nr   rh   c                   ó   — e Zd Zy)úCComponentsTests.test_getAllUtilitiesRegisteredFor_hit.<locals>.IFooNrG   r&   r   r   rJ   rV    rK   r   rJ   r    r¡   r  )rS   rD   ra   r   rT   r(   rÈ   rR  rM  s           r   Ú%test_getAllUtilitiesRegisteredFor_hitz5ComponentsTests.test_getAllUtilitiesRegisteredFor_hit  s…   € Ý>ô	�>ô 	á�F‹|ˆØˆØˆÜ“(ˆØ�}‰}‹ˆØ×Ñ˜W d°ÐÔ8Ø×Ñ˜W d°ÐÔ8Ø×Ñœ˜d×?Ñ?ÀÓEÓFØ!˜õ	$r   c                 ó  — ddl m}m}  G d„ d|«      } |d«      } |d«      } |d«       G d„ d«      «       }d	}| j                  «       }|j	                  ||f||¬
«       | j                  |j                  |f|df   ||f«       y )Nr   rB   c                   ó   — e Zd Zy)úFComponentsTests.test_registerAdapter_with_component_name.<locals>.IFooNrG   r&   r   r   rJ   rZ  /  rK   r   rJ   rÔ   rL   c                   ó   — e Zd Zy)úEComponentsTests.test_registerAdapter_with_component_name.<locals>.FooNrG   r&   r   r   rO   r\  4  rP   r   rO   rQ   rR   )rS   rC   rD   r   ÚregisterAdapterr(   r0   )	r   rC   rD   rJ   rU   ÚibarrO   rV   r3   s	            r   Ú(test_registerAdapter_with_component_namez8ComponentsTests.test_registerAdapter_with_component_name+  s“   € ßEô	�>ô 	á�F‹|ˆÙ�F‹|ˆá	ˆu‹÷	ð 	ó 
ð	àˆà�}‰}‹ˆØ×Ñ˜S 4 '¨4°eÐÔ<à×ÑØ×'Ñ'¨¨°°uÐ(<Ñ=Ø�%ˆLõ	r   c                 ó„  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      }d}d	}d
„ }	| j                  «       }
| j                  «       \  }}|5  |
j                  |	|f|||«       d d d «       | j                  |
j                  j                  d   |   |   |   |	u «       | j                  |
j                  |f||f   |	|f«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                   |«      «       | j                  |j                   j"                  |
u «       | j                  |j                   j$                  |u «       | j                  |j                   j&                  |f«       | j                  |j                   j(                  |u «       | j                  |j                   j*                  |u «       | j                  |j                   j,                  |	u «       y # 1 sw Y   �ŒÆxY w)Nr   rh   ri   ©ÚAdapterRegistrationc                   ó   — e Zd Zy)úSComponentsTests.test_registerAdapter_w_explicit_provided_and_required.<locals>.IFooNrG   r&   r   r   rJ   rd  E  rK   r   rJ   rÔ   rQ   r   c                 ó   — t        «       ‚r   rZ   ©Úcontexts    r   r\   zWComponentsTests.test_registerAdapter_w_explicit_provided_and_required.<locals>._factoryL  r]   r   rp   ©rS   rD   rq   rj   rr   rb  r   r"   r]  r+   r-   rs   r(   r0   ru   r,   ra   r   rv   Úrequiredr   rQ   r`   )r   rD   rj   rb  rJ   rU   r^  rV   rw   r\   r3   r!   r   r   r   rx   s                   r   Ú5test_registerAdapter_w_explicit_provided_and_requiredzEComponentsTests.test_registerAdapter_w_explicit_provided_and_required@  sð  € Ý>Ý8Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆò	(à�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	HØ× Ñ  ¨D¨7°D¸%ÀÔG÷	Hà�‰˜Ÿ™×/Ñ/°Ñ2°4Ñ8¸Ñ>¸uÑEØ#ð$ô 	%à×Ñ˜×4Ñ4°d°W¸dÀEÐ5IÑJØ" EÐ*ô	,à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷#	Hñ 	Hús   ÁH5È5H?c                 ó¾   — ddl m}  G d„ d|«      } |d«      }d}d} G d„ d	«      }| j                  «       }| j                  t        |j
                  ||f||¬
«       y )Nr   rh   c                   ó   — e Zd Zy)úHComponentsTests.test_registerAdapter_no_provided_available.<locals>.IFooNrG   r&   r   r   rJ   rm  f  rK   r   rJ   rÔ   rQ   r   c                   ó   — e Zd Zy)úLComponentsTests.test_registerAdapter_no_provided_available.<locals>._FactoryNrG   r&   r   r   Ú_Factoryro  m  rK   r   rp  ©r   rQ   ©rS   rD   r   rb   rc   r]  )r   rD   rJ   r^  rV   rw   rp  r3   s           r   Ú*test_registerAdapter_no_provided_availablez:ComponentsTests.test_registerAdapter_no_provided_availablec  se   € Ý>ô	�>ô 	ñ �F‹|ˆØˆØˆ÷	ñ 	ð �}‰}‹ˆØ×Ñœ) T×%9Ñ%9¸8ÀdÀWØ$¨5ð 	õ 	2r   c                 óÈ  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      }d	}d
}	t        «       }
 ||«       G d„ d«      «       }| j                  «       }| j                  «       \  }}|5  |j                  ||f|	|¬«       d d d «       | j                  |j                  j                  d   |   |   |	   |u «       | j                  |j                  |f||	f   ||f«       | j                  t!        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j                  |«      «       | j                  |j                  j$                  |u «       | j                  |j                  j&                  |u «       | j                  |j                  j(                  |f«       | j                  |j                  j*                  |	u «       | j                  |j                  j,                  |u «       | j                  |j                  j.                  |u «       y # 1 sw Y   �ŒÆxY w)Nr   rh   ©Úimplementerri   ra  c                   ó   — e Zd Zy)úGComponentsTests.test_registerAdapter_wo_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   rx  z  rK   r   rJ   rÔ   rQ   r   c                   ó   — e Zd Zy)úKComponentsTests.test_registerAdapter_wo_explicit_provided.<locals>._FactoryNrG   r&   r   r   rp  rz  ‚  rP   r   rp  rq  rp   )rS   rD   rv  rq   rj   rr   rb  ra   r   r"   r]  r+   r-   rs   r(   r0   ru   r,   r   rv   ri  r   rQ   r`   )r   rD   rv  rj   rb  rJ   rU   r^  rV   rw   re   rp  r3   r!   r   r   r   rx   s                     r   Ú)test_registerAdapter_wo_explicit_providedz9ComponentsTests.test_registerAdapter_wo_explicit_providedt  s  € Ý>Ý;Ý8Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆÜ“(ˆá	�TÓ	÷	ð 	ó 
ð	ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	LØ× Ñ  ¨D¨7¸ÀUÐ ÔK÷	Là�‰˜Ÿ™×/Ñ/°Ñ2°4Ñ8¸Ñ>¸uÑEØ#ð$ô 	%à×Ñ˜×4Ñ4°d°W¸dÀEÐ5IÑJØ" EÐ*ô	,à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷#	Lñ 	Lús   Á<IÉI!c                 ó¼   — ddl m}  G d„ d|«      } |d«      }d}d} G d„ d«      }| j                  «       }| j                  t        |j
                  ||||¬	«       y )
Nr   rh   c                   ó   — e Zd Zy)úHComponentsTests.test_registerAdapter_no_required_available.<locals>.IFooNrG   r&   r   r   rJ   r~  ž  rK   r   rJ   rQ   r   c                   ó   — e Zd Zy)úLComponentsTests.test_registerAdapter_no_required_available.<locals>._FactoryNrG   r&   r   r   rp  r€  ¤  s   „ Ør   rp  ©rv   r   rQ   rr  ©r   rD   rJ   rU   rV   rw   rp  r3   s           r   Ú*test_registerAdapter_no_required_availablez:ComponentsTests.test_registerAdapter_no_required_available›  sb   € Ý>ô	�>ô 	á�F‹|ˆàˆØˆ÷	ñ 	ð �}‰}‹ˆØ×Ñœ) T×%9Ñ%9¸8Ø#'¨e¸%ð 	õ 	Ar   c           	      óÎ   — ddl m}  G d„ d|«      } |d«      } |d«      }d}d} G d„ d	«      }| j                  «       }| j                  t        |j
                  |||||¬
«       y )Nr   rh   c                   ó   — e Zd Zy)úEComponentsTests.test_registerAdapter_w_invalid_required.<locals>.IFooNrG   r&   r   r   rJ   r†  ®  rK   r   rJ   rÔ   rQ   r   c                   ó   — e Zd Zy)úIComponentsTests.test_registerAdapter_w_invalid_required.<locals>._FactoryNrG   r&   r   r   rp  rˆ  ´  rK   r   rp  r�  rr  )	r   rD   rJ   rU   r^  rV   rw   rp  r3   s	            r   Ú'test_registerAdapter_w_invalid_requiredz7ComponentsTests.test_registerAdapter_w_invalid_required«  sk   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆ÷	ñ 	à�}‰}‹ˆØ×Ñœ) T×%9Ñ%9¸8Ø¨°EÀð 	õ 	Gr   c                 ó�  — ddl m} ddlm} ddlm} ddlm}  G d„ d|«      } |d«      }d}d	} G d
„ d«      }	| j                  «       }
| j                  «       \  }}|5  |
j                  |	d g|||¬«       d d d «       | j                  |
j                  j                  d   |   |   |   |	u «       | j                  |
j                  |f||f   |	|f«       | j                  t!        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j$                  |«      «       | j                  |j$                  j&                  |
u «       | j                  |j$                  j(                  |u «       | j                  |j$                  j*                  |f«       | j                  |j$                  j,                  |u «       | j                  |j$                  j.                  |u «       | j                  |j$                  j0                  |	u «       y # 1 sw Y   �ŒÆxY w)Nr   rh   r   ri   ra  c                   ó   — e Zd Zy)úMComponentsTests.test_registerAdapter_w_required_containing_None.<locals>.IFooNrG   r&   r   r   rJ   rŒ  À  rK   r   rJ   rQ   r   c                   ó   — e Zd Zy)úQComponentsTests.test_registerAdapter_w_required_containing_None.<locals>._FactoryNrG   r&   r   r   rp  rŽ  Å  rK   r   rp  r�  rp   )rS   rD   Úzope.interface.interfacer   rq   rj   rr   rb  r   r"   r]  r+   r-   rs   r(   r0   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   r   rj   rb  rJ   rU   rV   rw   rp  r3   r!   r   r   r   rx   s                   r   Ú/test_registerAdapter_w_required_containing_Nonez?ComponentsTests.test_registerAdapter_w_required_containing_Noneº  sõ  € Ý>Ý6Ý8Ý?ô	�>ô 	á�F‹|ˆØˆØˆ÷	ñ 	à�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	9Ø× Ñ  ¨D¨6¸DØ&+°%ð !ô 9÷	9ð 	�‰˜Ÿ™×/Ñ/°Ñ2°9Ñ=¸dÑCÀEÑJØ#ð$ô 	%à×Ñ˜×4Ñ4°i°\À4ÈÐ5NÑOØ" EÐ*ô	,à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô=Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷%	9ñ 	9ús   ÁH;È;Ic                 óæ  — ddl m} ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d	«      }d
}	d}
 G d„ d«      } ||«       G d„ d«      «       } ||«      }| j                  «       }| j                  «       \  }}|5  |j                  ||g||
|	¬«       d d d «       | j                  |j                  j                  d   |   |   |
   |u «       | j                  |j                  |f||
f   ||	f«       | j                  t!        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j$                  |«      «       | j                  |j$                  j&                  |u «       | j                  |j$                  j(                  |u «       | j                  |j$                  j*                  |f«       | j                  |j$                  j,                  |
u «       | j                  |j$                  j.                  |	u «       | j                  |j$                  j0                  |u «       y # 1 sw Y   �ŒÆxY w)Nr   rh   ru  )ÚimplementedByri   ra  c                   ó   — e Zd Zy)úNComponentsTests.test_registerAdapter_w_required_containing_class.<locals>.IFooNrG   r&   r   r   rJ   r”  ä  rK   r   rJ   rÔ   rQ   r   c                   ó   — e Zd Zy)úRComponentsTests.test_registerAdapter_w_required_containing_class.<locals>._FactoryNrG   r&   r   r   rp  r–  ê  rK   r   rp  c                   ó   — e Zd Zy)úRComponentsTests.test_registerAdapter_w_required_containing_class.<locals>._ContextNrG   r&   r   r   Ú_Contextr˜  í  rP   r   r™  r�  rp   )rS   rD   rv  r’  rq   rj   rr   rb  r   r"   r]  r+   r-   rs   r(   r0   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   rv  r’  rj   rb  rJ   rU   r^  rV   rw   rp  r™  Ú	_ctx_implr3   r!   r   r   r   rx   s                       r   Ú0test_registerAdapter_w_required_containing_classz@ComponentsTests.test_registerAdapter_w_required_containing_classÝ  s)  € Ý>Ý;Ý=Ý8Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆ÷	ñ 	ñ 
�TÓ	÷	ð 	ó 
ð	á! (Ó+ˆ	Ø�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	9Ø× Ñ  ¨H¨:ÀØ&+°%ð !ô 9÷	9ð 	�‰˜Ÿ™×/Ñ/°Ñ2°9Ñ=¸dÑCÀEÑJØ#ð$ô 	%à×Ñ˜×4Ñ4°i°\À4ÈÐ5NÑOØ" EÐ*ô	,à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô=Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷%	9ñ 	9ús   Â
I&É&I0c           	      óÐ   — ddl m}  G d„ d|«      } |d«      }d}d} G d„ d«      }| j                  «       }| j                  t        |j
                  |t        «       g|||¬	«       y )
Nr   rh   c                   ó   — e Zd Zy)úMComponentsTests.test_registerAdapter_w_required_containing_junk.<locals>.IFooNrG   r&   r   r   rJ   rž  
  rK   r   rJ   rQ   r   c                   ó   — e Zd Zy)úQComponentsTests.test_registerAdapter_w_required_containing_junk.<locals>._FactoryNrG   r&   r   r   rp  r     rK   r   rp  r�  )rS   rD   r   rb   rc   r]  ra   r‚  s           r   Ú/test_registerAdapter_w_required_containing_junkz?ComponentsTests.test_registerAdapter_w_required_containing_junk  sf   € Ý>ô	�>ô 	á�F‹|ˆàˆØˆ÷	ñ 	à�}‰}‹ˆØ×Ñœ) T×%9Ñ%9¸8ÄfÃhÀZØ#'¨e¸%ð 	õ 	Ar   c                 ó–  ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      Šd}d	} G ˆfd
„d«      }| j                  «       }	| j                  «       \  }
}|
5  |	j                  ||||¬«       d d d «       | j                  |	j                  j                  d   ‰   |   |   |u «       | j                  |	j                  ‰f||f   ||f«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                   |«      «       | j                  |j                   j"                  |	u «       | j                  |j                   j$                  |u «       | j                  |j                   j&                  ‰f«       | j                  |j                   j(                  |u «       | j                  |j                   j*                  |u «       | j                  |j                   j,                  |u «       y # 1 sw Y   �ŒÆxY w)Nr   rh   ri   ra  c                   ó   — e Zd Zy)úGComponentsTests.test_registerAdapter_wo_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   r¤    rK   r   rJ   rÔ   rQ   r   c                   ó   •— e Zd ZW ° fZy)úKComponentsTests.test_registerAdapter_wo_explicit_required.<locals>._FactoryN©r)   rH   rI   Ú__component_adapts__©r^  s   €r   rp  r¦  !  ó   ø„ Ù$( 7Ñ r   rp  r�  rp   rh  )r   rD   rj   rb  rJ   rU   rV   rw   rp  r3   r!   r   r   r   rx   r^  s                  @r   Ú)test_registerAdapter_wo_explicit_requiredz9ComponentsTests.test_registerAdapter_wo_explicit_required  sú  ø€ Ý>Ý8Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆ÷	+ó 	+ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	-Ø× Ñ  °D¸uØ&+ð !ô -÷	-ð 	�‰˜Ÿ™×/Ñ/°Ñ2°4Ñ8¸Ñ>¸uÑEØ#ð$ô 	%à×Ñ˜×4Ñ4°d°W¸dÀEÐ5IÑJØ" EÐ*ô	,à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷%	-ñ 	-ús   Á$H>È>Ic           	      ó.  — ddl m}  G d„ d|«      } |d«      } |d«      }d}d}d„ }| j                  «       }| j                  «       \  }	}
|	5  |j	                  ||f|||d	¬
«       d d d «       | j                  t        |
«      d«       y # 1 sw Y   Œ%xY w)Nr   rh   c                   ó   — e Zd Zy)ú;ComponentsTests.test_registerAdapter_wo_event.<locals>.IFooNrG   r&   r   r   rJ   r®  =  rK   r   rJ   rÔ   rQ   r   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   z?ComponentsTests.test_registerAdapter_wo_event.<locals>._factoryD  r]   r   F)rx   )rS   rD   r   r"   r]  r(   ru   )r   rD   rJ   rU   r^  rV   rw   r\   r3   r!   r   s              r   Útest_registerAdapter_wo_eventz-ComponentsTests.test_registerAdapter_wo_event:  s    € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆò	(à�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	.Ø× Ñ  ¨D¨7°D¸%ÀØ',ð !ô .÷	.ð 	×Ñœ˜W› qÕ)÷	.ð 	.ús   ÁBÂBc                 ój   — | j                  «       }| j                  t        |j                  d d ¬«       y ©N)r`   rv   )r   rb   rc   ÚunregisterAdapterr;   s     r   Ú3test_unregisterAdapter_neither_factory_nor_providedzCComponentsTests.test_unregisterAdapter_neither_factory_nor_providedM  s/   € Ø�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Ø"&°ð 	õ 	7r   c                 óž   — ddl m}  G d„ d|«      } |d«      }| j                  «       }| j                  t        |j
                  d |d ¬«       y )Nr   rh   c                   ó   — e Zd Zy)úQComponentsTests.test_unregisterAdapter_neither_factory_nor_required.<locals>.IFooNrG   r&   r   r   rJ   r·  T  rK   r   rJ   ©r`   rv   ri  )rS   rD   r   rb   rc   r³  r,  s        r   Ú3test_unregisterAdapter_neither_factory_nor_requiredzCComponentsTests.test_unregisterAdapter_neither_factory_nor_requiredR  sJ   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Ø"&°Àð 	õ 	Fr   c                 ó  — ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      }| j                  «       }| j                  «       \  }}|5  |j	                  ||f|«      }	d d d «       | j                  	«       y # 1 sw Y   ŒxY w)Nr   rh   c                   ó   — e Zd Zy)ú9ComponentsTests.test_unregisterAdapter_miss.<locals>.IFooNrG   r&   r   r   rJ   r¼  ]  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)ú=ComponentsTests.test_unregisterAdapter_miss.<locals>._FactoryNrG   r&   r   r   rp  r¾  a  rK   r   rp  )rS   rD   r   r"   r³  rà   ©
r   rD   rJ   rU   r^  rp  r3   r!   r   rá   s
             r   Útest_unregisterAdapter_missz+ComponentsTests.test_unregisterAdapter_miss[  s�   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	ñ 	ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	DØ×*Ñ*¨8°d°W¸dÓCˆE÷	Dà×Ñ˜Õ÷	Dð 	Dús   ÁB Â B	c                 óœ  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      } G d„ d	«      }| j                  «       }|j                  ||f|«       | j                  «       \  }	}
|	5  |j                  ||f|«      }d d d «       | j                  «       | j                  |j                  j                  «       | j                  |j                  «       | j                  t!        |
«      d
«       |
d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j$                  |«      «       | j                  |j$                  j&                  |u «       | j                  |j$                  j(                  |u «       | j                  |j$                  j*                  |f«       | j                  |j$                  j,                  d«       | j                  |j$                  j.                  d«       | j                  |j$                  j0                  |u «       y # 1 sw Y   �Œ½xY w)Nr   rh   r¨   ra  c                   ó   — e Zd Zy)úYComponentsTests.test_unregisterAdapter_hit_w_explicit_provided_and_required.<locals>.IFooNrG   r&   r   r   rJ   rÃ  n  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)ú]ComponentsTests.test_unregisterAdapter_hit_w_explicit_provided_and_required.<locals>._FactoryNrG   r&   r   r   rp  rÅ  r  rK   r   rp  rp   ro   )rS   rD   rq   r©   rr   rb  r   r]  r"   r³  r+   rà   r-   rs   r0   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   r©   rb  rJ   rU   r^  rp  r3   r!   r   rá   r   r   rx   s                  r   Ú;test_unregisterAdapter_hit_w_explicit_provided_and_requiredzKComponentsTests.test_unregisterAdapter_hit_w_explicit_provided_and_requiredj  sÕ  € Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	ñ 	ð �}‰}‹ˆØ×Ñ˜X¨ w°Ô5Ø×+Ñ+Ó-Ñˆ�Øñ 	DØ×*Ñ*¨8°d°W¸dÓCˆE÷	Dà�‰˜ÔØ×Ñ˜Ÿ™×0Ñ0Ô1Ø×Ñ˜×4Ñ4Ô5Ø×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷!	Dñ 	Dúó   Á1IÉIc                 ó<  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      } ||«       G d	„ d
«      «       }| j                  «       }	|	j                  ||f|«       | j                  «       \  }
}|
5  |	j                  ||f«      }d d d «       | j                  «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                   |	u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |f«       | j                  |j                  j&                  d«       | j                  |j                  j(                  d«       | j                  |j                  j*                  |u «       y # 1 sw Y   �Œ}xY w)Nr   rh   ru  r¨   ra  c                   ó   — e Zd Zy)úIComponentsTests.test_unregisterAdapter_wo_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   rÊ  �  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)úMComponentsTests.test_unregisterAdapter_wo_explicit_provided.<locals>._FactoryNrG   r&   r   r   rp  rÌ  “  rP   r   rp  rp   ro   )rS   rD   rv  rq   r©   rr   rb  r   r]  r"   r³  r+   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   rv  r©   rb  rJ   rU   r^  rp  r3   r!   r   rá   r   r   rx   s                   r   Ú+test_unregisterAdapter_wo_explicit_providedz;ComponentsTests.test_unregisterAdapter_wo_explicit_providedŠ  s¸  € Ý>Ý;Ý:Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	ð �}‰}‹ˆØ×Ñ˜X¨ w°Ô5Ø×+Ñ+Ó-Ñˆ�Øñ 	>Ø×*Ñ*¨8°d°WÓ=ˆE÷	>à�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	>ñ 	>úó   ÂHÈHc                 ó   ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      Š G ˆfd„d	«      }| j                  «       }|j                  |‰f|«       | j                  «       \  }}	|5  |j                  ||¬
«      }
d d d «       | j                  
«       | j                  t        |	«      d«       |	d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  ‰f«       | j                  |j                  j$                  d«       | j                  |j                  j&                  d«       | j                  |j                  j(                  |u «       y # 1 sw Y   �Œ}xY w)Nr   rh   r¨   ra  c                   ó   — e Zd Zy)úIComponentsTests.test_unregisterAdapter_wo_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   rÑ  ®  rK   r   rJ   rÔ   c                   ó   •— e Zd ZW ° fZy)úMComponentsTests.test_unregisterAdapter_wo_explicit_required.<locals>._FactoryNr§  r©  s   €r   rp  rÓ  ²  rª  r   rp  ©rv   rp   ro   )rS   rD   rq   r©   rr   rb  r   r]  r"   r³  r+   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   r©   rb  rJ   rU   rp  r3   r!   r   rá   r   r   rx   r^  s                 @r   Ú+test_unregisterAdapter_wo_explicit_requiredz;ComponentsTests.test_unregisterAdapter_wo_explicit_requiredª  s©  ø€ Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	+ó 	+ð �}‰}‹ˆØ×Ñ˜X¨ w°Ô5Ø×+Ñ+Ó-Ñˆ�Øñ 	DØ×*Ñ*¨8¸dÐ*ÓCˆE÷	Dà�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	Dñ 	Dúó   Á4HÈHc                 óv   — | j                  «       }| j                  t        |j                  «       «      g «       y r   )r   r(   rÈ   ÚregisteredAdaptersr;   s     r   Útest_registeredAdapters_emptyz-ComponentsTests.test_registeredAdapters_emptyÈ  s+   € Ø�}‰}‹ˆØ×Ñœ˜d×5Ñ5Ó7Ó8¸"Õ=r   c                 óÐ  — ddl m} ddlm}  G d„ d|«      } |d«      } |d«      }d}d}d} G d	„ d
«      }	| j	                  «       }
|
j                  |	|f|||«       |
j                  |	|f|||«       t        |
j                  «       d„ ¬«      }| j                  t        |«      d«       | j                  t        |d   |«      «       | j                  |d   j                  |
u «       | j                  |d   j                  |u «       | j                  |d   j                  |f«       | j                  |d   j                  |u «       | j                  |d   j                   |u «       | j                  |d   j"                  |	u «       | j                  t        |d   |«      «       | j                  |d   j                  |
u «       | j                  |d   j                  |u «       | j                  |d   j                  |f«       | j                  |d   j                  |u «       | j                  |d   j                   |u «       | j                  |d   j"                  |	u «       y )Nr   rh   ra  c                   ó   — e Zd Zy)ú>ComponentsTests.test_registeredAdapters_notempty.<locals>.IFooNrG   r&   r   r   rJ   rÜ  Ð  rK   r   rJ   rQ   r    r¡   c                   ó   — e Zd Zy)úBComponentsTests.test_registeredAdapters_notempty.<locals>._FactoryNrG   r&   r   r   rp  rÞ  ×  rK   r   rp  c                 ó   — | j                   S r   r  r   s    r   r"  zBComponentsTests.test_registeredAdapters_notempty.<locals>.<lambda>Ý  s
   € ¸a¿f¹f€ r   r#  r˜   rp   )rS   rD   rr   rb  r   r]  r%  rØ  r(   ru   r+   r,   r   rv   ri  r   rQ   r`   )r   rD   rb  rJ   rU   r^  rV   r£   r¤   rp  r3   r&  s               r   Ú test_registeredAdapters_notemptyz0ComponentsTests.test_registeredAdapters_notemptyÌ  s  € Ý>å?ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆØˆ÷	ñ 	ð �}‰}‹ˆØ×Ñ˜X¨ w°°f¸eÔDØ×Ñ˜X¨ w°°f¸eÔDÜ�T×,Ñ,Ó.Ñ4DÔEˆØ×Ñœ˜S› 1Ô%Ø�‰œ
 3 q¡6Ð+>Ó?Ô@Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø×Ñ˜˜Q™Ÿ™¨4¨'Ô2Ø�‰˜˜A™Ÿ™ vÐ-Ô.Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨(Ð2Ô3Ø�‰œ
 3 q¡6Ð+>Ó?Ô@Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø×Ñ˜˜Q™Ÿ™¨4¨'Ô2Ø�‰˜˜A™Ÿ™ vÐ-Ô.Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨(Ð2Õ3r   c                 ó°   — ddl m}  G d„ d|«      } |d«      }| j                  «       }t        «       }| j	                  |j                  ||«      d u «       y )Nr   rh   c                   ó   — e Zd Zy)ú?ComponentsTests.test_queryAdapter_miss_no_default.<locals>.IFooNrG   r&   r   r   rJ   rã  ð  rK   r   rJ   ©rS   rD   r   ra   r+   ÚqueryAdapter)r   rD   rJ   rU   r3   Ú_contexts         r   Ú!test_queryAdapter_miss_no_defaultz1ComponentsTests.test_queryAdapter_miss_no_defaultî  sJ   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆÜ“8ˆØ�‰˜×)Ñ)¨(°DÓ9¸TÐAÕBr   c                 óÈ   — ddl m}  G d„ d|«      } |d«      }| j                  «       }t        «       }t        «       }| j	                  |j                  |||¬«      |u «       y )Nr   rh   c                   ó   — e Zd Zy)ú>ComponentsTests.test_queryAdapter_miss_w_default.<locals>.IFooNrG   r&   r   r   rJ   rê  ù  rK   r   rJ   r1  rä  )r   rD   rJ   rU   r3   ræ  r3  s          r   Ú test_queryAdapter_miss_w_defaultz0ComponentsTests.test_queryAdapter_miss_w_default÷  sZ   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆÜ“8ˆÜ“8ˆØ�‰Ø×Ñ˜h¨°hÐÓ?À8ÐKõ	Mr   c                 óz  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      } ||«       G d	„ d
«      «       } |«       }| j                  «       }	|	j	                  ||f|«       |	j                  ||«      }
| j                  t        |
|«      «       | j                  |
j                  |u «       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú3ComponentsTests.test_queryAdapter_hit.<locals>.IFooNrG   r&   r   r   rJ   rî    rK   r   rJ   rÔ   c                   ó   — e Zd Zd„ Zy)ú7ComponentsTests.test_queryAdapter_hit.<locals>._Factoryc                 ó   — || _         y r   rf  ©r   rg  s     r   r  z@ComponentsTests.test_queryAdapter_hit.<locals>._Factory.__init__
  ó	   € Ø&�•r   N©r)   rH   rI   r  r&   r   r   rp  rð  	  ó   „ ó'r   rp  c                   ó   — e Zd Zy)ú7ComponentsTests.test_queryAdapter_hit.<locals>._ContextNrG   r&   r   r   r™  r÷    rP   r   r™  )	rS   rD   rv  r   r]  rå  r+   r,   rg  ©r   rD   rv  rJ   rU   r^  rp  r™  ræ  r3   Úadapters              r   Útest_queryAdapter_hitz%ComponentsTests.test_queryAdapter_hit  s®   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	'ñ 	'ñ 
�TÓ	÷	ð 	ó 
ð	á“:ˆØ�}‰}‹ˆØ×Ñ˜X¨ w°Ô5Ø×#Ñ# H¨dÓ3ˆØ�‰œ
 7¨HÓ5Ô6Ø�‰˜Ÿ™¨8Ð3Õ4r   c                 óò   — ddl m} ddl m} ddlm}  G d„ d|«      } |d«      } |d«      } ||«       G d„ d	«      «       } |«       }| j                  «       }	| j                  ||	j                  ||«       y )
Nr   rh   ru  r;  c                   ó   — e Zd Zy)ú2ComponentsTests.test_getAdapter_miss.<locals>.IFooNrG   r&   r   r   rJ   rý    rK   r   rJ   rÔ   c                   ó   — e Zd Zy)ú6ComponentsTests.test_getAdapter_miss.<locals>._ContextNrG   r&   r   r   r™  rÿ    rP   r   r™  )rS   rD   rv  rq   r<  r   rb   Ú
getAdapter)
r   rD   rv  r<  rJ   rU   r^  r™  ræ  r3   s
             r   Útest_getAdapter_missz$ComponentsTests.test_getAdapter_miss  ss   € Ý>Ý;ÝBô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á“:ˆØ�}‰}‹ˆØ×ÑÐ.ØŸ/™/¨8°Tõ	;r   c                 óf  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      } ||«       G d	„ d
«      «       } |«       }| j                  «       }	|	j	                  ||f|«       |	j                  ||«      }
| j                  |
|«       | j                  |
j                  |«       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú1ComponentsTests.test_getAdapter_hit.<locals>.IFooNrG   r&   r   r   rJ   r  )  rK   r   rJ   rÔ   c                   ó   — e Zd Zd„ Zy)ú5ComponentsTests.test_getAdapter_hit.<locals>._Factoryc                 ó   — || _         y r   rf  rò  s     r   r  z>ComponentsTests.test_getAdapter_hit.<locals>._Factory.__init__.  ró  r   Nrô  r&   r   r   rp  r  -  rõ  r   rp  c                   ó   — e Zd Zy)ú5ComponentsTests.test_getAdapter_hit.<locals>._ContextNrG   r&   r   r   r™  r	  0  rP   r   r™  )	rS   rD   rv  r   r]  r   ÚassertIsInstanceÚassertIsrg  rø  s              r   Útest_getAdapter_hitz#ComponentsTests.test_getAdapter_hit&  s¦   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	'ñ 	'ñ 
�TÓ	÷	ð 	ó 
ð	á“:ˆØ�}‰}‹ˆØ×Ñ˜X¨ w°Ô5Ø—/‘/ (¨DÓ1ˆØ×Ñ˜g xÔ0Ø�‰�g—o‘o xÕ0r   c                 ó–  •— ddl m} ddlm}  G d„ d|«      } G d„ d|«      } G d„ d	|«      } ||«       G d
„ d«      «       } ||«       G d„ d|«      «       } G d„ d«      } G d„ d«      }	| j	                  «       }
|
j                  |	|f|«       |
j                  ||f|«       | j                  |
«        |«       }|
j                  ||«      }| j                  ||	«       | j                  |j                  |«       t        ||«      }|
j                  ||«      }| j                  ||«       | j                  |j                  |«       y )Nr   r   ru  c                   ó   — e Zd Zy)ú8ComponentsTests.test_getAdapter_hit_super.<locals>.IBaseNrG   r&   r   r   ÚIBaser  >  rK   r   r  c                   ó   — e Zd Zy)ú;ComponentsTests.test_getAdapter_hit_super.<locals>.IDerivedNrG   r&   r   r   ÚIDerivedr  A  rK   r   r  c                   ó   — e Zd Zy)ú7ComponentsTests.test_getAdapter_hit_super.<locals>.IFooNrG   r&   r   r   rJ   r  D  rK   r   rJ   c                   ó   — e Zd Zy)ú7ComponentsTests.test_getAdapter_hit_super.<locals>.BaseNrG   r&   r   r   ÚBaser  G  rP   r   r  c                   ó   — e Zd Zy)ú:ComponentsTests.test_getAdapter_hit_super.<locals>.DerivedNrG   r&   r   r   ÚDerivedr  K  rP   r   r  c                   ó   — e Zd Zd„ Zy)ú>ComponentsTests.test_getAdapter_hit_super.<locals>.AdapterBasec                 ó   — || _         y r   rf  rò  s     r   r  zGComponentsTests.test_getAdapter_hit_super.<locals>.AdapterBase.__init__P  ró  r   Nrô  r&   r   r   ÚAdapterBaser  O  rõ  r   r  c                   ó   — e Zd Zd„ Zy)úAComponentsTests.test_getAdapter_hit_super.<locals>.AdapterDerivedc                 ó   — || _         y r   rf  rò  s     r   r  zJComponentsTests.test_getAdapter_hit_super.<locals>.AdapterDerived.__init__T  ró  r   Nrô  r&   r   r   ÚAdapterDerivedr!  S  rõ  r   r#  ©r   r   rS   rv  r   r]  Ú_should_not_changer   r
  r  rg  r½   ©r   r   rv  r  r  rJ   r  r  r  r#  r3   Úderivedrù  ÚsuperÀ   s                 €r   Útest_getAdapter_hit_superz)ComponentsTests.test_getAdapter_hit_super:  s9  ø€ Ý,Ý;ô	�Iô 	ô	�uô 	ô	�9ô 	ñ 
�UÓ	÷	ð 	ó 
ð	ñ 
�XÓ	ô	�dó 	ó 
ð	÷	'ñ 	'÷	'ñ 	'ð �}‰}‹ˆØ×Ñ˜^¨h¨[¸$Ô?Ø×Ñ˜[¨5¨(°DÔ9Ø×Ñ Ô%á“)ˆØ—/‘/ '¨4Ó0ˆØ×Ñ˜g ~Ô6Ø�‰�g—o‘o wÔ/ä�W˜gÓ&ˆØ—/‘/ $¨Ó-ˆØ×Ñ˜g {Ô3Ø�‰�g—o‘o wÕ/r   c                 óÄ  •— ddl m} ddlm}  G d„ d|«      } G d„ d|«      } G d„ d	|«      } G d
„ d«      } G d„ d|«      } ||«       G d„ d|«      «       } ||«       G d„ d||«      «       }	 G d„ d«      }
 G d„ d«      }| j	                  «       }|j                  ||f|«       |j                  |
|f|«       | j                  |«        |	«       }|j                  ||«      }| j                  ||«       | j                  |j                  |«       t        |	|«      }|j                  ||«      }| j                  ||
«       | j                  |j                  |«       y )Nr   r   ru  c                   ó   — e Zd Zy)úaComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.IBaseNrG   r&   r   r   r  r,  j  rK   r   r  c                   ó   — e Zd Zy)údComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.IDerivedNrG   r&   r   r   r  r.  m  rK   r   r  c                   ó   — e Zd Zy)ú`ComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.IFooNrG   r&   r   r   rJ   r0  p  rK   r   rJ   c                   ó   — e Zd Zy)ú`ComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.BaseNrG   r&   r   r   r  r2  s  rK   r   r  c                   ó   — e Zd Zy)úbComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.Child1NrG   r&   r   r   ÚChild1r4  v  rK   r   r5  c                   ó   — e Zd Zy)úbComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.Child2NrG   r&   r   r   ÚChild2r7  y  rP   r   r8  c                   ó   — e Zd Zy)úcComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.DerivedNrG   r&   r   r   r  r:  }  rP   r   r  c                   ó   — e Zd Zd„ Zy)úgComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.AdapterBasec                 ó   — || _         y r   rf  rò  s     r   r  zpComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.AdapterBase.__init__‚  ró  r   Nrô  r&   r   r   r  r<  �  rõ  r   r  c                   ó   — e Zd Zd„ Zy)újComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.AdapterDerivedc                 ó   — || _         y r   rf  rò  s     r   r  zsComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamond.<locals>.AdapterDerived.__init__†  ró  r   Nrô  r&   r   r   r#  r?  …  rõ  r   r#  r$  )r   r   rv  r  r  rJ   r  r5  r8  r  r  r#  r3   r'  rù  r(  rÀ   s                   €r   ÚBtest_getAdapter_hit_super_when_parent_implements_interface_diamondzRComponentsTests.test_getAdapter_hit_super_when_parent_implements_interface_diamondf  sS  ø€ Ý,Ý;ô	�Iô 	ô	�uô 	ô	�9ô 	÷	ñ 	ô	�Tô 	ñ 
�UÓ	ô	�Tó 	ó 
ð	ñ 
�XÓ	ô	�f˜fó 	ó 
ð	÷	'ñ 	'÷	'ñ 	'ð �}‰}‹ˆØ×Ñ˜^¨h¨[¸$Ô?Ø×Ñ˜[¨5¨(°DÔ9Ø×Ñ Ô%á“)ˆØ—/‘/ '¨4Ó0ˆØ×Ñ˜g ~Ô6Ø�‰�g—o‘o wÔ/ä�W˜gÓ&ˆØ—/‘/ $¨Ó-ˆØ×Ñ˜g {Ô3Ø�‰�g—o‘o wÕ/r   c                 ó:  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
| j                  «       }| j	                  |j                  |	|
f|«      d «       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú9ComponentsTests.test_queryMultiAdapter_miss.<locals>.IFooNrG   r&   r   r   rJ   rD  ›  rK   r   rJ   rÔ   ÚIBazc                   ó   — e Zd Zy)ú>ComponentsTests.test_queryMultiAdapter_miss.<locals>._Context1NrG   r&   r   r   Ú	_Context1rG     rP   r   rH  c                   ó   — e Zd Zy)ú>ComponentsTests.test_queryMultiAdapter_miss.<locals>._Context2NrG   r&   r   r   Ú	_Context2rJ  £  rP   r   rK  )rS   rD   rv  r   r(   ÚqueryMultiAdapter©r   rD   rv  rJ   rU   r^  ÚibazrH  rK  Ú	_context1Ú	_context2r3   s               r   Útest_queryMultiAdapter_missz+ComponentsTests.test_queryMultiAdapter_miss˜  s¥   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	Ø�}‰}‹ˆØ×Ñ˜×/Ñ/°¸IÐ0FÈÓMØõ	r   c                 óT  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
t        «       }| j	                  «       }| j                  |j                  |	|
f||¬«      |u «       y )Nr   rh   ru  c                   ó   — e Zd Zy)úCComponentsTests.test_queryMultiAdapter_miss_w_default.<locals>.IFooNrG   r&   r   r   rJ   rT  ¯  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)úHComponentsTests.test_queryMultiAdapter_miss_w_default.<locals>._Context1NrG   r&   r   r   rH  rV  ´  rP   r   rH  c                   ó   — e Zd Zy)úHComponentsTests.test_queryMultiAdapter_miss_w_default.<locals>._Context2NrG   r&   r   r   rK  rX  ·  rP   r   rK  r1  )rS   rD   rv  ra   r   r+   rL  )r   rD   rv  rJ   rU   r^  rN  rH  rK  rO  rP  r3  r3   s                r   Ú%test_queryMultiAdapter_miss_w_defaultz5ComponentsTests.test_queryMultiAdapter_miss_w_default¬  s¼   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	Ü“8ˆØ�}‰}‹ˆØ�‰Ø×"Ñ" I¨yÐ#9¸4Ø+3ð #ó 5Ø8@ðAõ	Br   c                 óÊ  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
 G d„ d«      }| j                  «       }|j	                  |||f|«       |j                  |	|
f|«      }| j                  t        ||«      «       | j                  |j                  |	|
f«       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú8ComponentsTests.test_queryMultiAdapter_hit.<locals>.IFooNrG   r&   r   r   rJ   r\  Å  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)ú=ComponentsTests.test_queryMultiAdapter_hit.<locals>._Context1NrG   r&   r   r   rH  r^  Ê  rP   r   rH  c                   ó   — e Zd Zy)ú=ComponentsTests.test_queryMultiAdapter_hit.<locals>._Context2NrG   r&   r   r   rK  r`  Í  rP   r   rK  c                   ó   — e Zd Zd„ Zy)ú<ComponentsTests.test_queryMultiAdapter_hit.<locals>._Factoryc                 ó   — ||f| _         y r   rf  ©r   Úcontext1Úcontext2s      r   r  zEComponentsTests.test_queryMultiAdapter_hit.<locals>._Factory.__init__Ó  ó   € Ø'¨Ð1�•r   Nrô  r&   r   r   rp  rb  Ò  ó   „ ó2r   rp  )
rS   rD   rv  r   r]  rL  r+   r,   r(   rg  ©r   rD   rv  rJ   rU   r^  rN  rH  rK  rO  rP  rp  r3   rù  s                 r   Útest_queryMultiAdapter_hitz*ComponentsTests.test_queryMultiAdapter_hitÂ  så   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	÷	2ñ 	2ð �}‰}‹ˆØ×Ñ˜X¨¨d |°TÔ:Ø×(Ñ(¨)°YÐ)?ÀÓFˆØ�‰œ
 7¨HÓ5Ô6Ø×Ñ˜Ÿ™¨9°iÐ*@ÕAr   c                 ó>  — ddl m} ddl m} ddlm}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d	„ d
«      «       } ||«       G d„ d«      «       }	 |«       }
 |	«       }| j                  «       }| j                  ||j                  |
|f|«       y )Nr   rh   ru  r;  c                   ó   — e Zd Zy)ú7ComponentsTests.test_getMultiAdapter_miss.<locals>.IFooNrG   r&   r   r   rJ   rm  ß  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)ú<ComponentsTests.test_getMultiAdapter_miss.<locals>._Context1NrG   r&   r   r   rH  ro  ä  rP   r   rH  c                   ó   — e Zd Zy)ú<ComponentsTests.test_getMultiAdapter_miss.<locals>._Context2NrG   r&   r   r   rK  rq  ç  rP   r   rK  )rS   rD   rv  rq   r<  r   rb   ÚgetMultiAdapter)r   rD   rv  r<  rJ   rU   r^  rN  rH  rK  rO  rP  r3   s                r   Útest_getMultiAdapter_missz)ComponentsTests.test_getMultiAdapter_missÛ  s§   € Ý>Ý;ÝBô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	Ø�}‰}‹ˆØ×ÑÐ.Ø×.Ñ.°¸IÐ0FÈõ	Nr   c                 óÊ  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
 G d„ d«      }| j                  «       }|j	                  |||f|«       |j                  |	|
f|«      }| j                  t        ||«      «       | j                  |j                  |	|
f«       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú6ComponentsTests.test_getMultiAdapter_hit.<locals>.IFooNrG   r&   r   r   rJ   rv  ó  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)ú;ComponentsTests.test_getMultiAdapter_hit.<locals>._Context1NrG   r&   r   r   rH  rx  ø  rP   r   rH  c                   ó   — e Zd Zy)ú;ComponentsTests.test_getMultiAdapter_hit.<locals>._Context2NrG   r&   r   r   rK  rz  û  rP   r   rK  c                   ó   — e Zd Zd„ Zy)ú:ComponentsTests.test_getMultiAdapter_hit.<locals>._Factoryc                 ó   — ||f| _         y r   rf  rd  s      r   r  zCComponentsTests.test_getMultiAdapter_hit.<locals>._Factory.__init__  rg  r   Nrô  r&   r   r   rp  r|     rh  r   rp  )
rS   rD   rv  r   r]  rr  r+   r,   r(   rg  ri  s                 r   Útest_getMultiAdapter_hitz(ComponentsTests.test_getMultiAdapter_hitð  så   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	÷	2ñ 	2ð �}‰}‹ˆØ×Ñ˜X¨¨d |°TÔ:Ø×&Ñ&¨	°9Ð'=¸tÓDˆØ�‰œ
 7¨HÓ5Ô6Ø×Ñ˜Ÿ™¨9°iÐ*@ÕAr   c                 óv   ‡ — ˆ fd„}||_         ||j                  _         ||j                  j                  _         y )Nc                  ó(   •— ‰j                  d«       y )NzNothing should get changed)Úfail)r   r   s    €r   Ú
no_changesz6ComponentsTests._should_not_change.<locals>.no_changes  s   ø€ Ø�I‰IÐ2Õ3r   )Úchangedr-   Ú	_v_lookup)r   r3   r‚  s   `  r   r%  z"ComponentsTests._should_not_change	  s-   ø€ ô	4à!ˆŒØ *ˆ�‰ÔØ*4ˆ�‰×ÑÕ'r   c                 ó8  •— ddl m} ddlm}  G d„ d|«      } G d„ d|«      } G d„ d	|«      } ||«       G d
„ d«      «       } ||«       G d„ d|«      «       } G d„ d«      } G d„ d|«      }	| j	                  «       }
|
j                  |	||f|«       |
j                  |||f|«       | j                  |
«        |«       }|
j                  ||f|«      }| j                  ||	«       | j                  |j                  |«       | j                  |j                  |«       t        ||«      }|
j                  ||f|«      }| j                  ||«       | j                  ||	«       | j                  |j                  |«       | j                  |j                  |«       y )Nr   r   ru  c                   ó   — e Zd Zy)ú=ComponentsTests.test_getMultiAdapter_hit_super.<locals>.IBaseNrG   r&   r   r   r  r‡    rK   r   r  c                   ó   — e Zd Zy)ú@ComponentsTests.test_getMultiAdapter_hit_super.<locals>.IDerivedNrG   r&   r   r   r  r‰    rK   r   r  c                   ó   — e Zd Zy)ú<ComponentsTests.test_getMultiAdapter_hit_super.<locals>.IFooNrG   r&   r   r   rJ   r‹    rK   r   rJ   c                   ó   — e Zd Zy)ú<ComponentsTests.test_getMultiAdapter_hit_super.<locals>.BaseNrG   r&   r   r   r  r�     rP   r   r  c                   ó   — e Zd Zy)ú?ComponentsTests.test_getMultiAdapter_hit_super.<locals>.DerivedNrG   r&   r   r   r  r�  $  rP   r   r  c                   ó   — e Zd Zd„ Zy)úCComponentsTests.test_getMultiAdapter_hit_super.<locals>.AdapterBasec                 ó    — || _         || _        y r   )re  rf  rd  s      r   r  zLComponentsTests.test_getMultiAdapter_hit_super.<locals>.AdapterBase.__init__)  s   € Ø (�”Ø (�•r   Nrô  r&   r   r   r  r‘  (  s   „ ó)r   r  c                   ó   — e Zd Zy)úFComponentsTests.test_getMultiAdapter_hit_super.<locals>.AdapterDerivedNrG   r&   r   r   r#  r”  -  rK   r   r#  )r   r   rS   rv  r   r]  r%  rr  r
  r  re  rf  r½   ÚassertNotIsInstancer&  s                 €r   Útest_getMultiAdapter_hit_superz.ComponentsTests.test_getMultiAdapter_hit_super  sŠ  ø€ Ý,Ý;ô	�Iô 	ô	�uô 	ô	�9ô 	ñ 
�UÓ	÷	ð 	ó 
ð	ñ 
�XÓ	ô	�dó 	ó 
ð	÷	)ñ 	)ô
	˜[ô 	ð �}‰}‹ˆØ×Ñ˜^¨h¸Ð-AÀ4ÔHØ×Ñ˜[¨5°(Ð*;¸TÔBØ×Ñ Ô%á“)ˆØ×&Ñ&¨°Ð'9¸4Ó@ˆØ×Ñ˜g ~Ô6Ø�‰�g×&Ñ&¨Ô0Ø�‰�g×&Ñ&¨Ô0ä�W˜gÓ&ˆØ×&Ñ&¨¨g ¸Ó=ˆØ×Ñ˜g {Ô3Ø× Ñ  ¨.Ô9Ø�‰�g×&Ñ&¨Ô0Ø�‰�g×&Ñ&¨Õ0r   c                 óL  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
| j                  «       }| j	                  t        |j                  |	|
f|«      «      g «       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú4ComponentsTests.test_getAdapters_empty.<locals>.IFooNrG   r&   r   r   rJ   r™  E  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)ú9ComponentsTests.test_getAdapters_empty.<locals>._Context1NrG   r&   r   r   rH  r›  J  rP   r   rH  c                   ó   — e Zd Zy)ú9ComponentsTests.test_getAdapters_empty.<locals>._Context2NrG   r&   r   r   rK  r�  M  rP   r   rK  )rS   rD   rv  r   r(   rÈ   ÚgetAdaptersrM  s               r   Útest_getAdapters_emptyz&ComponentsTests.test_getAdapters_emptyB  s«   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	Ø�}‰}‹ˆØ×ÑÜ�×!Ñ! 9¨iÐ"8¸$Ó?Ó@À"õ	Fr   c                 ó°  ‡— ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
| j                  «       }g Šˆfd„}|j	                  |||f|«       | j                  t        |j                  |	|
f|«      «      g «       | j                  ‰|	|
fg«       y )Nr   rh   ru  c                   ó   — e Zd Zy)úCComponentsTests.test_getAdapters_factory_returns_None.<locals>.IFooNrG   r&   r   r   rJ   r¢  Y  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)úHComponentsTests.test_getAdapters_factory_returns_None.<locals>._Context1NrG   r&   r   r   rH  r¤  ^  rP   r   rH  c                   ó   — e Zd Zy)úHComponentsTests.test_getAdapters_factory_returns_None.<locals>._Context2NrG   r&   r   r   rK  r¦  a  rP   r   rK  c                 ó,   •— ‰j                  | |f«       y r   r   )re  rf  Ú_called_withs     €r   Ú_side_effect_onlyzPComponentsTests.test_getAdapters_factory_returns_None.<locals>._side_effect_onlyh  s   ø€ Ø×Ñ ¨8Ð 4Ô5Ør   )rS   rD   rv  r   r]  r(   rÈ   rž  )r   rD   rv  rJ   rU   r^  rN  rH  rK  rO  rP  r3   r©  r¨  s                @r   Ú%test_getAdapters_factory_returns_Nonez5ComponentsTests.test_getAdapters_factory_returns_NoneV  sç   ø€ Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	Ø�}‰}‹ˆØˆô	ð 	×ÑÐ.°°t°¸dÔCØ×ÑÜ�×!Ñ! 9¨iÐ"8¸$Ó?Ó@À"ô	Fà×Ñ˜¨°IÐ(>Ð'?Õ@r   c                 óÒ  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      } |d«      } ||«       G d„ d	«      «       } ||«       G d
„ d«      «       } |«       }	 |«       }
 G d„ d«      } G d„ d«      }d}d}| j                  «       }|j	                  |||f||¬«       |j	                  |||f||¬«       t        |j                  |	|
f|«      «      }| j                  t        |«      d«       | j                  |d   d   |«       | j                  t        |d   d   |«      «       | j                  |d   d   |«       | j                  t        |d   d   |«      «       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú8ComponentsTests.test_getAdapters_non_empty.<locals>.IFooNrG   r&   r   r   rJ   r­  t  rK   r   rJ   rÔ   rE  c                   ó   — e Zd Zy)ú=ComponentsTests.test_getAdapters_non_empty.<locals>._Context1NrG   r&   r   r   rH  r¯  y  rP   r   rH  c                   ó   — e Zd Zy)ú=ComponentsTests.test_getAdapters_non_empty.<locals>._Context2NrG   r&   r   r   rK  r±  |  rP   r   rK  c                   ó   — e Zd Zd„ Zy)ú=ComponentsTests.test_getAdapters_non_empty.<locals>._Factory1c                 ó   — ||f| _         y r   rf  rd  s      r   r  zFComponentsTests.test_getAdapters_non_empty.<locals>._Factory1.__init__‚  rg  r   Nrô  r&   r   r   Ú	_Factory1r³  �  rh  r   rµ  c                   ó   — e Zd Zd„ Zy)ú=ComponentsTests.test_getAdapters_non_empty.<locals>._Factory2c                 ó   — ||f| _         y r   rf  rd  s      r   r  zFComponentsTests.test_getAdapters_non_empty.<locals>._Factory2.__init__…  rg  r   Nrô  r&   r   r   Ú	_Factory2r·  „  rh  r   r¹  r    r¡   r  r˜   rp   )rS   rD   rv  r   r]  r%  rž  r(   ru   r+   r,   )r   rD   rv  rJ   rU   r^  rN  rH  rK  rO  rP  rµ  r¹  r£   r¤   r3   Úfounds                    r   Útest_getAdapters_non_emptyz*ComponentsTests.test_getAdapters_non_emptyp  sl  € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	á	�TÓ	÷	ð 	ó 
ð	á“Kˆ	Ù“Kˆ	÷	2ñ 	2÷	2ñ 	2ð ˆØˆØ�}‰}‹ˆØ×Ñ˜Y¨¨t¨°dÀÐÔHØ×Ñ˜Y¨¨t¨°dÀÐÔHÜ�t×'Ñ'¨°IÐ(>ÀÓEÓFˆØ×Ñœ˜U› QÔ'Ø×Ñ˜˜q™ !™ fÔ-Ø�‰œ
 5¨¡8¨A¡;°	Ó:Ô;Ø×Ñ˜˜q™ !™ fÔ-Ø�‰œ
 5¨¡8¨A¡;°	Ó:Õ;r   c           	      óÀ   — ddl m}  G d„ d|«      } |d«      } |d«      }d}d}d„ }| j                  «       }| j                  t        |j
                  ||f|||«       y )	Nr   rh   c                   ó   — e Zd Zy)úNComponentsTests.test_registerSubscriptionAdapter_w_nonblank_name.<locals>.IFooNrG   r&   r   r   rJ   r¾  –  rK   r   rJ   rÔ   r   rQ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zRComponentsTests.test_registerSubscriptionAdapter_w_nonblank_name.<locals>._factoryœ  r]   r   )rS   rD   r   rb   rc   ÚregisterSubscriptionAdapter)	r   rD   rJ   rU   r^  rw   rV   r\   r3   s	            r   Ú0test_registerSubscriptionAdapter_w_nonblank_namez@ComponentsTests.test_registerSubscriptionAdapter_w_nonblank_name“  se   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆò	(ð �}‰}‹ˆØ×Ñœ) T×%EÑ%EØ" T G¨T°5¸%õ	Ar   c                 ó¾  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      }d}d	}d
„ }	| j                  «       }
| j                  «       \  }}|5  |
j                  |	|f||¬«       d d d «       |
j                  j                  d   |   |   |   }| j                  t        |«      d«       | j                  |d   |	u «       | j                  |
j                  |f|||	|fg«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                   |«      «       | j                  |j                   j"                  |
u «       | j                  |j                   j$                  |u «       | j                  |j                   j&                  |f«       | j                  |j                   j(                  |«       | j                  |j                   j*                  |u «       | j                  |j                   j,                  |	u «       y # 1 sw Y   �ŒãxY w)Nr   rh   ri   ©ÚSubscriptionRegistrationc                   ó   — e Zd Zy)ú_ComponentsTests.test_registerSubscriptionAdapter_w_explicit_provided_and_required.<locals>.IFooNrG   r&   r   r   rJ   rÆ  ¨  rK   r   rJ   rÔ   ro   rQ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zcComponentsTests.test_registerSubscriptionAdapter_w_explicit_provided_and_required.<locals>._factory®  r]   r   rR   rp   ©rS   rD   rq   rj   rr   rÄ  r   r"   rÀ  r-   rt   r(   ru   r+   r1   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   rj   rÄ  rJ   rU   r^  Ú_blankrV   r\   r3   r!   r   r&  r   r   rx   s                    r   ÚAtest_registerSubscriptionAdapter_w_explicit_provided_and_requiredzQComponentsTests.test_registerSubscriptionAdapter_w_explicit_provided_and_required£  s	  € Ý>Ý8ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆò	(à�}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	9Ø×,Ñ,¨X¸°wÀØ27ð -ô 9÷	9ð �m‰m×(Ñ(¨Ñ+¨DÑ1°$Ñ7¸Ñ?ˆØ×Ñœ˜S› 1Ô%Ø�‰˜˜A™ (Ð*Ô+Ø×Ñ˜×9Ñ9Ø ˜7 D¨&°(¸EÐBÐCô	Eà×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨FÔ3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷'	9ñ 	9ús   ÁIÉIc                 óì  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      }d	}d
}	 ||«       G d„ d«      «       }
| j                  «       }| j                  «       \  }}|5  |j                  |
|f|¬«       d d d «       |j                  j                  d   |   |   |	   }| j                  t        |«      d«       | j                  |d   |
u «       | j                  |j                  |f||	|
|fg«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t!        ||«      «       | j                  t!        |j"                  |«      «       | j                  |j"                  j$                  |u «       | j                  |j"                  j&                  |u «       | j                  |j"                  j(                  |f«       | j                  |j"                  j*                  |	«       | j                  |j"                  j,                  |u «       | j                  |j"                  j.                  |
u «       y # 1 sw Y   �ŒãxY w)Nr   rh   ru  ri   rÃ  c                   ó   — e Zd Zy)úSComponentsTests.test_registerSubscriptionAdapter_wo_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   rÍ  Í  rK   r   rJ   rÔ   rQ   ro   c                   ó   — e Zd Zy)úWComponentsTests.test_registerSubscriptionAdapter_wo_explicit_provided.<locals>._FactoryNrG   r&   r   r   rp  rÏ  Ô  rP   r   rp  rR   rp   )rS   rD   rv  rq   rj   rr   rÄ  r   r"   rÀ  r-   rt   r(   ru   r+   r1   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   rv  rj   rÄ  rJ   rU   r^  rV   rÉ  rp  r3   r!   r   r&  r   r   rx   s                     r   Ú5test_registerSubscriptionAdapter_wo_explicit_providedzEComponentsTests.test_registerSubscriptionAdapter_wo_explicit_providedÇ  s   € Ý>Ý;Ý8ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆá	�TÓ	÷	ð 	ó 
ð	ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	LØ×,Ñ,¨X¸°wÀUÐ,ÔK÷	Là�m‰m×(Ñ(¨Ñ+¨DÑ1°$Ñ7¸Ñ?ˆØ×Ñœ˜S› 1Ô%Ø�‰˜˜A™ (Ð*Ô+Ø×Ñ˜×9Ñ9Ø ˜7 D¨&°(¸EÐBÐCô	Eà×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨FÔ3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷%	Lñ 	Lús   Á2I)É)I3c                 óÎ  ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      Šd}d	} G ˆfd
„d«      }| j                  «       }	| j                  «       \  }
}|
5  |	j                  |||¬«       d d d «       |	j                  j                  d   ‰   |   |   }| j                  t        |«      d«       | j                  |d   |u «       | j                  |	j                  ‰f||||fg«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                   |«      «       | j                  |j                   j"                  |	u «       | j                  |j                   j$                  |u «       | j                  |j                   j&                  ‰f«       | j                  |j                   j(                  |«       | j                  |j                   j*                  |u «       | j                  |j                   j,                  |u «       y # 1 sw Y   �ŒãxY w)Nr   rh   ri   rÃ  c                   ó   — e Zd Zy)úSComponentsTests.test_registerSubscriptionAdapter_wo_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   rÓ  ó  rK   r   rJ   rÔ   rQ   ro   c                   ó   •— e Zd ZW ° fZy)úWComponentsTests.test_registerSubscriptionAdapter_wo_explicit_required.<locals>._FactoryNr§  r©  s   €r   rp  rÕ  ù  rª  r   rp  )rv   rQ   rp   rÈ  )r   rD   rj   rÄ  rJ   rU   rV   rÉ  rp  r3   r!   r   r&  r   r   rx   r^  s                   @r   Ú5test_registerSubscriptionAdapter_wo_explicit_requiredzEComponentsTests.test_registerSubscriptionAdapter_wo_explicit_requiredî  s  ø€ Ý>Ý8ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆ÷	+ó 	+ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	9Ø×,Ñ,Ø t°%ð -ô 9÷	9ð �m‰m×(Ñ(¨Ñ+¨DÑ1°$Ñ7¸Ñ?ˆØ×Ñœ˜S› 1Ô%Ø�‰˜˜A™ (Ð*Ô+Ø×Ñ˜×9Ñ9Ø ˜7 D¨&°(¸EÐBÐCô	Eà×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨FÔ3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷'	9ñ 	9ús   Á$IÉI$c                 ó,  — ddl m}  G d„ d|«      } |d«      } |d«      }d}d}d„ }| j                  «       }| j                  «       \  }	}
|	5  |j	                  ||f||d	¬
«       d d d «       | j                  t        |
«      d«       y # 1 sw Y   Œ%xY w)Nr   rh   c                   ó   — e Zd Zy)úGComponentsTests.test_registerSubscriptionAdapter_wo_event.<locals>.IFooNrG   r&   r   r   rJ   rÙ    rK   r   rJ   rÔ   ro   rQ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zKComponentsTests.test_registerSubscriptionAdapter_wo_event.<locals>._factory  r]   r   F©rQ   rx   )rS   rD   r   r"   rÀ  r(   ru   )r   rD   rJ   rU   r^  rÉ  rV   r\   r3   r!   r   s              r   Ú)test_registerSubscriptionAdapter_wo_eventz9ComponentsTests.test_registerSubscriptionAdapter_wo_event  s¥   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆò	(ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	FØ×,Ñ,¨X¸°wÀØ27¸uð -ô F÷	Fð 	×Ñœ˜W› qÕ)÷	Fð 	Fús   ÁB
Â
Bc                 óv   — | j                  «       }| j                  t        |j                  «       «      g «       y r   )r   r(   rÈ   ÚregisteredSubscriptionAdaptersr;   s     r   Ú)test_registeredSubscriptionAdapters_emptyz9ComponentsTests.test_registeredSubscriptionAdapters_empty'  s+   € Ø�}‰}‹ˆØ×Ñœ˜d×AÑAÓCÓDÀbÕIr   c                 óÂ  — ddl m} ddlm}  G d„ d|«      } |d«      } |d«      }d}d} G d„ d	«      }| j	                  «       }	|	j                  ||f||¬
«       |	j                  ||f||¬
«       t        |	j                  «       «      }
| j                  t        |
«      d«       | j                  t        |
d   |«      «       | j                  |
d   j                  |	u «       | j                  |
d   j                  |u «       | j                  |
d   j                  |f«       | j                  |
d   j                  |«       | j                  |
d   j                   |u «       | j                  |
d   j"                  |u «       | j                  t        |
d   |«      «       | j                  |
d   j                  |	u «       | j                  |
d   j                  |u «       | j                  |
d   j                  |f«       | j                  |
d   j                  |«       | j                  |
d   j                   |u «       | j                  |
d   j"                  |u «       y )Nr   rh   rÃ  c                   ó   — e Zd Zy)úJComponentsTests.test_registeredSubscriptionAdapters_notempty.<locals>.IFooNrG   r&   r   r   rJ   râ  /  rK   r   rJ   rQ   ro   c                   ó   — e Zd Zy)úNComponentsTests.test_registeredSubscriptionAdapters_notempty.<locals>._FactoryNrG   r&   r   r   rp  rä  5  rK   r   rp  rR   r˜   rp   )rS   rD   rr   rÄ  r   rÀ  rÈ   rÞ  r(   ru   r+   r,   r   rv   ri  r   rQ   r`   )r   rD   rÄ  rJ   rU   r^  rV   rÉ  rp  r3   r&  s              r   Ú,test_registeredSubscriptionAdapters_notemptyz<ComponentsTests.test_registeredSubscriptionAdapters_notempty+  sü  € Ý>åDô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆØˆ÷	ñ 	ð �}‰}‹ˆØ×(Ñ(¨°D°7¸DÀuÐ(ÔMØ×(Ñ(¨°D°7¸DÀuÐ(ÔMÜ�4×6Ñ6Ó8Ó9ˆØ×Ñœ˜S› 1Ô%Ø�‰œ
 3 q¡6Ð+CÓDÔEØ�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø×Ñ˜˜Q™Ÿ™¨4¨'Ô2Ø×Ñ˜˜Q™Ÿ™ fÔ-Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨(Ð2Ô3Ø�‰œ
 3 q¡6Ð+CÓDÔEØ�‰˜˜A™Ÿ™¨4Ð/Ô0Ø�‰˜˜A™Ÿ™¨4Ð/Ô0Ø×Ñ˜˜Q™Ÿ™¨4¨'Ô2Ø×Ñ˜˜Q™Ÿ™ fÔ-Ø�‰˜˜A™Ÿ™ uÐ,Ô-Ø�‰˜˜A™Ÿ™¨(Ð2Õ3r   c                 ó²   — ddl m}  G d„ d|«      } |d«      } |d«      }d}| j                  «       }| j                  t        |j
                  |||¬«       y )Nr   rh   c                   ó   — e Zd Zy)úPComponentsTests.test_unregisterSubscriptionAdapter_w_nonblank_name.<locals>.IFooNrG   r&   r   r   rJ   rè  O  rK   r   rJ   rÔ   Únonblank)ri  rv   r   ©rS   rD   r   rb   rc   ÚunregisterSubscriptionAdapter)r   rD   rJ   rU   r^  Ú	_nonblankr3   s          r   Ú2test_unregisterSubscriptionAdapter_w_nonblank_namezBComponentsTests.test_unregisterSubscriptionAdapter_w_nonblank_nameL  sX   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØˆ	Ø�}‰}‹ˆØ×Ñœ) T×%GÑ%GØ#'°$¸Yð 	õ 	Hr   c                 ój   — | j                  «       }| j                  t        |j                  d d ¬«       y r²  )r   rb   rc   rë  r;   s     r   Ú?test_unregisterSubscriptionAdapter_neither_factory_nor_providedzOComponentsTests.test_unregisterSubscriptionAdapter_neither_factory_nor_providedX  s/   € Ø�}‰}‹ˆØ×Ñœ) T×%GÑ%GØ"&°ð 	õ 	7r   c                 óž   — ddl m}  G d„ d|«      } |d«      }| j                  «       }| j                  t        |j
                  d |d ¬«       y )Nr   rh   c                   ó   — e Zd Zy)ú]ComponentsTests.test_unregisterSubscriptionAdapter_neither_factory_nor_required.<locals>.IFooNrG   r&   r   r   rJ   rò  _  rK   r   rJ   r¸  rê  r,  s        r   Ú?test_unregisterSubscriptionAdapter_neither_factory_nor_requiredzOComponentsTests.test_unregisterSubscriptionAdapter_neither_factory_nor_required]  sJ   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×Ñœ) T×%GÑ%GØ"&°Àð 	õ 	Fr   c                 ó:  — ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      }| j                  «       }| j                  «       \  }}|5  |j	                  ||f|«      }	d d d «       | j                  	«       | j                  |«       y # 1 sw Y   Œ,xY w)Nr   rh   c                   ó   — e Zd Zy)úEComponentsTests.test_unregisterSubscriptionAdapter_miss.<locals>.IFooNrG   r&   r   r   rJ   rö  h  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)úIComponentsTests.test_unregisterSubscriptionAdapter_miss.<locals>._FactoryNrG   r&   r   r   rp  rø  l  rK   r   rp  )rS   rD   r   r"   rë  rà   r¿  s
             r   Ú'test_unregisterSubscriptionAdapter_missz7ComponentsTests.test_unregisterSubscriptionAdapter_missf  s›   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	ñ 	ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	PØ×6Ñ6°xÀ$ÀÈ$ÓOˆE÷	Pà×Ñ˜ÔØ×Ñ˜Õ!÷	Pð 	Pús   ÁBÂBc                 óœ  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      } G d„ d	«      }| j                  «       }|j                  ||f|«       | j                  «       \  }	}
|	5  |j                  d |f|«      }d d d «       | j                  «       | j                  |j                  j                  «       | j                  |j                  «       | j                  t!        |
«      d
«       |
d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j$                  |«      «       | j                  |j$                  j&                  |u «       | j                  |j$                  j(                  |u «       | j                  |j$                  j*                  |f«       | j                  |j$                  j,                  d«       | j                  |j$                  j.                  d«       | j                  |j$                  j0                  d u «       y # 1 sw Y   �Œ½xY w)Nr   rh   r¨   rÃ  c                   ó   — e Zd Zy)úOComponentsTests.test_unregisterSubscriptionAdapter_hit_wo_factory.<locals>.IFooNrG   r&   r   r   rJ   rü  z  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)úSComponentsTests.test_unregisterSubscriptionAdapter_hit_wo_factory.<locals>._FactoryNrG   r&   r   r   rp  rþ  ~  rK   r   rp  rp   ro   ©rS   rD   rq   r©   rr   rÄ  r   rÀ  r"   rë  r+   rà   r-   rt   r1   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   ©r   rD   r©   rÄ  rJ   rU   r^  rp  r3   r!   r   rá   r   r   rx   s                  r   Ú1test_unregisterSubscriptionAdapter_hit_wo_factoryzAComponentsTests.test_unregisterSubscriptionAdapter_hit_wo_factoryv  sÕ  € Ý>Ý:ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	ñ 	ð �}‰}‹ˆØ×(Ñ(¨°D°7¸DÔAØ×+Ñ+Ó-Ñˆ�Øñ 	LØ×6Ñ6°t¸d¸WÀdÓKˆE÷	Là�‰˜ÔØ×Ñ˜Ÿ™×3Ñ3Ô4Ø×Ñ˜×9Ñ9Ô:Ø×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷!	Lñ 	LúrÇ  c                 óœ  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      } G d„ d	«      }| j                  «       }|j                  ||f|«       | j                  «       \  }	}
|	5  |j                  ||f|«      }d d d «       | j                  «       | j                  |j                  j                  «       | j                  |j                  «       | j                  t!        |
«      d
«       |
d   \  }}|\  }| j                  |i «       | j                  t#        ||«      «       | j                  t#        |j$                  |«      «       | j                  |j$                  j&                  |u «       | j                  |j$                  j(                  |u «       | j                  |j$                  j*                  |f«       | j                  |j$                  j,                  d«       | j                  |j$                  j.                  d«       | j                  |j$                  j0                  |u «       y # 1 sw Y   �Œ½xY w)Nr   rh   r¨   rÃ  c                   ó   — e Zd Zy)úNComponentsTests.test_unregisterSubscriptionAdapter_hit_w_factory.<locals>.IFooNrG   r&   r   r   rJ   r  š  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)úRComponentsTests.test_unregisterSubscriptionAdapter_hit_w_factory.<locals>._FactoryNrG   r&   r   r   rp  r  ž  rK   r   rp  rp   ro   rÿ  r   s                  r   Ú0test_unregisterSubscriptionAdapter_hit_w_factoryz@ComponentsTests.test_unregisterSubscriptionAdapter_hit_w_factory–  sÕ  € Ý>Ý:ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	ñ 	ð �}‰}‹ˆØ×(Ñ(¨°D°7¸DÔAØ×+Ñ+Ó-Ñˆ�Øñ 	PØ×6Ñ6°xÀ$ÀÈ$ÓOˆE÷	Pà�‰˜ÔØ×Ñ˜Ÿ™×3Ñ3Ô4Ø×Ñ˜×9Ñ9Ô:Ø×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷!	Pñ 	PúrÇ  c                 ó<  — ddl m} ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      } ||«       G d	„ d
«      «       }| j                  «       }	|	j                  ||f|«       | j                  «       \  }
}|
5  |	j                  ||f«      }d d d «       | j                  «       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                   |	u «       | j                  |j                  j"                  |u «       | j                  |j                  j$                  |f«       | j                  |j                  j&                  d«       | j                  |j                  j(                  d«       | j                  |j                  j*                  |u «       y # 1 sw Y   �Œ}xY w)Nr   rh   ru  r¨   rÃ  c                   ó   — e Zd Zy)úUComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   r
  »  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)úYComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_provided.<locals>._FactoryNrG   r&   r   r   rp  r  ¿  rP   r   rp  rp   ro   )rS   rD   rv  rq   r©   rr   rÄ  r   rÀ  r"   rë  r+   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   rv  r©   rÄ  rJ   rU   r^  rp  r3   r!   r   rá   r   r   rx   s                   r   Ú7test_unregisterSubscriptionAdapter_wo_explicit_providedzGComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_provided¶  s¼  € Ý>Ý;Ý:ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆÙ	�TÓ	÷	ð 	ó 
ð	ð �}‰}‹ˆØ×(Ñ(¨°D°7¸DÔAØ×+Ñ+Ó-Ñˆ�Øñ 	JØ×6Ñ6°xÀ$ÀÓIˆE÷	Jà�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	Jñ 	JúrÎ  c                 ó   ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      } |d«      Š G ˆfd„d	«      }| j                  «       }|j                  |‰f|«       | j                  «       \  }}	|5  |j                  ||¬
«      }
d d d «       | j                  
«       | j                  t        |	«      d«       |	d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |u «       | j                  |j                  j"                  ‰f«       | j                  |j                  j$                  d«       | j                  |j                  j&                  d«       | j                  |j                  j(                  |u «       y # 1 sw Y   �Œ}xY w)Nr   rh   r¨   rÃ  c                   ó   — e Zd Zy)úUComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   r  Ú  rK   r   rJ   rÔ   c                   ó   •— e Zd ZW ° fZy)úYComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_required.<locals>._FactoryNr§  r©  s   €r   rp  r  Þ  rª  r   rp  rÔ  rp   ro   )rS   rD   rq   r©   rr   rÄ  r   rÀ  r"   rë  r+   r(   ru   r,   ra   r   rv   ri  r   rQ   r`   )r   rD   r©   rÄ  rJ   rU   rp  r3   r!   r   rá   r   r   rx   r^  s                 @r   Ú7test_unregisterSubscriptionAdapter_wo_explicit_requiredzGComponentsTests.test_unregisterSubscriptionAdapter_wo_explicit_requiredÖ  s©  ø€ Ý>Ý:ÝDô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	+ó 	+ð �}‰}‹ˆØ×(Ñ(¨°D°7¸DÔAØ×+Ñ+Ó-Ñˆ�Øñ 	PØ×6Ñ6°xÈ$Ð6ÓOˆE÷	Pà�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1IÓJÔKØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	Pñ 	PúrÖ  c                 ó  — ddl m} ddl m}  G d„ d|«      } |d«      } |d«      }| j                  «       } ||«       G d„ d«      «       } |«       }| j	                  t        |j                  |f|«      «      g «       y )	Nr   rh   ru  c                   ó   — e Zd Zy)ú4ComponentsTests.test_subscribers_empty.<locals>.IFooNrG   r&   r   r   rJ   r  ÷  rK   r   rJ   rÔ   c                   ó   — e Zd Zy)ú3ComponentsTests.test_subscribers_empty.<locals>.BarNrG   r&   r   r   ÚBarr  ü  rP   r   r  )rS   rD   rv  r   r(   rÈ   Úsubscribers)	r   rD   rv  rJ   rU   r^  r3   r  Úbars	            r   Útest_subscribers_emptyz&ComponentsTests.test_subscribers_emptyô  sx   € Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆØ�}‰}‹ˆÙ	�TÓ	÷	ð 	ó 
ð	á‹eˆØ×Ñœ˜d×.Ñ.°¨v°tÓ<Ó=¸rÕBr   c                 ó  ‡— ddl m} ddl m}  G d„ d|«      } |d«      } |d«      Š G ˆfd„d«      } G d	„ d
|«      }| j                  «       }|j	                  |‰f|«       |j	                  |‰f|«        |‰«       G d„ d«      «       } |«       }	|j                  |	f|«      }
d„ }t        |
|¬«      }
| j                  t        |
«      d«       | j                  t        |
d   |«      «       | j                  t        |
d   |«      «       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú8ComponentsTests.test_subscribers_non_empty.<locals>.IFooNrG   r&   r   r   rJ   r    rK   r   rJ   rÔ   c                   ó   •— e Zd ZW ° fZd„ Zy)ú<ComponentsTests.test_subscribers_non_empty.<locals>._Factoryc                 ó   — || _         y r   )ræ  rò  s     r   r  zEComponentsTests.test_subscribers_non_empty.<locals>._Factory.__init__  s	   € Ø '�•r   N)r)   rH   rI   r¨  r  r©  s   €r   rp  r!  	  s   ø„ Ù$( 7Ð ó(r   rp  c                   ó   — e Zd Zy)ú<ComponentsTests.test_subscribers_non_empty.<locals>._DerivedNrG   r&   r   r   Ú_Derivedr$    rK   r   r%  c                   ó   — e Zd Zy)ú7ComponentsTests.test_subscribers_non_empty.<locals>.BarNrG   r&   r   r   r  r'    rP   r   r  c                 ó.   — | j                   j                  S r   )rÀ   r)   ©Úxs    r   Ú
_klassnamez>ComponentsTests.test_subscribers_non_empty.<locals>._klassname  s   € Ø—;‘;×'Ñ'Ð'r   r#  r˜   rp   )rS   rD   rv  r   rÀ  r  r%  r(   ru   r+   r,   )r   rD   rv  rJ   rU   rp  r%  r3   r  r  r  r+  r^  s               @r   Útest_subscribers_non_emptyz*ComponentsTests.test_subscribers_non_empty  sû   ø€ Ý>Ý;ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	(ó 	(ô	�xô 	à�}‰}‹ˆØ×(Ñ(¨°D°7¸DÔAØ×(Ñ(¨°D°7¸DÔAÙ	�TÓ	÷	ð 	ó 
ð	á‹eˆØ×&Ñ&¨ v¨tÓ4ˆò	(ä˜[¨jÔ9ˆØ×Ñœ˜[Ó)¨1Ô-Ø�‰œ
 ;¨q¡>°8Ó<Ô=Ø�‰œ
 ;¨q¡>°8Ó<Õ=r   c                 ó¨   — ddl m}  G d„ d|«      } |d«      }d}| j                  «       }d„ }| j                  t        |j
                  |||¬«       y )Nr   rh   c                   ó   — e Zd Zy)úBComponentsTests.test_registerHandler_w_nonblank_name.<locals>.IFooNrG   r&   r   r   rJ   r/  !  rK   r   rJ   ré  c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zFComponentsTests.test_registerHandler_w_nonblank_name.<locals>._factory&  r]   r   ©ri  r   )rS   rD   r   rb   rc   ÚregisterHandler)r   rD   rJ   rU   rì  r3   r\   s          r   Ú$test_registerHandler_w_nonblank_namez4ComponentsTests.test_registerHandler_w_nonblank_name  sU   € Ý>ô	�>ô 	á�F‹|ˆØˆ	Ø�}‰}‹ˆò	(ð 	×Ñœ) T×%9Ñ%9¸8Ø#'¨ið 	õ 	9r   c                 ó\  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }d}d}d	„ }| j                  «       }	| j                  «       \  }
}|
5  |	j                  ||f|¬
«       d d d «       |	j                  j                  d   |   d    |   }| j                  t        |«      d«       | j                  |d   |u «       | j                  |	j                  |f|||fg«       | j                  t        |«      d«       |d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                   |«      «       | j                  |j                   j"                  |	u «       | j                  |j                   j$                  |f«       | j                  |j                   j&                  |«       | j                  |j                   j(                  |u «       | j                  |j                   j*                  |u «       y # 1 sw Y   �Œ»xY w)Nr   rh   ri   ©ÚHandlerRegistrationc                   ó   — e Zd Zy)úFComponentsTests.test_registerHandler_w_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   r8  1  rK   r   rJ   ro   rQ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zJComponentsTests.test_registerHandler_w_explicit_required.<locals>._factory6  r]   r   rR   rp   )rS   rD   rq   rj   rr   r6  r   r"   r2  r-   rt   r(   ru   r+   r2   r,   ra   r   ri  r   rQ   r`   )r   rD   rj   r6  rJ   rU   rÉ  rV   r\   r3   r!   r   r&  r   r   rx   s                   r   Ú(test_registerHandler_w_explicit_requiredz8ComponentsTests.test_registerHandler_w_explicit_required,  sß  € Ý>Ý8Ý?ô	�>ô 	á�F‹|ˆØˆØˆò	(ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	@Ø× Ñ  ¨D¨7¸Ð Ô?÷	@à�m‰m×(Ñ(¨Ñ+¨DÑ1°$Ñ7¸Ñ?ˆØ×Ñœ˜S› 1Ô%Ø�‰˜˜A™ (Ð*Ô+Ø×Ñ˜×4Ñ4Ø ˜7 F¨H°eÐ<Ð=ô	?à×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨*Ó5Ô6Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨FÔ3Ø�‰˜Ÿ™×)Ñ)¨UÐ2Ô3Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷#	@ñ 	@ús   ÁH!È!H+c                 ó  ‡
— ddl m}  G d„ d|«      } |d«      Š
d}d} G ˆ
fd„d«      }| j                  «       }| j                  «       \  }}|5  |j	                  ||d	¬
«       d d d «       |j
                  j                  d   ‰
   d    |   }	| j                  t        |	«      d«       | j                  |	d   |u «       | j                  |j                  ‰
f|||fg«       | j                  t        |«      d«       y # 1 sw Y   ŒšxY w)Nr   rh   c                   ó   — e Zd Zy)úPComponentsTests.test_registerHandler_wo_explicit_required_no_event.<locals>.IFooNrG   r&   r   r   rJ   r=  Q  rK   r   rJ   rQ   ro   c                   ó   •— e Zd ZW ° fZy)úTComponentsTests.test_registerHandler_wo_explicit_required_no_event.<locals>._FactoryNr§  ©rU   s   €r   rp  r?  V  s   ø„ Ù$( 7Ð Ør   rp  FrÛ  rp   )rS   rD   r   r"   r2  r-   rt   r(   ru   r+   r2   )r   rD   rJ   rV   rÉ  rp  r3   r!   r   r&  rU   s             @r   Ú2test_registerHandler_wo_explicit_required_no_eventzBComponentsTests.test_registerHandler_wo_explicit_required_no_eventN  s  ø€ Ý>ô	�>ô 	á�F‹|ˆØˆØˆ÷	ó 	ð �}‰}‹ˆØ×+Ñ+Ó-Ñˆ�Øñ 	DØ× Ñ  °¸UÐ ÔC÷	Dà�m‰m×(Ñ(¨Ñ+¨DÑ1°$Ñ7¸Ñ?ˆØ×Ñœ˜S› 1Ô%Ø�‰˜˜A™ (Ð*Ô+Ø×Ñ˜×4Ñ4Ø ˜7 F¨H°eÐ<Ð=ô	?à×Ñœ˜W› qÕ)÷	Dð 	Dús   ÁC>Ã>Dc                 ót   — | j                  «       }| j                  t        |j                  «       «      «       y r   )r   rà   rÈ   ÚregisteredHandlersr;   s     r   Útest_registeredHandlers_emptyz-ComponentsTests.test_registeredHandlers_emptye  s)   € Ø�}‰}‹ˆØ×Ñœ˜d×5Ñ5Ó7Ó8Õ9r   c                 ó˜  — ddl m} ddlm}  G d„ d|«      } |d«      }d„ }d„ }| j	                  «       }|j                  ||f«       |j                  ||f«       d„ }t        |j                  «       |¬	«      }	| j                  t        |	«      d
«       | j                  t        |	d   |«      «       | j                  |	d   j                  |f«       | j                  |	d   j                  d«       | j                  |	d   j                  |«       | j                  |	d   j                  d«       | j                  t        |	d   |«      «       | j                  |	d   j                  |f«       | j                  |	d   j                  d«       | j                  |	d   j                  |«       | j                  |	d   j                  d«       y )Nr   rh   r5  c                   ó   — e Zd Zy)ú?ComponentsTests.test_registeredHandlers_non_empty.<locals>.IFooNrG   r&   r   r   rJ   rG  l  rK   r   rJ   c                 ó   — t        «       ‚r   rZ   rf  s    r   Ú	_factory1zDComponentsTests.test_registeredHandlers_non_empty.<locals>._factory1o  r]   r   c                 ó   — t        «       ‚r   rZ   rf  s    r   Ú	_factory2zDComponentsTests.test_registeredHandlers_non_empty.<locals>._factory2q  r]   r   c                 óB   — | j                   j                  j                  S r   )r`   Ú__code__Úco_namer)  s    r   Ú_factory_namezHComponentsTests.test_registeredHandlers_non_empty.<locals>._factory_namev  s   € Ø—9‘9×%Ñ%×-Ñ-Ð-r   r#  r˜   ro   rp   )rS   rD   rr   r6  r   r2  r%  rC  r(   ru   r+   r,   ri  r   r`   rQ   )
r   rD   r6  rJ   rU   rI  rK  r3   rO  r  s
             r   Ú!test_registeredHandlers_non_emptyz1ComponentsTests.test_registeredHandlers_non_emptyi  s‰  € Ý>Ý?ô	�>ô 	á�F‹|ˆò	(ò	(à�}‰}‹ˆØ×Ñ˜Y¨¨Ô0Ø×Ñ˜Y¨¨Ô0ò	.ä˜T×4Ñ4Ó6¸MÔJˆØ×Ñœ˜[Ó)¨1Ô-Ø�‰œ
 ;¨q¡>Ð3FÓGÔHØ×Ñ˜ Q™×0Ñ0°4°'Ô:Ø×Ñ˜ Q™×,Ñ,¨bÔ1Ø×Ñ˜ Q™×/Ñ/°Ô;Ø×Ñ˜ Q™×,Ñ,¨bÔ1Ø�‰œ
 ;¨q¡>Ð3FÓGÔHØ×Ñ˜ Q™×0Ñ0°4°'Ô:Ø×Ñ˜ Q™×,Ñ,¨bÔ1Ø×Ñ˜ Q™×/Ñ/°Ô;Ø×Ñ˜ Q™×,Ñ,¨bÕ1r   c                 ó¢   — ddl m}  G d„ d|«      } |d«      }d}| j                  «       }| j                  t        |j
                  |f|¬«       y )Nr   rh   c                   ó   — e Zd Zy)úDComponentsTests.test_unregisterHandler_w_nonblank_name.<locals>.IFooNrG   r&   r   r   rJ   rS  ˆ  rK   r   rJ   ré  r1  )rS   rD   r   rb   rc   ÚunregisterHandler)r   rD   rJ   rU   rì  r3   s         r   Ú&test_unregisterHandler_w_nonblank_namez6ComponentsTests.test_unregisterHandler_w_nonblank_name…  sN   € Ý>ô	�>ô 	á�F‹|ˆØˆ	Ø�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Ø$( 7°ð 	õ 	<r   c                 ód   — | j                  «       }| j                  t        |j                  «       y r   )r   rb   rc   rT  r;   s     r   Ú3test_unregisterHandler_neither_factory_nor_requiredzCComponentsTests.test_unregisterHandler_neither_factory_nor_required�  s#   € Ø�}‰}‹ˆØ×Ñœ) T×%;Ñ%;Õ<r   c                 óž   — ddl m}  G d„ d|«      } |d«      }| j                  «       }|j                  |f¬«      }| j	                  |«       y )Nr   rh   c                   ó   — e Zd Zy)ú9ComponentsTests.test_unregisterHandler_miss.<locals>.IFooNrG   r&   r   r   rJ   rZ  –  rK   r   rJ   ©ri  )rS   rD   r   rT  rà   )r   rD   rJ   rU   r3   rá   s         r   Útest_unregisterHandler_missz+ComponentsTests.test_unregisterHandler_miss”  sH   € Ý>ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆØ×&Ñ&°°Ð&Ó8ˆØ×Ñ˜Õr   c                 ó€  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }| j                  «       }d„ }| j                  «       }|j                  ||f«       | j                  «       \  }}	|5  |j                  ||f«      }
d d d «       | j                  
«       | j                  t        |	«      d«       |	d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |f«       | j                  |j                  j"                  d	«       | j                  |j                  j$                  |u «       y # 1 sw Y   �Œ0xY w)
Nr   rh   r¨   r5  c                   ó   — e Zd Zy)úXComponentsTests.test_unregisterHandler_hit_w_factory_and_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   r_  ¡  rK   r   rJ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   z\ComponentsTests.test_unregisterHandler_hit_w_factory_and_explicit_provided.<locals>._factory¥  r]   r   rp   ro   ©rS   rD   rq   r©   rr   r6  r   r2  r"   rT  r+   r(   ru   r,   ra   r   ri  r   r`   ©r   rD   r©   r6  rJ   rU   r3   r\   r!   r   rá   r   r   rx   s                 r   Ú:test_unregisterHandler_hit_w_factory_and_explicit_providedzJComponentsTests.test_unregisterHandler_hit_w_factory_and_explicit_provided�  sg  € Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆò	(à�}‰}‹ˆØ×Ñ˜X¨ wÔ/Ø×+Ñ+Ó-Ñˆ�Øñ 	>Ø×*Ñ*¨8°d°WÓ=ˆE÷	>à�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	>ñ 	>úó   Á1F3Æ3F=c                 ó€  — ddl m} ddlm} ddlm}  G d„ d|«      } |d«      }| j                  «       }d„ }| j                  «       }|j                  ||f«       | j                  «       \  }}	|5  |j                  |f¬«      }
d d d «       | j                  
«       | j                  t        |	«      d	«       |	d   \  }}|\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   |f«       | j                  |j                  j"                  d
«       | j                  |j                  j$                  d u «       y # 1 sw Y   �Œ0xY w)Nr   rh   r¨   r5  c                   ó   — e Zd Zy)úQComponentsTests.test_unregisterHandler_hit_w_only_explicit_provided.<locals>.IFooNrG   r&   r   r   rJ   rg  ¼  rK   r   rJ   c                 ó   — t        «       ‚r   rZ   rf  s    r   r\   zUComponentsTests.test_unregisterHandler_hit_w_only_explicit_provided.<locals>._factoryÀ  r]   r   r[  rp   ro   ra  rb  s                 r   Ú3test_unregisterHandler_hit_w_only_explicit_providedzCComponentsTests.test_unregisterHandler_hit_w_only_explicit_provided¸  sh  € Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆò	(à�}‰}‹ˆØ×Ñ˜X¨ wÔ/Ø×+Ñ+Ó-Ñˆ�Øñ 	=Ø×*Ñ*°T°GÐ*Ó<ˆE÷	=à�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð4Õ5÷	=ñ 	=úrd  c                 ó¸  ‡— ddl m} ddlm} ddlm}  G d„ d|«      } |d«      Š G ˆfd„d«      }| j                  «       }|j                  |«       | j                  «       \  }}|5  |j                  |«      }	d d d «       | j                  	«       | j                  t        |«      d	«       |d   \  }
}|
\  }| j                  |i «       | j                  t        ||«      «       | j                  t        |j                  |«      «       | j                  |j                  j                  |u «       | j                  |j                  j                   ‰f«       | j                  |j                  j"                  d
«       | j                  |j                  j$                  d
«       | j                  |j                  j&                  |u «       y # 1 sw Y   �ŒVxY w)Nr   rh   r¨   r5  c                   ó   — e Zd Zy)úIComponentsTests.test_unregisterHandler_wo_explicit_required.<locals>.IFooNrG   r&   r   r   rJ   rl  ×  rK   r   rJ   c                   ó   •— e Zd ZW ° fZy)úMComponentsTests.test_unregisterHandler_wo_explicit_required.<locals>._FactoryNr§  r@  s   €r   rp  rn  Ú  rª  r   rp  rp   ro   )rS   rD   rq   r©   rr   r6  r   r2  r"   rT  r+   r(   ru   r,   ra   r   ri  r   rQ   r`   )r   rD   r©   r6  rJ   rp  r3   r!   r   rá   r   r   rx   rU   s                @r   Ú+test_unregisterHandler_wo_explicit_requiredz;ComponentsTests.test_unregisterHandler_wo_explicit_requiredÓ  sv  ø€ Ý>Ý:Ý?ô	�>ô 	á�F‹|ˆ÷	+ó 	+ð �}‰}‹ˆØ×Ñ˜XÔ&Ø×+Ñ+Ó-Ñˆ�Øñ 	5Ø×*Ñ*¨8Ó4ˆE÷	5à�‰˜ÔØ×Ñœ˜W› qÔ)Ø˜1‘:‰ˆˆbØ‰ˆØ×Ñ˜˜RÔ Ø�‰œ
 5¨,Ó7Ô8Ø�‰œ
 5§<¡<Ð1DÓEÔFØ�‰˜Ÿ™×-Ñ-°Ð5Ô6Ø×Ñ˜Ÿ™×.Ñ.°°Ô8Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø×Ñ˜Ÿ™×*Ñ*¨BÔ/Ø�‰˜Ÿ™×,Ñ,°Ð8Õ9÷	5ñ 	5ús   Á)GÇGc                 ó¾   — ddl m} ddl m}  G d„ d|«      } |d«      }| j                  «       } ||«       G d„ d«      «       } |«       }|j	                  |f«       y )Nr   rh   ru  c                   ó   — e Zd Zy)ú/ComponentsTests.test_handle_empty.<locals>.IFooNrG   r&   r   r   rJ   rr  ò  rK   r   rJ   c                   ó   — e Zd Zy)ú.ComponentsTests.test_handle_empty.<locals>.BarNrG   r&   r   r   r  rt  ö  rP   r   r  )rS   rD   rv  r   Úhandle)r   rD   rv  rJ   rU   r3   r  r  s           r   Útest_handle_emptyz!ComponentsTests.test_handle_emptyï  sY   € Ý>Ý;ô	�>ô 	á�F‹|ˆØ�}‰}‹ˆÙ	�TÓ	÷	ð 	ó 
ð	á‹eˆØ�‰�S�FÕr   c                 ót  ‡
‡— ddl m} ddl m}  G d„ d|«      } |d«      }g Š
ˆ
fd„}g Šˆfd„}| j                  «       }|j	                  ||f«       |j	                  ||f«        ||«       G d„ d	«      «       } |«       }	|j                  |	«       | j                  ‰
|	g«       | j                  ‰|	g«       y )
Nr   rh   ru  c                   ó   — e Zd Zy)ú3ComponentsTests.test_handle_non_empty.<locals>.IFooNrG   r&   r   r   rJ   ry  ÿ  rK   r   rJ   c                 ó(   •— ‰j                  | «       y r   r   )rg  Ú	_called_1s    €r   Ú
_factory_1z9ComponentsTests.test_handle_non_empty.<locals>._factory_1	  ó   ø€ Ø× Ñ  Õ)r   c                 ó(   •— ‰j                  | «       y r   r   )rg  Ú	_called_2s    €r   Ú
_factory_2z9ComponentsTests.test_handle_non_empty.<locals>._factory_2	  r}  r   c                   ó   — e Zd Zy)ú2ComponentsTests.test_handle_non_empty.<locals>.BarNrG   r&   r   r   r  r‚  	  rP   r   r  )rS   rD   rv  r   r2  ru  r(   )r   rD   rv  rJ   rU   r|  r€  r3   r  r  r{  r  s             @@r   Útest_handle_non_emptyz%ComponentsTests.test_handle_non_emptyü  s´   ù€ Ý>Ý;ô	�>ô 	á�F‹|ˆØˆ	ô	*àˆ	ô	*à�}‰}‹ˆØ×Ñ˜Z¨$¨Ô1Ø×Ñ˜Z¨$¨Ô1Ù	�TÓ	÷	ð 	ó 
ð	á‹eˆØ�‰�CÔØ×Ñ˜ S EÔ*Ø×Ñ˜ S EÕ*r   c                 ó  —  G d„ dt         «      }| j                  «       }t        «       }|r|n	t        «       }|j                  ||¬«       |j                  ||d¬«       | j	                  t        |j                  j                  «      d«       | j	                  |j                  j                  |d|r|fn||fiig«       | j	                  |j                  j                  ||rdnd	i«       |j                  ||¬«      }| j                  |«       |j                  ||d¬«      }| j                  |«       | j	                  |j                  j                  i «       | j	                  t        |j                  j                  «      d
«       y )Nc                   ó   — e Zd Zy)úQComponentsTests.test_register_unregister_identical_objects_provided.<locals>.IFooNrG   r&   r   r   rJ   r†  	  rK   r   rJ   rÔ  r  rú   rp   ro   rÕ   é   r   )r   r   ra   rT   r(   ru   r.   rt   Ú	_providedrØ   r+   )r   Ú	identicalrJ   r3   ÚfirstÚsecondÚress          r   Ú3test_register_unregister_identical_objects_providedzCComponentsTests.test_register_unregister_identical_objects_provided	  sU  € ô	”9ô 	ð �}‰}‹ˆÜ“ˆÙ#‘¬«ˆà×Ñ˜U¨TÐÔ2Ø×Ñ˜V¨d¸ÐÔ?à×Ñœ˜TŸ^™^×8Ñ8Ó9¸1Ô=Ø×Ñ˜Ÿ™×4Ñ4Ø�2¡I˜‘y°E¸6°?ÐCð8
ð 7ô 	ð 	×Ñ˜Ÿ™×1Ñ1Ø‘y‘! að4
ô 	ð ×$Ñ$ U°TÐ$Ó:ˆØ�‰˜ÔØ×$Ñ$ V°dÀÐ$ÓGˆØ�‰˜Ôà×Ñ˜Ÿ™×1Ñ1°2Ô6Ø×Ñœ˜TŸ^™^×8Ñ8Ó9¸1Õ=r   c                 ó(   — | j                  d¬«       y )NF)r‰  )r�  r   s    r   Ú2test_register_unregister_nonequal_objects_providedzBComponentsTests.test_register_unregister_nonequal_objects_provided/	  s   € Ø×@Ñ@È5Ð@ÕQr   c                 óú  —  G d„ dt         «      } G d„ d«      }| j                  «       }t        d«      D ]*  }|j                   |«       |dj	                  |«      ¬«       Œ, |j
                  j                  }|j
                  j                  }| j                  t        |«      d«       | j                  t        |d	   «      d«       | j                  t        |d	   |   «      d«       |j
                  j                  }| j                  t        |«      d«       | j                  t        |d	   «      d«       | j                  t        |d	   |   «      d«       | j                  t        |d	   |   d
   «      d«        t        |«      «       x}|j
                  _        |j                  i «       i x}	|d	   |<   t        d«      D ]$  }
t        t        |
«      «      }
|d	   |   |
   |	|
<   Œ& | j                  ||«        t        |«      «       x}|j
                  _
        |j                  i «       i x}	|d	   |<   d|	d
<   t        dd«      D ]/  }
t        t        |
«      «      }
|d	   |   |
   }|	d
xx   |fz  cc<   Œ1 |j                  «       }| j                  |j
                  j                  |«       | j                  |dddddœ«       |j                  d¬«      }| j                  |j
                  j                  |dz   «       | j                  ||«       | j                  ||«       | j                  t        |d	   |   d
   «      t        |d	   |   d
   «      «       |d	   |   d
   D ]  }| j!                  ||d	   |   d
   «       Œ |j                  «       }| j                  |dd	dd	dœ«       |j                  d¬«      }| j                  ||«       | j                  |j
                  j                  |dz   «       y )Nc                   ó   — e Zd ZdZy)úGComponentsTests.test_rebuildUtilityRegistryFromLocalCache.<locals>.IFooúDoes nothingN©r)   rH   rI   Ú__doc__r&   r   r   rJ   r’  3	  ó   „ Úr   rJ   c                   ó   — e Zd ZdZy)úYComponentsTests.test_rebuildUtilityRegistryFromLocalCache.<locals>.UtilityImplementingFoor“  Nr”  r&   r   r   ÚUtilityImplementingFoor˜  6	  r–  r   r™  é   z{}r  rp   r   ro   é
   r&   é   é   é   é   é   )Údid_not_registerÚneeded_registeredÚdid_not_subscribeÚneeded_subscribedT)Úrebuild)r   r   ÚrangerT   Úformatr.   Ú_generationrs   r(   ru   rt   Útyper   ÚstrÚassertNotEqualÚ$rebuildUtilityRegistryFromLocalCacheÚassertIn)r   rJ   r™  ÚcompsÚiÚorig_generationÚorig_adaptersÚorig_subscribersÚnew_adaptersÚdr   Únew_subscribersr3   Úrebuild_results_preflightÚrebuild_resultsÚorig_subscriberÚpreflight_afterÚrebuild_afters                     r   Ú)test_rebuildUtilityRegistryFromLocalCachez9ComponentsTests.test_rebuildUtilityRegistryFromLocalCache2	  sû  € ô	”9ô 	÷	ñ 	ð —‘“ˆä�r“ò 	WˆAØ×!Ñ!Ñ"8Ó":¸DÀtÇ{Á{ÐSTÃ~Ð!ÕVð	Wð  Ÿ/™/×5Ñ5ˆàŸ™×1Ñ1ˆØ×Ñœ˜]Ó+¨QÔ/Ø×Ñœ˜]¨1Ñ-Ó.°Ô2Ø×Ñœ˜]¨1Ñ-¨dÑ3Ó4°bÔ9à Ÿ?™?×7Ñ7ÐØ×ÑœÐ-Ó.°Ô2Ø×ÑœÐ-¨aÑ0Ó1°1Ô5Ø×ÑœÐ-¨aÑ0°Ñ6Ó7¸Ô;Ø×ÑœÐ-¨aÑ0°Ñ6°rÑ:Ó;¸RÔ@ð 4G´4¸Ó3FÓ3HÐHˆ�u—‘Ô0Ø×Ñ˜BÔØ$&Ð&ˆˆL˜‰O˜DÑ!Ü˜"“Iò 	3ˆDÜ”s˜4“y“>ˆDØ# AÑ& tÑ,¨TÑ2ˆAˆdŠGð	3ð 	×Ñ˜M¨<Ô8à9O¼Ð>NÓ9OÓ9QÐQˆ˜%Ÿ/™/Ô6Ø×Ñ˜rÔ"Ø')Ð)ˆˆO˜AÑ˜tÑ$Øˆˆ"‰ä˜!˜R“Lò 	ˆDÜ”s˜4“y“>ˆDØ  Ñ# DÑ)¨$Ñ/ˆDØˆb‹E�d�WÑŒEð	ð %*×$NÑ$NÓ$PÐ!à×Ñ˜Ÿ™×4Ñ4°oÔFØ×ÑÐ2Ø "Ø!#à!"Ø!#ñ5
ô 	ð  ×DÑDÈTÐDÓRˆð 	×Ñ˜Ÿ™×4Ñ4°oÈÑ6IÔJà×ÑÐ2°OÔDØ×Ñ˜ }Ô5Ø×ÑÜ� Ñ" 4Ñ(¨Ñ,Ó-ÜÐ  Ñ# DÑ)¨"Ñ-Ó.ô	0ð  0°Ñ2°4Ñ8¸Ñ<ò 	IˆOØ�M‰M˜/¨?¸1Ñ+=¸dÑ+CÀBÑ+GÕHð	Ið  ×DÑDÓFˆØ×Ñ˜Ø "Ø!"à!#Ø!"ñ+
ô 	ð ×BÑBÈ4ÐBÓPˆØ×Ñ˜¨Ô8Ø×Ñ˜Ÿ™×4Ñ4°oÈÑ6IÕJr   )Útest)T)vr)   rH   rI   r   r   r"   r4   r7   r<   r@   rW   rf   ry   r�   r…   r�   r’   rœ   r¦   r®   r³   r·   rÊ   rÖ   rÙ   rÜ   râ   ræ   rë   ró   rû   r   r  r
  r  r  r  r  r'  r-  r4  r9  r@  rD  rI  rN  rS  rW  r_  rj  rs  r{  rƒ  r‰  r�  r›  r¡  r«  r°  r´  r¹  rÀ  rÆ  rÍ  rÕ  rÙ  rà  rç  rë  rú  r  r  r)  rA  rQ  rY  rj  rs  r~  r%  r–  rŸ  rª  r»  rÁ  rÊ  rÐ  rÖ  rÜ  rß  rå  rí  rï  ró  rù  r  r  r  r  r  r,  r3  r:  rA  rD  rP  rU  rW  r\  rc  ri  ro  rv  rƒ  r�  r�  r»  rÂ   rÃ   s   @r   r	   r	      sw  ø„ òó9ò ò:òFò=ò	=ò ò(?ò6ò@:ò<	Mò6ò@*ò %ò*1ò0'6òROò"*òCò,Cò>Gò
?ò"ò6ò>:ò> 6òD!6òFOò$Oò$Oò,>ò6(ò((ò,?ò0ò>9òOò<òGò:ò?òAòLò$òò*!:òF2ò"%:òNAò Gò!:òF(:òTAò":òH*ò&7ò
Fò ò:ò@:ò@:ò<>ò 4òDCò	Mò5ò(;ò 1ô(*0ôX00òdò(Bò,Bò2Nò*Bò25ô-1ò^Fò(Aò4!<òFAò ":òH%:òN#:òJ*ò(Jò4òB
Hò7ò
Fò"ò 6ò@:ò@:ò@:ò<Cò>ò89ò :òD*ò.:ò2ò8	<ò=ò ò:ò66ò6:ò8ò+ó.>ò8RöTKr   r	   c                   ó   ‡ — e Zd Zˆ fd„Zˆ xZS )ÚUnhashableComponentsTestsc                 óH   •—  G d„ dt         t        | �  «       t        «      }|S )Nc                   ó   — e Zd Zy)ú=UnhashableComponentsTests._getTargetClass.<locals>.ComponentsNrG   r&   r   r   r   rÁ  Ž	  rK   r   r   )r½   r¾  r   r¾   )r   r   rÀ   s     €r   r   z)UnhashableComponentsTests._getTargetClass‹	  s#   ø€ ô	œÔ8¸$ÑOÓQÔSWô 	àÐr   )r)   rH   rI   r   rÂ   rÃ   s   @r   r¾  r¾  ‰	  s   ø„ ÷ð r   r¾  c                   óª   — e Zd Zd„ Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚUtilityRegistrationTestsc                 ó   — ddl m} |S )Nr   rk   )rr   rl   )r   rl   s     r   r   z(UtilityRegistrationTests._getTargetClass˜	  ó   € Ý?Ø"Ð"r   Nc                 óž   — ddl m}  G d„ d|«      } |d«      } G d„ d«      } |«       }d}d	}	| j                  «       }
 |
|||||	|«      ||fS )
Nr   rh   c                   ó   — e Zd Zy)úAUtilityRegistrationTests._makeOne.<locals>.InterfaceClassSubclassNrG   r&   r   r   ÚInterfaceClassSubclassrÈ  Ÿ	  rK   r   rÉ  rJ   c                   ó   — e Zd Zd„ Zy)ú4UtilityRegistrationTests._makeOne.<locals>._Registryc                  ó   — y©NÚ	_REGISTRYr&   r   s    r   Ú__repr__z=UtilityRegistrationTests._makeOne.<locals>._Registry.__repr__¤	  ó   € Ø"r   N©r)   rH   rI   rÏ  r&   r   r   Ú	_RegistryrË  £	  ó   „ ó#r   rÒ  r   Ú	DOCSTRING©rS   rD   r   )r   r_   r`   rD   rÉ  rU   rÒ  r   r   ÚdocÚklasss              r   r   z!UtilityRegistrationTests._makeOneœ	  sj   € Ý>ô	 ^ô 	ñ & fÓ-ˆ÷	#ñ 	#ñ “;ˆØˆØˆØ×$Ñ$Ó&ˆÙ�h  d¨I°s¸GÓDØØðð 	r   c                 óJ   — ddl m} ddlm}  ||| j	                  «       «       y )Nr   ©ÚverifyClass©ÚIUtilityRegistration)Úzope.interface.verifyrÚ  rq   rÜ  r   )r   rÚ  rÜ  s      r   Ú+test_class_conforms_to_IUtilityRegistrationzDUtilityRegistrationTests.test_class_conforms_to_IUtilityRegistration¯	  ó   € Ý5ÝBÙÐ(¨$×*>Ñ*>Ó*@ÕAr   c                 óV   — ddl m} ddlm} | j	                  «       \  }}} |||«       y )Nr   ©ÚverifyObjectrÛ  )rÝ  râ  rq   rÜ  r   )r   râ  rÜ  ÚurÚ_s        r   Ú.test_instance_conforms_to_IUtilityRegistrationzGUtilityRegistrationTests.test_instance_conforms_to_IUtilityRegistration´	  ó$   € Ý6ÝBØ—M‘M“O‰ˆˆAˆqÙÐ)¨2Õ.r   c                 óŒ   —  G d„ d«      } |«       }| j                  |«      \  }}}| j                  t        |«      d|z  «       y )Nc                   ó   — e Zd ZdZ y)ú:UtilityRegistrationTests.test___repr__.<locals>._ComponentÚTESTNrG   r&   r   r   Ú
_Componentré  »	  ó   „ Ø‰Hr   rë  zAUtilityRegistration(_REGISTRY, IFoo, %r, TEST, None, 'DOCSTRING')r9   ©r   rë  Ú
_componentrã  Ú	_registryrw   s         r   r<   z&UtilityRegistrationTests.test___repr__º	  sG   € ÷	ñ 	á“\ˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ×Ñœ˜b›ØOØ$ñ&õ	'r   c                 óª   —  G d„ d«      } |«       }| j                  |«      \  }}}t        «       |_        | j                  t	        |«      d|z  «       y )Nc                   ó   — e Zd Zd„ Zy)úKUtilityRegistrationTests.test___repr___provided_wo_name.<locals>._Componentc                  ó   — y©Nrê  r&   r   s    r   rÏ  zTUtilityRegistrationTests.test___repr___provided_wo_name.<locals>._Component.__repr__Å	  ó   € Ør   NrÑ  r&   r   r   rë  rò  Ä	  ó   „ ór   rë  úAUtilityRegistration(_REGISTRY, None, %r, TEST, None, 'DOCSTRING')©r   ra   rv   r(   r:   rí  s         r   Útest___repr___provided_wo_namez7UtilityRegistrationTests.test___repr___provided_wo_nameÃ	  óR   € ÷	ñ 	ñ  “\ˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uÜ“hˆŒØ×Ñœ˜b›ØOØ$ñ&õ	'r   c                 óª   —  G d„ d«      } |«       }| j                  |«      \  }}}t        «       |_        | j                  t	        |«      d|z  «       y )Nc                   ó   — e Zd Zd„ Zy)úLUtilityRegistrationTests.test___repr___component_wo_name.<locals>._Componentc                  ó   — yrô  r&   r   s    r   rÏ  zUUtilityRegistrationTests.test___repr___component_wo_name.<locals>._Component.__repr__Ð	  rõ  r   NrÑ  r&   r   r   rë  rý  Ï	  rö  r   rë  r÷  rø  rí  s         r   Útest___repr___component_wo_namez8UtilityRegistrationTests.test___repr___component_wo_nameÎ	  rú  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |j                  «       t	        |«      «       y r   ©ra   r   r(   Ú__hash__Úid©r   rî  rã  rï  rw   s        r   Útest___hash__z&UtilityRegistrationTests.test___hash__Ù	  ó8   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ×Ñ˜Ÿ™›¬¨2«Õ/r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k(  «       y r   ©ra   r   r+   r  s        r   Útest___eq___identityz-UtilityRegistrationTests.test___eq___identityÞ	  ó.   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ�‰˜˜b™Õ!r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k(  «       y r   r  ©r   rî  rã  rï  rw   Úur2rä  s          r   Útest___eq___hitz(UtilityRegistrationTests.test___eq___hitã	  óB   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�Ø�‰˜˜c™	Õ"r   c                 ó¨   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k(  «       y r   ©ra   r   rà   ©r   rî  Ú_component2rã  rï  rw   r  rä  s           r   Útest___eq___missz)UtilityRegistrationTests.test___eq___missé	  óK   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø×Ñ˜˜s™Õ#r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k7  «       y r   r  r  s        r   Útest___ne___identityz-UtilityRegistrationTests.test___ne___identityð	  ó0   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ×Ñ˜˜r™Õ"r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k7  «       y r   r  r  s          r   Útest___ne___hitz(UtilityRegistrationTests.test___ne___hitõ	  óD   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�Ø×Ñ˜˜s™Õ#r   c                 ó¨   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k7  «       y r   r  r  s           r   Útest___ne___missz)UtilityRegistrationTests.test___ne___missû	  óI   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø�‰˜˜c™	Õ"r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k  «       y r   r  r  s        r   Útest___lt___identityz-UtilityRegistrationTests.test___lt___identity
  ó0   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ×Ñ˜˜b™Õ!r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k  «       y r   r  r  s          r   Útest___lt___hitz(UtilityRegistrationTests.test___lt___hit
  óD   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�Ø×Ñ˜˜c™Õ"r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k  «       y ©NÚ2©ra   r   r   r+   r  s           r   Útest___lt___missz)UtilityRegistrationTests.test___lt___miss
  óT   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø˜3‘;ˆŒØ�‰˜˜S™Õ!r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k  «       y r   r  r  s        r   Útest___le___identityz-UtilityRegistrationTests.test___le___identity
  r
  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k  «       y r   r  r  s          r   Útest___le___hitz(UtilityRegistrationTests.test___le___hit
  r  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k  «       y r&  r(  r  s           r   Útest___le___missz)UtilityRegistrationTests.test___le___miss 
  óT   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø˜3‘;ˆŒØ�‰˜˜c™	Õ"r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||kD  «       y r   r  r  s        r   Útest___gt___identityz-UtilityRegistrationTests.test___gt___identity(
  r!  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||kD  «       y r&  r(  r  s           r   Útest___gt___hitz(UtilityRegistrationTests.test___gt___hit-
  óT   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø˜3‘;ˆŒØ�‰˜˜b™Õ!r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||kD  «       y r   r  r  s          r   Útest___gt___missz)UtilityRegistrationTests.test___gt___miss5
  óD   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�Ø×Ñ˜˜r™Õ"r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k\  «       y r   r  r  s        r   Útest___ge___identityz-UtilityRegistrationTests.test___ge___identity;
  r
  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k\  «       y r&  ©ra   r   r   rà   r  s           r   Útest___ge___missz)UtilityRegistrationTests.test___ge___miss@
  óV   € Ü“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø˜3‘;ˆŒØ×Ñ˜˜s™Õ#r   c                 ó¨   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k\  «       y r&  r(  r  s          r   Útest___ge___hitz(UtilityRegistrationTests.test___ge___hitH
  óM   € Ü“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�Ø˜3‘;ˆŒØ�‰˜˜r™	Õ"r   )NN)r)   rH   rI   r   r   rÞ  rå  r<   rù  rÿ  r  r	  r  r  r  r  r  r   r#  r)  r,  r.  r0  r3  r5  r8  r;  r>  rA  r&   r   r   rÃ  rÃ  –	  s…   „ ò#óò&Bò
/ò'ò	'ò	'ò0ò
"ò
#ò$ò#ò
$ò#ò"ò
#ò"ò"ò
#ò#ò"ò
"ò#ò"ò
$ó#r   rÃ  c                   ó¶   — e Zd Zd„ Zdd„Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚAdapterRegistrationTestsc                 ó   — ddl m} |S )Nr   ra  )rr   rb  )r   rb  s     r   r   z(AdapterRegistrationTests._getTargetClassR
  rÅ  r   Nc                 ó°   — ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      } |«       }d}d	}	| j                  «       }
 |
||f||||	«      ||fS )
Nr   rh   c                   ó   — e Zd Zy)ú/AdapterRegistrationTests._makeOne.<locals>.IFooNrG   r&   r   r   rJ   rH  Y
  rK   r   rJ   rÔ   c                   ó   — e Zd Zd„ Zy)ú4AdapterRegistrationTests._makeOne.<locals>._Registryc                  ó   — yrÍ  r&   r   s    r   rÏ  z=AdapterRegistrationTests._makeOne.<locals>._Registry.__repr__^
  rÐ  r   NrÑ  r&   r   r   rÒ  rJ  ]
  rÓ  r   rÒ  r   rÔ  rÕ  ©r   r_   rD   rJ   rU   r^  rÒ  r   r   rÖ  r×  s              r   r   z!AdapterRegistrationTests._makeOneV
  ór   € Ý>ô	�>ô 	á�F‹|ˆÙ�F‹|ˆ÷	#ñ 	#ñ “;ˆØˆØˆØ×$Ñ$Ó&ˆÙ�h  ¨¨t°YÀÓDØØðð 	r   c                 óJ   — ddl m} ddlm}  ||| j	                  «       «       y )Nr   rÙ  ©ÚIAdapterRegistration)rÝ  rÚ  rq   rP  r   )r   rÚ  rP  s      r   Ú+test_class_conforms_to_IAdapterRegistrationzDAdapterRegistrationTests.test_class_conforms_to_IAdapterRegistrationi
  rß  r   c                 óV   — ddl m} ddlm} | j	                  «       \  }}} |||«       y )Nr   rá  rO  )rÝ  râ  rq   rP  r   )r   râ  rP  Úarrä  s        r   Ú.test_instance_conforms_to_IAdapterRegistrationzGAdapterRegistrationTests.test_instance_conforms_to_IAdapterRegistrationn
  ræ  r   c                 óŒ   —  G d„ d«      } |«       }| j                  |«      \  }}}| j                  t        |«      d|z  «       y )Nc                   ó   — e Zd ZdZ y)ú:AdapterRegistrationTests.test___repr__.<locals>._Componentrê  NrG   r&   r   r   rë  rW  u
  rì  r   rë  zCAdapterRegistration(_REGISTRY, [IBar], IFoo, %r, TEST, 'DOCSTRING')r9   ©r   rë  rî  rS  rï  rw   s         r   r<   z&AdapterRegistrationTests.test___repr__t
  sI   € ÷	ñ 	á“\ˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ×Ñœ˜b›ðØ %ñ'õ	(r   c                 óª   —  G d„ d«      } |«       }| j                  |«      \  }}}t        «       |_        | j                  t	        |«      d|z  «       y )Nc                   ó   — e Zd Zd„ Zy)úKAdapterRegistrationTests.test___repr___provided_wo_name.<locals>._Componentc                  ó   — yrô  r&   r   s    r   rÏ  zTAdapterRegistrationTests.test___repr___provided_wo_name.<locals>._Component.__repr__
  rõ  r   NrÑ  r&   r   r   rë  r[  ~
  rö  r   rë  úCAdapterRegistration(_REGISTRY, [IBar], None, %r, TEST, 'DOCSTRING')rø  rX  s         r   rù  z7AdapterRegistrationTests.test___repr___provided_wo_name}
  óT   € ÷	ñ 	ñ  “\ˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uÜ“hˆŒØ×Ñœ˜b›ðØ %ñ'õ	(r   c                 óª   —  G d„ d«      } |«       }| j                  |«      \  }}}t        «       |_        | j                  t	        |«      d|z  «       y )Nc                   ó   — e Zd Zd„ Zy)úLAdapterRegistrationTests.test___repr___component_wo_name.<locals>._Componentc                  ó   — yrô  r&   r   s    r   rÏ  zUAdapterRegistrationTests.test___repr___component_wo_name.<locals>._Component.__repr__Š
  rõ  r   NrÑ  r&   r   r   rë  ra  ‰
  rö  r   rë  r]  rø  rX  s         r   rÿ  z8AdapterRegistrationTests.test___repr___component_wo_nameˆ
  r^  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |j                  «       t	        |«      «       y r   r  ©r   rî  rS  rï  rw   s        r   r  z&AdapterRegistrationTests.test___hash__“
  r  r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k(  «       y r   r  rd  s        r   r	  z-AdapterRegistrationTests.test___eq___identity˜
  r
  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k(  «       y r   r  ©r   rî  rS  rï  rw   Úar2rä  s          r   r  z(AdapterRegistrationTests.test___eq___hit�
  r  r   c                 ó¨   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k(  «       y r   r  ©r   rî  r  rS  rï  rw   rh  rä  s           r   r  z)AdapterRegistrationTests.test___eq___miss£
  r  r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k7  «       y r   r  rd  s        r   r  z-AdapterRegistrationTests.test___ne___identityª
  r  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k7  «       y r   r  rg  s          r   r  z)AdapterRegistrationTests.test___ne___miss¯
  r  r   c                 ó¨   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k7  «       y r   r  rj  s           r   Útest___ne___hit_componentz2AdapterRegistrationTests.test___ne___hit_componentµ
  r  r   c                 óÔ   — ddl m}  G d„ d|«      } |d«      }t        «       }| j                  |«      \  }}}| j                  |«      \  }}	}	||_        | j                  ||k7  «       y )Nr   rh   c                   ó   — e Zd Zy)ú?AdapterRegistrationTests.test___ne___hit_provided.<locals>.IFooNrG   r&   r   r   rJ   rq  ¾
  rK   r   rJ   rE  )rS   rD   ra   r   rv   r+   )
r   rD   rJ   rN  rî  rS  rï  rw   rh  rä  s
             r   Útest___ne___hit_providedz1AdapterRegistrationTests.test___ne___hit_provided¼
  sa   € Ý>ô	�>ô 	á�F‹|ˆÜ“Xˆ
Ø#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M *Ó-‰	ˆˆQ�ØˆŒØ�‰˜˜c™	Õ"r   c                 óê   — ddl m}  G d„ d|«      } |d«      }t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }	}
}
|f|	_        | j                  ||	k7  «       y )Nr   rh   c                   ó   — e Zd Zy)ú?AdapterRegistrationTests.test___ne___hit_required.<locals>.IFooNrG   r&   r   r   rJ   ru  É
  rK   r   rJ   rE  )rS   rD   ra   r   ri  r+   )r   rD   rJ   rN  rî  r  rS  rï  rw   rh  rä  s              r   Útest___ne___hit_requiredz1AdapterRegistrationTests.test___ne___hit_requiredÇ
  sj   € Ý>ô	�>ô 	á�F‹|ˆÜ“Xˆ
Ü“hˆØ#Ÿ}™}¨ZÓ8ÑˆˆI�uØ—M‘M +Ó.‰	ˆˆQ�Ø�wˆŒØ�‰˜˜c™	Õ"r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k  «       y r   r  rd  s        r   r   z-AdapterRegistrationTests.test___lt___identityÓ
  r!  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k  «       y r   r  rg  s          r   r#  z(AdapterRegistrationTests.test___lt___hitØ
  r$  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k  «       y r&  r(  rj  s           r   r)  z)AdapterRegistrationTests.test___lt___missÞ
  r*  r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k  «       y r   r  rd  s        r   r,  z-AdapterRegistrationTests.test___le___identityæ
  r
  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||k  «       y r   r  rg  s          r   r.  z(AdapterRegistrationTests.test___le___hitë
  r  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k  «       y r&  r(  rj  s           r   r0  z)AdapterRegistrationTests.test___le___missñ
  r1  r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||kD  «       y r   r  rd  s        r   r3  z-AdapterRegistrationTests.test___gt___identityù
  r!  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||kD  «       y r&  r(  rj  s           r   r5  z(AdapterRegistrationTests.test___gt___hitþ
  r6  r   c                 ó”   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}| j                  ||kD  «       y r   r  rg  s          r   r8  z)AdapterRegistrationTests.test___gt___miss  r9  r   c                 ój   — t        «       }| j                  |«      \  }}}| j                  ||k\  «       y r   r  rd  s        r   r;  z-AdapterRegistrationTests.test___ge___identity  r
  r   c                 ó¼   — t        «       }t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k\  «       y r&  r=  rj  s           r   r>  z)AdapterRegistrationTests.test___ge___miss  r?  r   c                 ó¨   — t        «       }| j                  |«      \  }}}| j                  |«      \  }}}|dz   |_        | j                  ||k\  «       y r&  r(  rg  s          r   rA  z(AdapterRegistrationTests.test___ge___hit  rB  r   r   )r)   rH   rI   r   r   rQ  rT  r<   rù  rÿ  r  r	  r  r  r  r  rn  rr  rv  r   r#  r)  r,  r.  r0  r3  r5  r8  r;  r>  rA  r&   r   r   rD  rD  P
  s�   „ ò#óò&Bò
/ò(ò	(ò	(ò0ò
"ò
#ò$ò#ò
$ò#ò	#ò
#ò"ò
#ò"ò"ò
#ò#ò"ò
"ò#ò"ò
$ó#r   rD  c                   ó&   — e Zd Zd„ Zdd„Zd„ Zd„ Zy)ÚSubscriptionRegistrationTestsc                 ó   — ddl m} |S )Nr   rÃ  )rr   rÄ  )r   rÄ  s     r   r   z-SubscriptionRegistrationTests._getTargetClass#  s   € ÝDØ'Ð'r   Nc                 ó°   — ddl m}  G d„ d|«      } |d«      } |d«      } G d„ d«      } |«       }d}d	}	| j                  «       }
 |
||f||||	«      ||fS )
Nr   rh   c                   ó   — e Zd Zy)ú4SubscriptionRegistrationTests._makeOne.<locals>.IFooNrG   r&   r   r   rJ   rˆ  *  rK   r   rJ   rÔ   c                   ó   — e Zd Zd„ Zy)ú9SubscriptionRegistrationTests._makeOne.<locals>._Registryc                  ó   — yrÍ  r&   r   s    r   rÏ  zBSubscriptionRegistrationTests._makeOne.<locals>._Registry.__repr__/  rÐ  r   NrÑ  r&   r   r   rÒ  rŠ  .  rÓ  r   rÒ  r   rÔ  rÕ  rL  s              r   r   z&SubscriptionRegistrationTests._makeOne'  rM  r   c                 óJ   — ddl m} ddlm}  ||| j	                  «       «       y )Nr   rÙ  ©Ú ISubscriptionAdapterRegistration)rÝ  rÚ  rq   rŽ  r   )r   rÚ  rŽ  s      r   Ú7test_class_conforms_to_ISubscriptionAdapterRegistrationzUSubscriptionRegistrationTests.test_class_conforms_to_ISubscriptionAdapterRegistration:  s   € Ý5ÝNÙÐ4°d×6JÑ6JÓ6LÕMr   c                 óV   — ddl m} ddlm} | j	                  «       \  }}} |||«       y )Nr   rá  r�  )rÝ  râ  rq   rŽ  r   )r   râ  rŽ  Úsarrä  s        r   Ú:test_instance_conforms_to_ISubscriptionAdapterRegistrationzXSubscriptionRegistrationTests.test_instance_conforms_to_ISubscriptionAdapterRegistration?  s$   € Ý6ÝNØ—]‘]“_‰	ˆˆQ�ÙÐ5°sÕ;r   r   )r)   rH   rI   r   r   r�  r’  r&   r   r   r„  r„  !  s   „ ò(óò&Nó
<r   r„  c                   ó8   — e Zd Zd„ Zd	d„Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)
ÚHandlerRegistrationTestsc                 ó   — ddl m} |S )Nr   r5  )rr   r6  )r   r6  s     r   r   z(HandlerRegistrationTests._getTargetClassH  rÅ  r   Nc                 óž   — ddl m}  G d„ d|«      } |d«      } G d„ d«      } |«       }d}d}| j                  «       }	 |	||f|||«      ||fS )	Nr   rh   c                   ó   — e Zd Zy)ú/HandlerRegistrationTests._makeOne.<locals>.IFooNrG   r&   r   r   rJ   r˜  O  rK   r   rJ   c                   ó   — e Zd Zd„ Zy)ú4HandlerRegistrationTests._makeOne.<locals>._Registryc                  ó   — yrÍ  r&   r   s    r   rÏ  z=HandlerRegistrationTests._makeOne.<locals>._Registry.__repr__S  rÐ  r   NrÑ  r&   r   r   rÒ  rš  R  rÓ  r   rÒ  r   rÔ  rÕ  )
r   r_   rD   rJ   rU   rÒ  r   r   rÖ  r×  s
             r   r   z!HandlerRegistrationTests._makeOneL  sg   € Ý>ô	�>ô 	á�F‹|ˆ÷	#ñ 	#ñ “;ˆØˆØˆØ×$Ñ$Ó&ˆÙ�h  ¨¨y¸#Ó>ØØðð 	r   c                 óJ   — ddl m} ddlm}  ||| j	                  «       «       y )Nr   rÙ  ©ÚIHandlerRegistration)rÝ  rÚ  rq   rž  r   )r   rÚ  rž  s      r   Ú+test_class_conforms_to_IHandlerRegistrationzDHandlerRegistrationTests.test_class_conforms_to_IHandlerRegistration^  rß  r   c                 óV   — ddl m} ddlm} | j	                  «       \  }}} |||«       y )Nr   rá  r�  )rÝ  râ  rq   rž  r   )r   râ  rž  Úhrrä  s        r   Ú.test_instance_conforms_to_IHandlerRegistrationzGHandlerRegistrationTests.test_instance_conforms_to_IHandlerRegistrationc  ræ  r   c                 óö   — d„ }| j                  |«      \  }}}| j                  |j                  |u «       | j                  |j                  |j                  u «       | j                  |j                  d u «       y )Nc                 ó   — t        «       ‚r   rZ   rf  s    r   r\   z:HandlerRegistrationTests.test_properties.<locals>._factoryj  r]   r   )r   r+   Úhandlerr`   rv   )r   r\   r¡  rä  s       r   Útest_propertiesz(HandlerRegistrationTests.test_propertiesi  s^   € ò	(à—M‘M (Ó+‰ˆˆAˆqØ�‰˜Ÿ
™
 hÐ.Ô/Ø�‰˜Ÿ
™
 b§j¡jÐ0Ô1Ø�‰˜Ÿ™ tÐ+Õ,r   c                 óˆ   —  G d„ d«      }| j                   |«       «      \  }}}| j                  t        |«      d|z  «       y )Nc                   ó   — e Zd ZdZ y)úGHandlerRegistrationTests.test___repr___factory_w_name.<locals>._Factoryrê  NrG   r&   r   r   rp  r©  r  rì  r   rp  ú=HandlerRegistration(_REGISTRY, [IFoo], %r, TEST, 'DOCSTRING')r9   ©r   rp  r¡  rï  rw   s        r   Útest___repr___factory_w_namez5HandlerRegistrationTests.test___repr___factory_w_nameq  sD   € ÷	ñ 	à $§¡©h«jÓ 9ÑˆˆI�uØ×Ñœ˜b›ðØ %ñ'õ	(r   c                 óˆ   —  G d„ d«      }| j                   |«       «      \  }}}| j                  t        |«      d|z  «       y )Nc                   ó   — e Zd Zd„ Zy)úHHandlerRegistrationTests.test___repr___factory_wo_name.<locals>._Factoryc                  ó   — yrô  r&   r   s    r   rÏ  zQHandlerRegistrationTests.test___repr___factory_wo_name.<locals>._Factory.__repr__{  rõ  r   NrÑ  r&   r   r   rp  r¯  z  rö  r   rp  rª  r9   r«  s        r   Útest___repr___factory_wo_namez6HandlerRegistrationTests.test___repr___factory_wo_namey  sF   € ÷	ñ 	ð !%§¡©h«jÓ 9ÑˆˆI�uØ×Ñœ˜b›ðØ %ñ'õ	(r   r   )
r)   rH   rI   r   r   rŸ  r¢  r¦  r¬  r±  r&   r   r   r”  r”  F  s&   „ ò#óò$Bò
/ò-ò(ó(r   r”  c                   ó   — e Zd Zd„ Zd„ Zy)ÚPersistentAdapterRegistryc                 óà   — | j                   j                  «       }t        |«      D ]3  }|| j                  v s|j	                  d«      sŒ#|j                  |«       Œ5 |j                  dd «       |S )NÚ_vÚro)Ú__dict__ÚcopyrÈ   Ú
_delegatedÚ
startswithÚpop)r   ÚstateÚks      r   Ú__getstate__z&PersistentAdapterRegistry.__getstate__„  s^   € Ø—‘×"Ñ"Ó$ˆÜ�e“ò 	ˆAØ�D—O‘OÑ# q§|¡|°DÕ'9Ø—	‘	˜!•ð	ð 	�	‰	�$˜ÔØˆr   c                 óÂ   — |j                  dd«      }| j                  j                  |«       | j                  «        || _        | j
                  j                  | «       y )Nr*   r&   )r»  r·  ÚupdateÚ_createLookupr*   r„  rƒ  )r   r¼  Úbasess      r   Ú__setstate__z&PersistentAdapterRegistry.__setstate__Œ  sI   € Ø—	‘	˜+ rÓ*ˆØ�‰×Ñ˜UÔ#Ø×ÑÔØˆŒØ�‰×Ñ˜tÕ$r   N)r)   rH   rI   r¾  rÃ  r&   r   r   r³  r³  ‚  s   „ òó%r   r³  c                   ó   — e Zd Zd„ Zy)ÚPersistentComponentsc                 ó@   — t        «       | _        t        «       | _        y r   )r³  r-   r.   r   s    r   Ú_init_registriesz%PersistentComponents._init_registries—  s   € Ü1Ó3ˆŒÜ2Ó4ˆ�r   N)r)   rH   rI   rÇ  r&   r   r   rÅ  rÅ  “  s   „ ó5r   rÅ  c                   ó   — e Zd Zy)ÚPersistentDictComponentsNrG   r&   r   r   rÉ  rÉ  ›  s   „ àr   rÉ  c                   ó   — e Zd Zd„ Zy)ÚPersistentComponentsDictc                 óZ   — t         j                  | «       t        j                  | |«       y r   )r¾   r  rÅ  )r   r   s     r   r  z!PersistentComponentsDict.__init__¢  s   € Ü�‰�dÔÜ×%Ñ% d¨DÕ1r   Nrô  r&   r   r   rË  rË     s   „ ó2r   rË  c                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚTestPersistentComponentsc                 ó   — t        d«      S )Nr¼  )rÅ  r   s    r   r   z!TestPersistentComponents._makeOne¨  s   € Ü# FÓ+Ð+r   c                  ó   — y r   r&   ©r   Úmades     r   Ú_check_equality_after_picklez5TestPersistentComponents._check_equality_after_pickle«  s   € Ør   c                 óÆ   — dd l }| j                  «       }|j                  |«       |j                  |j                  |«      «      }| j	                  |j
                  d«       y ©Nr   r¼  )Úpickler   ÚdumpsÚloadsr(   r)   )r   rÖ  r3   Úcomp2s       r   Útest_pickles_emptyz+TestPersistentComponents.test_pickles_empty®  sG   € ÛØ�}‰}‹ˆØ�‰�TÔØ—‘˜VŸ\™\¨$Ó/Ó0ˆà×Ñ˜Ÿ™¨Õ0r   c                 ó  — dd l }| j                  «       }t        «       }|j                  |t        «       | j                  ||j                  t        «      «       |j                  |j                  |«      «      }| j                  |j                  d«       | j                  |j                  t        «      «       |j                  |t        «       | j                  ||j                  t        «      «       | j                  |«       y rÕ  )rÖ  r   ra   rT   r   r  r?  rØ  r×  r(   r)   ÚassertIsNotNonerÓ  )r   rÖ  r3   ÚutilityrÙ  s        r   Ú&test_pickles_with_utility_registrationz?TestPersistentComponents.test_pickles_with_utility_registration¶  sÓ   € ÛØ�}‰}‹ˆÜ“(ˆØ×ÑØÜô	ð 	�‰�gØ—o‘o¤iÓ0ô	2ð —‘˜VŸ\™\¨$Ó/Ó0ˆØ×Ñ˜Ÿ™¨Ô0ð 	×Ñ˜U×-Ñ-¬iÓ8Ô9ð 	×ÑØÜô	ð 	�‰�gØ×&Ñ&¤yÓ1ô	3ð 	×)Ñ)¨%Õ0r   N)r)   rH   rI   r   rÓ  rÚ  rÞ  r&   r   r   rÎ  rÎ  ¦  s   „ ò,òò1ó1r   rÎ  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestPersistentDictComponentsc                 ó   — t         S r   )rÉ  r   s    r   r   z,TestPersistentDictComponents._getTargetClassÓ  ó   € Ü'Ð'r   c                 ó>   —  | j                  «       d¬«      }d|d<   |S )Nr¼  r  é*   r$  r   r;   s     r   r   z%TestPersistentDictComponents._makeOneÖ  s%   € Ø%ˆt×#Ñ#Ó%¨6Ô2ˆØˆˆU‰Øˆr   c                 óR   — | j                  d|«       | j                  |d   d«       y )Nr$  rä  )r­  r(   rÑ  s     r   rÓ  z9TestPersistentDictComponents._check_equality_after_pickleÛ  s$   € Ø�‰�e˜TÔ"Ø×Ñ˜˜e™ bÕ)r   N)r)   rH   rI   r   r   rÓ  r&   r   r   rà  rà  Ñ  s   „ ò(òó
*r   rà  c                   ó   — e Zd Zd„ Zy)ÚTestPersistentComponentsDictc                 ó   — t         S r   )rË  r   s    r   r   z,TestPersistentComponentsDict._getTargetClassá  râ  r   N)r)   rH   rI   r   r&   r   r   rç  rç  ß  s   „ ó(r   rç  c                   ó   — e Zd Zd„ Zd„ Zd„ Zy)r    c                 ó¦   — || _         |D �ci c]  }|t        ||«      “Œ c}| _        |j                  «       D ]  \  }}t	        |||«       Œ y c c}w r   )ÚmoduleÚgetattrÚ
to_restoreÚitemsÚsetattr)r   rë  r   r$  Úvalues        r   r  z_Monkey.__init__æ  sR   € ØˆŒØ@BÖC¸˜3¤¨°Ó 4Ñ4ÒCˆŒØŸ(™(›*ò 	(‰JˆC�Ü�F˜C Õ'ñ	(ùò Ds   ŒAc                 ó   — | S r   r&   r   s    r   Ú	__enter__z_Monkey.__enter__ì  s   € Øˆr   c                 óv   — | j                   j                  «       D ]  \  }}t        | j                  ||«       Œ y r   )rí  rî  rï  rë  )r   Úexc_typeÚexc_valÚexc_tbr$  rð  s         r   Ú__exit__z_Monkey.__exit__ï  s2   € ØŸ/™/×/Ñ/Ó1ò 	-‰JˆC�Ü�D—K‘K  eÕ,ñ	-r   N)r)   rH   rI   r  rò  r÷  r&   r   r   r    r    ä  s   „ ò(òó-r   r    )r•  Úunittestr   r   r'   r   rr   r   ÚTestCaser	   r¾  rÃ  rD  r„  r”  r³  rÅ  r¾   rÉ  rË  rÎ  rà  rç  r    r&   r   r   ú<module>rú     sø   ðñ ã å $Ý ;å .ôo%K�h×'Ñ'ô o%KôdK ô ôw#˜x×0Ñ0ô w#ôtN#˜x×0Ñ0ô N#ôb"< H×$5Ñ$5ô "<ôJ:(˜x×0Ñ0ô :(ôx%Ð 8ô %ô"5˜:ô 5ô	Ð3°Tô 	ô
2˜tÐ%9ô 2ô(1˜x×0Ñ0ô (1ôV*Ð#;ô *ô(Ð#?ô (÷
-ò -r   