ó
    ð›‘h†  ã                   ó8  • S SK r \ R                  R                  SS5      (       au  S SKJr  S SKJr  S SKJr  S SK	J
r
  S SKJr   " S	 S
\R                  5      r " S S\5      r " S S\5      r " S S\5      r " S S\5      r " S S\R&                  5      rgg)é    NÚUSE_TWISTEDF)Úsleep)Úwamp)Úunittest)Údefer)Úservicec                   ó*   • \ rS rSrSrS rS rS rSrg)ÚCaseComponenté%   z½
Application code goes here. This is an example component that calls
a remote procedure on a WAMP peer, subscribes to a topic to receive
events, and then stops the world after some events.
c                 ó”   • [         R                  R                  X5        UR                  S   U l        SU l        SU l        SU l        g )NÚtestFé   )r   ÚApplicationSessionÚ__init__Úextrar   ÚstopÚ_loglineÚfinished)ÚselfÚconfigs     ÚjC:\Users\psant\Downloads\Noiseback\school\venv\Lib\site-packages\autobahn/wamp/test/test_wamp_component.pyr   ÚCaseComponent.__init__,   s;   € Ü×#Ñ#×,Ñ,¨TÔ:ØŸ™ VÑ,ˆDŒIØˆDŒIØˆDŒMØ!ˆD�Mó    c                 ó$  • [        U5      S:”  a  SR                  S U 5       5      nO[        U5      S:X  a  US   nOSnSR                  U R                  U R                  R
                  U5      nU =R                  S-  sl        [        U5        g )Nr   z, c              3   ó8   #   • U  H  n[        U5      v •  M     g 7f©N)Ústr)Ú.0Úss     r   Ú	<genexpr>Ú$CaseComponent.log.<locals>.<genexpr>5   s   é € Ð!7²$¨Q¤# a§& &²$ùs   ‚r   Ú-z= : {0:>3} : {1:<20} : {2})ÚlenÚjoinÚformatr   Ú	__class__Ú__name__Úprint)r   ÚargsÚsargsÚmsgs       r   ÚlogÚCaseComponent.log3   sr   € Ü�4‹y˜1‹}ØŸ	™	Ñ!7±$Ó!7Ó7‘Ü�T“˜a“Ø˜Q™‘à�à.×5Ñ5°d·m±mÀTÇ^Á^×E\ÑE\Ð^cÓdˆCØ�MŠM˜QÑ�MÜ�#�Jr   c                 ó–   • U R                   (       d-  U R                  R                  R                  S 5        SU l         g [	        S5        g )NTzalready finished)r   r   ÚdeferredÚcallbackr(   ©r   s    r   ÚfinishÚCaseComponent.finish?   s1   € Ø—=—=Ø—	‘	×"Ñ"×+Ñ+¨DÔ1Ø $�•äÐ(Õ)r   )r   r   r   r   N)	r'   Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r,   r2   Ú__static_attributes__© r   r   r
   r
   %   s   † ñ	ò	"ò
	õ	*r   r
   c                   ó8   • \ rS rSr\R
                  S 5       rSrg)ÚCase1_BackendéF   c              #   ó¦   ^ #   • T R                  S5        U 4S jnT R                  US5      v •  T R                  S5        T R                  5         g 7f)NÚjoinedc                 óL   >• TR                  SR                  X5      5        X-   $ )Nzadd2 invoked: {0}, {1}©r,   r%   )ÚxÚyr   s     €r   Úadd2Ú"Case1_Backend.onJoin.<locals>.add2M   s"   ø€ Ø—‘Ð1×8Ñ8¸Ó>Ô?Ø‘u�r   úcom.mathservice.add2zadd2 registered)r,   Úregisterr2   )r   ÚdetailsrC   s   `  r   ÚonJoinÚCase1_Backend.onJoinH   sC   øé € ð �H‰H�XÔõð —-‘- Ð&<Ó=Ò=Ø�H‰HÐ&Ô'à�K‰K�Mùs   ƒAAr9   N©r'   r4   r5   r6   r   ÚinlineCallbacksrH   r8   r9   r   r   r;   r;   F   ó   † à	×	Ñ	ñ	ó 
ó	r   r;   c                   ó8   • \ rS rSr\R
                  S 5       rSrg)ÚCase1_FrontendéV   c              #   ó(  #   • U R                  S5         U R                  SSS5      v •nU R                  SR                  U5      5        U R	                  5         g ! [         a*  nU R                  SR                  U5      5         S nAN@S nAff = f7f)Nr>   rE   é   é   zcall result: {0}zcall error: {0})r,   Úcallr%   Ú	Exceptionr2   )r   rG   ÚresÚes       r   rH   ÚCase1_Frontend.onJoinX   s}   é € ð �H‰H�XÔð9Ø ŸI™IÐ&<¸aÀÓCÑC�ð —‘Ð+×2Ñ2°3Ó7Ô8à�K‰K�Møô ó 6Ø—‘Ð*×1Ñ1°!Ó4×5Ñ5ûð6üs-   ‚B•A ª1BÁ
