+
    ö–¦jN	  c                   óF  € ^ RI t^ RIHu Ht ^ RIHt ^ RIt^ RI	H
t
 ]P                  P                  R
. RO4      R 4       t]P                  P                  R. RO4      R 4       tR t]P                  P                   R 4       t]P                  P                   R	 4       tR# )é    N©ÚSimpleNamespace)ÚHTTPExceptionÚrawc                 óØ  € ^ RI Hp V! V 4      q3V8H  qD'       EgM   \        P                  ! RV3RW134      RR\        P
                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRRR\        P
                  ! 4       9   g   \        P                  ! V 4      '       d   \        P                  ! V 4      MRR\        P                  ! V4      RR\        P
                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MR/,          pR	R
V/,          p\        \        P                  ! V4      4      hR;r4R# )r   )Únormalize_pon_portÚpy0r   Úpy1r   Úpy3Úpy5Úexpectedúassert %(py7)sÚpy7N©ú==)z0%(py3)s
{%(py3)s = %(py0)s(%(py1)s)
} == %(py5)s)
Ú app.core.cdata_fd1601s_discoveryr   Ú
@pytest_arÚ_call_reprcompareÚ@py_builtinsÚlocalsÚ_should_repr_global_nameÚ	_safereprÚAssertionErrorÚ_format_explanation)r   r   r   Ú@py_assert2Ú@py_assert4Ú@py_format6Ú@py_format8s   &&     ÚBC:\Users\MF Sangadji\bestweb\tests\test_cdata_auto_sn_discovery.pyÚ"test_cdata_pon_input_normalizationr      s¶   € õ
 Dá˜cÓ"Ð. hÑ.×.×.×.Ô.Ð"×.×.×.×.×.×.Ð×.×.×.Ò.Ð×.×.×.×.×.×.Ð.˜c×.×.×.Ò.˜c×.×.Ö.Ð"×.×.×.×.×.Ö. h×.×.×.Ò. h×.×.×.×.×.×.×.Ô.ó    c                 óœ   € ^ RI HpHp \        P                  ! V4      ;_uu_ 4        V! V 4       RRR4       R#   + '       g   i     R# ; i)r   )ÚInvalidPonPortErrorr   N)r   r"   r   ÚpytestÚraises)r   r"   r   s   &  r   Ú0test_cdata_pon_input_rejects_command_like_valuesr%      s,   € çXä	�ŠÐ*×	+Õ	+Ù˜3Ô÷ 
,×	+×	+Ò	+ús	   §	:ºA	c                  ó¬   € ^ RI Hp Hp \        P                  ! V RR7      ;_uu_ 4        V! R^RRRRR	7       RRR4       R#   + '       g   i     R# ; i)
r   ©ÚDiscoveryUnavailableErrorÚdiscover_unregistered_ontszhost key)Úmatchz	192.0.2.1ÚreadonlyÚunusedNú0/0/1)ÚhostÚportÚusernameÚencrypted_secretÚpinned_host_keyÚpon_port)r   r(   r)   r#   r$   r'   s     r   Ú=test_cdata_discovery_is_fail_closed_without_a_pinned_host_keyr4      sA   € ÷ô
 
�ŠÐ0¸
×	CÖ	CÙ"Ø 2°
ÈXØ ¨7õ	
÷ 
D×	C×	CÒ	Cús   ©AÁA	c            	   ƒ   óô  "  € ^ RI Hp   ! R R4      pV ! ^RV! 4       4      G Rj  x€L
 pVP                  pRqCV8H  qU'       gÇ   \        P                  ! RV3RW434      RR\
        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rTVP                  pRqCV8H  qU'       gÈ   \        P                  ! RV3RVV34      RR\
        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;rTR#  ELÐ5i)r   ©Úauto_sn_discoveryc                   ó&   a € ] tR t^*t o R tRtV tR# )ÚTtest_auto_sn_api_validates_olt_and_returns_no_results_when_not_ready.<locals>.FakeDBc           	   “  ó¬  "  € ^q2V8H  qD'       g±   \         P                  ! RV3RW#34      RR\        P                  ! 4       9   g   \         P                  ! V4      '       d   \         P
                  ! V4      MRR\         P
                  ! V4      /,          pRRV/,          p\        \         P                  ! V4      4      hR;rC\        ^RRR	R
RR7      # 5i)é   r   Ú	device_idr
   zassert %(py5)sr   NzOLT-TERNATE-01zC-DATAz