BÁ% B
ÂBÂ
BÂBr9   NrJ   r9   r   r   rN   rN   V   rL   r   rN   c                   ó8   • \ rS rSr\R
                  S 5       rSrg)ÚCase2_Backendéf   c              #   ó^  ^ #   • T R                  S5        U 4S jnU 4S jnSU 4S jjnSU 4S jjnU 4S jnT R                  US5      v •  T R                  US5      v •  T R                  US	5      v •  T R                  US
5      v •  T R                  US5      v •  T R                  S5        g 7f)Nr>   c                  ó(   >• T R                  S5        g )Nzping() is invoked©r,   r1   s   €r   ÚpingÚ"Case2_Backend.onJoin.<locals>.pingm   s   ø€ Ø—‘Ð,Ô-Ør   c                 ó0   >• TR                  SX5        X-   $ )Nzadd2() is invokedr]   )ÚaÚbr   s     €r   rC   Ú"Case2_Backend.onJoin.<locals>.add2q   s   ø€ Ø—‘Ð,¨aÔ3Ø‘u�r   c                 óJ   >• TR                  SX5        SR                  X5      $ )Nzstars() is invokedz{0} starred {1}xr@   )ÚnickÚstarsr   s     €r   rf   Ú#Case2_Backend.onJoin.<locals>.starsu   s#   ø€ Ø—‘Ð-¨tÔ;Ø)×0Ñ0°Ó=Ð=r   c                 óŽ   >• TR                  SX5        [        S5       Vs/ s H  nSR                  U5      PM     snS U $ s  snf )Nzorders() is invokedé2   zProduct {0})r,   Úranger%   )ÚproductÚlimitÚir   s      €r   ÚordersÚ$Case2_Backend.onJoin.<locals>.ordersy   s@   ø€ Ø—‘Ð.°Ô?Ü9>¸r¼ÓCº°A˜×,Ñ,¨QÖ/¹ÑCÀFÀUÐKÐKùÒCs   ¡Ac                  óT   >• TR                  SX5        [        U 5      [        U5      /$ )Nzarglen() is invoked)r,   r#   )r)   Úkwargsr   s     €r   ÚarglenÚ$Case2_Backend.onJoin.<locals>.arglen}   s%   ø€ Ø—‘Ð.°Ô=Ü˜D›	¤3 v£;Ð/Ð/r   úcom.arguments.pingúcom.arguments.add2úcom.arguments.starsúcom.arguments.ordersúcom.arguments.arglenzprocedures registered)Úsomebodyr   )é   )r,   rF   )r   rG   r^   rC   rf   rn   rr   s   `      r   rH   ÚCase2_Backend.onJoinh   s—   øé € ð �H‰H�XÔõõ÷>÷Lõ0ð —-‘- Ð&:Ó;Ò;Ø—-‘- Ð&:Ó;Ò;Ø—-‘- Ð'<Ó=Ò=Ø—-‘- Ð(>Ó?Ò?Ø—-‘- Ð(>Ó?Ò?à�H‰HÐ,Õ-ùs   ƒB*B-r9   NrJ   r9   r   r   rY   rY   f   s   † à	×	Ñ	ñ	.ó 
ó	.r   rY   c                   ó8   • \ rS rSr\R
                  S 5       rSrg)ÚCase2_Frontendé‰   c           
   #   óF  #   • U R                  S5        [        S5      v •  U R                  S5      v •  U R                  S5        U R                  SSS5      v •nU R                  SR                  U5      5        U R                  S	5      v •nU R                  S
R                  U5      5        U R                  S	SS9v •nU R                  SR                  U5      5        U R                  S	SS9v •nU R                  SR                  U5      5        U R                  S	SSS9v •nU R                  SR                  U5      5        U R                  SS5      v •nU R                  SR                  U5      5        U R                  SSSS9v •nU R                  SR                  U5      5        U R                  S5      v •nU R                  SR                  U5      5        U R                  SSSS5      v •nU R                  SR                  U5      5        U R                  SSSSS9v •nU R                  SR                  U5      5        U R                  SSSSSSSS9v •nU R                  SR                  U5      5        U R                  S5        U R	                  5         g 7f)Nr>   r   rt   zPinged!ru   rQ   rR   z	Add2: {0}rv   zStarred 1: {0}ÚHomer)re   zStarred 2: {0}rz   )rf   zStarred 3: {0})re   rf   zStarred 4: {0}rw   ÚcoffeezOrders 1: {0}é
   )rl   zOrders 2: {0}rx   zArglen 1: {0})ra   rb   ÚczArglen 2: {0}zArglen 3: {0}Ú	finishing)r,   r   rS   r%   r2   )r   rG   rU   Ústarredrn   Ú
arglengthss         r   rH   ÚCase2_Frontend.onJoin‹   sM  é € ð �H‰H�XÔä˜“(ŠNà—)‘)Ð0Ó1Ò1Ø�H‰H�YÔàŸ	™	Ð"6¸¸1Ó=Ñ=ˆCØ�H‰H�[×'Ñ'¨Ó,Ô-à ŸI™IÐ&;Ó<Ñ<ˆGØ�H‰HÐ%×,Ñ,¨WÓ5Ô6à ŸI™IÐ&;À'˜IÐJÑJˆGØ�H‰HÐ%×,Ñ,¨WÓ5Ô6à ŸI™IÐ&;À1˜IÐEÑEˆGØ�H‰HÐ%×,Ñ,¨WÓ5Ô6à ŸI™IÐ&;À'ÐQR˜IÐSÑSˆGØ�H‰HÐ%×,Ñ,¨WÓ5Ô6àŸ9™9Ð%;¸XÓFÑFˆFØ�H‰H�_×+Ñ+¨FÓ3Ô4àŸ9™9Ð%;¸XÈR˜9ÐPÑPˆFØ�H‰H�_×+Ñ+¨FÓ3Ô4à#Ÿy™yÐ)?Ó@Ñ@ˆJØ�H‰H�_×+Ñ+¨JÓ7Ô8à#Ÿy™yÐ)?ÀÀAÀqÓIÑIˆJØ�H‰H�_×+Ñ+¨JÓ7Ô8à#Ÿy™yÐ)?À1ÈÈQ˜yÐOÑOˆJØ�H‰H�_×+Ñ+¨JÓ7Ô8à#Ÿy™yÐ)?ÀÀAÀqÈAÐQRÐVW˜yÐXÑXˆJØ�H‰H�_×+Ñ+¨JÓ7Ô8à�H‰H�[Ô!à�K‰K�Mùs   ‚JJ!r9   NrJ   r9   r   r   r}   r}   ‰   s   † à	×	Ñ	ñ,	ó 
ó,	r   r}   c                   óÂ   • \ rS rSr\R
                  R                  S5      c  SrS r\	R                  S 5       r\	R                  S 5       r\	R                  S 5       rS	rg)
ÚTestRpcéº   ÚWAMP_ROUTER_URLNz`Please provide WAMP_ROUTER_URL environment with url to WAMP router to run WAMP integration testsc                 óZ   • [         R                  R                  S5      U l        SU l        g )Nr‹   Úrealm1)ÚosÚenvironÚgetÚurlÚrealmr1   s    r   ÚsetUpÚTestRpc.setUpÀ   s   € Ü—z‘z—~‘~Ð&7Ó8ˆDŒHØ!ˆD�Jr   c              #   ó^  #   • [         R                  " 5       U l        [        R                  " 5       nU HF  n[
        R                  " U R                  [        U S9U R                  US9nUR                  U5        MH     UR                  5         U R                  v •  UR                  5         g 7f)N)r   )r‘   r   r’   Úmake)r   ÚDeferredr/   r   ÚMultiServicer   ÚServicer‘   Údictr’   ÚsetServiceParentÚstartServiceÚstopService)r   Ú
componentsÚappÚ	componentrƒ   s        r   Ú
runOneTestÚTestRpc.runOneTestÄ   sƒ   é € ä!ŸNšNÓ,ˆDŒMÜ×&Ò&Ó(ˆCÛ'�	Ü—L’LØŸ™Ü D™/ØŸ*™*Ø"ñ	�ð ×"Ñ" 3Ö'ñ (ð ×ÑÔØ—-‘-ÒØ�O‰OÕùs   ‚B+B-c              #   óF   #   • U R                  [        [        /5      v •  g 7fr   )r¡   r;   rN   r1   s    r   Ú
test_case1ÚTestRpc.test_case1Õ   ó   é € à—/‘/¤=´.Ð"AÓBÓBùó   ‚!c              #   óF   #   • U R                  [        [        /5      v •  g 7fr   )r¡   rY   r}   r1   s    r   Ú
test_case2ÚTestRpc.test_case2Ù   r¦   r§   )r/   r’   r‘   )r'   r4   r5   r6   rŽ   r�   r�   Úskipr“   r   rK   r¡   r¤   r©   r8   r9   r   r   r‰   r‰   º   su   † à�:‰:�>‰>Ð+Ó,Ñ4ð@ˆDò	"ð 
×	Ñ	ñ	ó 
ð	ð  
×	Ñ	ñ	Có 
ð	Cð 
×	Ñ	ñ	Có 
ó	Cr   r‰   )rŽ   r�   r�   Úautobahn.twisted.utilr   Úautobahn.twistedr   Útwisted.trialr   Útwisted.internetr   Útwisted.applicationr   r   r
   r;   rN   rY   r}   ÚTestCaser‰   r9   r   r   Ú<module>r²      s�   ðó6 
à‡:�:‡>�>�- ×'Ñ'Ý+Ý%å&Ý&Ý+ô*˜×/Ñ/ô *ôB˜ô ô ˜ô ô !.˜ô !.ôF/˜ô /ôb!C�(×#Ñ#õ !Cð{ (r   