FD1601S-B1T)ÚidÚnameÚvendorÚmodelÚ	is_activeÚcredential_idr   )z%(py0)s == %(py3)s)	r   r   r   r   r   r   r   r   r   )Úselfr@   r<   r   Ú@py_assert1Ú@py_format4r   s   &&&    r   ÚgetÚXtest_auto_sn_api_validates_olt_and_returns_no_results_when_not_ready.<locals>.FakeDB.get+   s�   é € Ø !Ð! ‘>×!×!×!Ó!�9×!×!×!×!×!×!�9×!×!×!Ò!�9×!×!Ö! ×!×!×!×!×!×!×!Ð!Ü"ØØ%ØØ"ØØ"ôð ùs   ‚ACÁ!A3C© N©Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rF   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r   ÚFakeDBr9   *   s   ø‡ € ÷		ð 		r    rR   ú
GPON 0/0/1Ni÷  r   ÚresponseÚpy2r   r   r   st   {"available":false,"results":[],"olt_device_id":7,"pon_port":"0/0/1","reason":"Credential Vault OLT belum terikat."}r   )z3%(py2)s
{%(py2)s = %(py0)s.status_code
} == %(py5)s)z,%(py2)s
{%(py2)s = %(py0)s.body
} == %(py5)s)Úapp.routes.customersr7   Ústatus_coder   r   r   r   r   r   r   r   Úbody)r7   rR   rT   rD   r   Ú@py_assert3r   r   s           r   ÚDtest_auto_sn_api_validates_olt_and_returns_no_results_when_not_readyrZ   &   sn  é € å6÷
ñ 
ñ ' q¨,¹»ÓA×A€Hà×ÑÐ& 3Ð& 3Ñ&×&×&×&Ó&Ð×&×&×&×&×&×&ˆ8×&×&×&Ò&ˆ8×&×&Ö&Ð×&×&Ô& 3×&×&×&×&×&×&×&Ò&Ø�=‰=ð ð	;ðð	;ñ÷ ô ïé ôˆ=ð	;÷ó ïé ÷ö ïé ðˆ8÷ ÷ ïé ðˆ8÷ ó ïé ðˆ=÷ ñ ïé ðð	;÷÷ ÷ ÷ ð ïé ÷÷ ñ ò Bùs   ‚#G8¥G5¦A-G8ÂC$G8Å9A=G8c               ƒ   óî  "  € ^ RI Hp   ! R R4      p\        P                  ! \        4      ;_uu_ 4       pV ! ^RV! 4       4      G Rj  x€L
  RRR4       XP
                  q3P                  pRqTV8H  qf'       gÝ   \        P                  ! RV3RWE34      RR\        P                  ! 4       9   g   \        P                  ! V4      '       d   \        P                  ! V4      MRR	\        P                  ! V4      R
\        P                  ! V4      R\        P                  ! V4      /,          pRRV/,          p\        \        P                  ! V4      4      hR;p;p;reR#  EL  + '       g   i     EL; i5i)r   r6   c                   ó&   a € ] tR t^Ct o R tRtV tR# )Ú@test_auto_sn_api_rejects_a_non_cdata_fd1601s_olt.<locals>.FakeDBc              “  ó(   "  € \        VR RRR7      # 5i)ÚZTEÚC320T)r=   r?   r@   rA   r   )rC   r@   r<   s   &&&r   rF   ÚDtest_auto_sn_api_rejects_a_non_cdata_fd1601s_olt.<locals>.FakeDB.getD   s   é € Ü" i¸ÀVÐW[Ô\Ð\ùs   ‚rH   NrI   rP   s   @r   rR   r]   C   s   ø‡ € ÷	]ð 	]r    rR   r-   Ni™  r   ÚexcrU   Úpy4r   zassert %(py9)sÚpy9r   )zN%(py4)s
{%(py4)s = %(py2)s
{%(py2)s = %(py0)s.value
}.status_code
} == %(py7)s)rV   r7   r#   r$   r   ÚvaluerW   r   r   r   r   r   r   r   r   )	r7   rR   rb   rD   rY   Ú@py_assert6Ú@py_assert5r   Ú@py_format10s	            r   Ú0test_auto_sn_api_rejects_a_non_cdata_fd1601s_oltri   ?   sÚ   é € å6÷]ñ ]ô 
�Š”}×	%Ô	%¨Ù  7©F«HÓ5×5Ð5÷ 
&ð �9‰9Ð'× Ñ Ð' CÐ' CÑ'×'×'×'Ó'Ð ×'×'×'×'×'×'ˆ3×'×'×'Ò'ˆ3×'×'Ö'ˆ9×'×'Ô'Ð ×'×'Ô' C×'×'×'×'×'×'×'Ö'ò 	6÷ 
&×	%Ð	%üs6   ‚3E5µE!ÁEÁ	E!ÁA<E5Ã
BE5ÅE!Å!E2	Å,	E5)r   r   ))r-   r-   )rS   r-   )Ú1r-   )Ú z1;show running-configz	1/1/1
fooz1/1/1 --all)Úbuiltinsr   Ú_pytest.assertion.rewriteÚ	assertionÚrewriter   Útypesr   r#   Úfastapir   ÚmarkÚparametrizer   r%   r4   ÚasynciorZ   ri   rH   r    r   Ú<module>ru      s¤   ðß  „ Õ !ã Ý !ð ‡�×ÑØÚAóñ/ó	ð/ð ‡�×Ñ˜Ò ZÓ[ñ ó \ð ò

ð ‡�×Ññó ðð0 ‡�×Ññ
(ó ò
(r    