Ë
    dQêj¹F  ã                   óh   — d dl Z d dlZd dlmZ d dlmZmZmZmZ d dl	Z
d dlmZ d„ Z G d„ de«      Zy)é    N)ÚIsolatedAsyncioTestCase)Ú	AsyncMockÚMockÚcallÚcreate_autospec)ÚWatchc               �   ó   K  — y ­w)N© )ÚargsÚkwargss     úd/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/kubernetes/aio/watch/watch_test.pyÚ_watch_operationr      s	   è ø€ Øùs   ‚c                   ól   — e 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)Ú	WatchTestc              ƒ   ó^  K  — t        «       }t        «       |j                  _        t        «       |_        t        d«      D �cg c]&  }ddj                  |«      t        |«      dœi i dœdœ‘Œ( }}|D �cg c]&  }t        j                  |«      j                  d«      ‘Œ( }}|j                  t        d«      g«       ||j                  j                  _        t        «       }t        t        |¬	«      |_        d
|j                   _        t$        j&                  j(                  j+                  «       }d}|4 ƒd {  –—†  |j-                  |j                   d¬«      2 3 d {  –—† }| j/                  d|d   «       | j/                  d|z  |d   j0                  j2                  «       | j/                  |d   j0                  j4                  t        |«      «       | j/                  |j4                  t        |«      «       |dz  }|t7        |«      dz
  k(  sŒ¸|j9                  «        ŒÉc c}w c c}w 7 Œô7 ŒÐ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w|j                   j;                  ddd¬«       |j                  j;                  «        | j/                  |j4                  d«       y ­w)Né   ÚADDEDztest{}©ÚnameÚresourceVersion©ÚmetadataÚspecÚstatus©ÚtypeÚobjectÚutf8úShould not have been called©Úreturn_valueú:rtype: V1NamespaceListr   Ú123©Úresource_versionr   ztest%dr   é   FT©Ú_preload_contentÚwatchr%   Ú2)r   r   ÚcontentÚreadlineÚreleaseÚrangeÚformatÚstrÚjsonÚdumpsÚencodeÚextendÚAssertionErrorÚside_effectr   r   Úget_namespacesÚ__doc__Ú
kubernetesÚaior)   r   ÚstreamÚassertEqualr   r   r%   ÚlenÚstopÚassert_called_once_with)	ÚselfÚ	fake_respÚuidÚside_effectsÚ_Úfake_apir)   ÚcountÚes	            r   Útest_watch_with_decodez WatchTest.test_watch_with_decode   sZ  è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü ›Fˆ	Ôô ˜Q“xö

ð ð  à)1¯©¸Ó)=Ü47¸³Hñ!>à¨"ñóð

ˆð 

ð ?KÖK¸œŸ
™
 1›×,Ñ,¨VÕ4ÐKˆÐKØ×Ñœ^Ð,IÓJÐKÔLØ1=ˆ	×Ñ×"Ñ"Ô.ä“6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'ä—‘×$Ñ$×*Ñ*Ó,ˆØˆØ÷ 	!ñ 	!Ø Ÿ<™<¨×(?Ñ(?ÐRW˜<ÓX÷ !ð !�aØ× Ñ  ¨!¨F©)Ô4à× Ñ  ¨EÑ!1°1°X±;×3GÑ3G×3LÑ3LÔMà× Ñ   8¡×!5Ñ!5×!FÑ!FÌÈEË
ÔSØ× Ñ  ×!7Ñ!7¼¸U»ÔDð ˜‘
�ØœC Ó-°Ñ1Ó1Ø—J‘J•LùòG

ùò Lð	!øð!øÐX÷	!÷ 	!÷ 	!÷ 	!ó 	!úð 	×Ñ×7Ñ7Ø"¨$Àð 	8ô 	Hà×Ñ×1Ñ1Ô3ð 	×Ñ˜×/Ñ/°Õ5ùs�   ‚A J-Á+H"Á-J-Á3+H'ÂBJ-Ä7H,Ä8J-Ä;IÅH0ÅH.ÅH0Å!B/IÈIÈ"J-È.H0È0IÈ1J-È<H?È=J-ÉIÉ	IÉ
IÉAJ-c              ƒ   óP  K  — t        «       }t        «       |j                  _        t        «       |_        g d¢}|D �cg c]  }|j                  d«      ‘Œ }}|j                  t        d«      g«       ||j                  j                  _        t        «       }t        t        |¬«      |_        d|j                  _        t        j                  j                  j!                  «       }g }|4 ƒd {  –—†  |j#                  |j                  «      2 3 d {  –—† }|j%                  |«       Œc c}w 7 Œ?7 Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w| j'                  |ddg«       |j                  j)                  dd	¬
«       |j                  j)                  «        y ­w)N)Ú
log_line_1Ú
log_line_2Ú r   r   r    z-:param follow:
:type follow: bool
:rtype: strrJ   rK   FT)r(   Úfollow)r   r   r+   r,   r-   r3   r4   r5   r6   r   r   Úread_namespaced_pod_logr8   r9   r:   r)   r   r;   ÚappendÚassertListEqualr?   )r@   rA   rC   rD   rE   r)   ÚlogsrG   s           r   Útest_watch_for_followzWatchTest.test_watch_for_followN   sd  è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü ›Fˆ	ÔÚ7ˆØ2>Ö?¨Q˜Ÿ™ Õ(Ð?ˆÐ?Ø×Ñœ^Ð,IÓJÐKÔLØ1=ˆ	×Ñ×"Ñ"Ô.ä“6ˆÜ+:Ü¨9ô,6ˆÔ(à3dˆ×(Ñ(Ô0ä—‘×$Ñ$×*Ñ*Ó,ˆØˆØ÷ 	ñ 	Ø Ÿ<™<¨×(HÑ(HÓI÷ ð �aØ—‘˜A•ùò @ð	øðøÐI÷	÷ 	÷ 	÷ 	ó 	úð 	×Ñ˜T L°,Ð#?Ô@Ø×(Ñ(×@Ñ@Ø"¨4ð 	Aô 	1à×Ñ×1Ñ1Õ3ùsx   ‚;F&½D)ÁBF&Ã.D.Ã/F&Ã2EÄD2ÄD0ÄD2ÄEÄ)F&Ä0D2Ä2EÄ3F&Ä>EÄ?F&ÅEÅEÅEÅAF&c              ƒ   ón  K  — t        «       }t        «       |j                  _        dddii i dœdœdddii i dœdœg}|D �cg c]&  }t	        j
                  |«      j                  d«      ‘Œ( }}|dgz   |j                  j                  _        t        «       }t        t        |¬	«      |_
        d
|j                  _        t        j                  j                  j                  «       }d}|j!                  |j                  «      2 3 d{  –—† }|dz  }Œc c}w 7 Œ6 | j#                  |t%        |«      «       y­w)zStop the iterator when the response is empty.

        This typically happens when the user supplied timeout expires.

        r   r   Útest0r   r   Útest1r   ó    r    r"   r   Nr&   )r   r   r+   r,   r1   r2   r3   r6   r   r   r7   r8   r9   r:   r)   r   r;   r<   r=   )r@   rA   rC   rD   rE   r)   Úcnts          r   Útest_watch_k8s_empty_responsez'WatchTest.test_watch_k8s_empty_responseg   s)  è ø€ ô “Fˆ	Ü%.£[ˆ	×ÑÔ"à°f¸gÐ5FÐPRÐ^`Ñ(aÑbØ°f¸gÐ5FÐPRÐ^`Ñ(aÑbð
ˆð ?KÖK¸œŸ
™
 1›×,Ñ,¨VÕ4ÐKˆÐKØ1=ÀÀÑ1Eˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'ô —‘×$Ñ$×*Ñ*Ó,ˆØˆØ—|‘| H×$;Ñ$;Ó<÷ 	ð 	�!Ø�1‰H‰Cùò Lð	øÐ<à×Ñ˜œc ,Ó/Õ0ùs6   ‚>D5Á +DÁ+BD5ÄDÄDÄDÄ
D5ÄDÄD5c              ƒ   ó  K  — t        «       }|j                  dd«      }| j                  d|d   «       | j                  d|d   «       | j                  t	        |d   t
        «      «       | j                  d|d   «       y ­w)	Nz{"type": "ADDED", "object": 1}Úfloatr   r   g      ð?r   r&   Ú
raw_object)r   Úunmarshal_eventr<   Ú
assertTrueÚ
isinstancerZ   ©r@   ÚwÚevents      r   Ú test_unmarshal_with_float_objectz*WatchTest.test_unmarshal_with_float_object…   st   è ø€ Ü‹GˆØ×!Ñ!Ð"BÀGÓLˆØ×Ñ˜ %¨¡-Ô0Ø×Ñ˜˜e H™oÔ.Ø�‰œ
 5¨¡?´EÓ:Ô;Ø×Ñ˜˜E ,Ñ/Õ0ùs   ‚A?Bc              ƒ   óÆ   K  — t        «       }|j                  dd «      }| j                  d|d   «       | j                  dg|d   «       | j                  dg|d   «       y ­w)Nú&{"type": "ADDED", "object": ["test1"]}r   r   rU   r   r[   ©r   r\   r<   r_   s      r   Ú"test_unmarshal_without_return_typez,WatchTest.test_unmarshal_without_return_type�   sc   è ø€ Ü‹GˆØ×!Ñ!Ø4°dó<ˆà×Ñ˜ %¨¡-Ô0Ø×Ñ˜'˜ E¨(¡OÔ4Ø×Ñ˜'˜ E¨,Ñ$7Õ8ùó   ‚AA!c              ƒ   óÆ   K  — t        «       }|j                  dd«      }| j                  d|d   «       | j                  dg|d   «       | j                  dg|d   «       y ­w)Nrd   rL   r   r   rU   r   r[   re   r_   s      r   Ú%test_unmarshal_with_empty_return_typez/WatchTest.test_unmarshal_with_empty_return_type•   se   è ø€ ô ‹GˆØ×!Ñ!Ø4°bó:ˆà×Ñ˜ %¨¡-Ô0Ø×Ñ˜'˜ E¨(¡OÔ4Ø×Ñ˜'˜ E¨,Ñ$7Õ8ùrg   c           	   ƒ   ó&  K  — dddi dddddœd	œ}| j                  t        j                  j                  j                  j
                  d
«      5  t        «       j                  t        j                  |«      d«       ddd«       y# 1 sw Y   yxY w­w)z˜Never parse messages of type ERROR.

        This test uses an actually recorded error, in this case for an outdated
        resource version.

        ÚERRORÚStatusÚv1ÚFailureú%too old resource version: 1 (8146471)ÚGoneéš  ©ÚkindÚ
apiVersionr   r   ÚmessageÚreasonÚcoder   ú>\(410\)\nReason: Gone: too old resource version: 1 \(8146471\)N©
ÚassertRaisesRegexr9   r:   ÚclientÚ
exceptionsÚApiExceptionr   r\   r1   r2   ©r@   Úk8s_errs     r   Ú"test_unmarshall_k8s_error_responsez,WatchTest.test_unmarshall_k8s_error_responseŸ   sŠ   è ø€ ð à Ø"ØØ#ØBØ Øññ
ˆð ×#Ñ#Ü—‘×%Ñ%×0Ñ0×=Ñ=ØQóSñ 	?ô ‹G×#Ñ#¤D§J¡J¨wÓ$7¸Ô>÷	?÷ 	?ñ 	?üs   ‚ABÁ.BÁ<	BÂBÂ
Bc              ƒ   ó   K  — ddi dddddœ}| j                  t        j                  j                  j                  j
                  d«      5  t        «       j                  t        j                  |«      d«       ddd«       y# 1 sw Y   yxY w­w)	zqNever parse messages of type ERROR.

        This test uses an actually recorded error returned by GKE.

        rl   rm   rn   ÚUnauthorizedi‘  rr   z+\(401\)\nReason: Unauthorized: UnauthorizedNry   r~   s     r   Ú*test_unmarshall_k8s_error_response_401_gkez4WatchTest.test_unmarshall_k8s_error_response_401_gke¹   s‚   è ø€ ð ØØØØ%Ø$Øñ
ˆð ×#Ñ#Ü—‘×%Ñ%×0Ñ0×=Ñ=Ø>ó@ñ 	?ô ‹G×#Ñ#¤D§J¡J¨wÓ$7¸Ô>÷	?÷ 	?ñ 	?üs   ‚A	BÁ.BÁ9	BÂBÂBc              ƒ   ó   K  — t        «       }|j                  dd«      }| j                  d|d   «       | j                  t	        |d   t
        «      «       | j                  d|d   d   d   «       | j                  d|j                  «       y ­w)Nz~{"type": "ADDED", "object": {"apiVersion":"test.com/v1beta1","kind":"foo","metadata":{"name": "bar", "resourceVersion": "1"}}}r   r   r   Ú1r   r   ©r   r\   r<   r]   r^   Údictr%   r_   s      r   Ú!test_unmarshal_with_custom_objectz+WatchTest.test_unmarshal_with_custom_objectÏ   sŒ   è ø€ Ü‹GˆØ×!Ñ!ð #Nð #+ó,ˆð 	×Ñ˜ %¨¡-Ô0ð 	�‰œ
 5¨¡?´DÓ9Ô:Ø×Ñ˜˜e H™o¨jÑ9Ð:KÑLÔMØ×Ñ˜˜a×0Ñ0Õ1ùó   ‚BBc              ƒ   óö  K  — t        «       }t        «       |j                  _        t	        d«      |j                  j                  _        t        «       }t        t        |¬«      |_        d|j                  _	        | j                  t        «      5  t        j                  j                  j                  «       }|j                  |j                  d¬«      2 3 d {  –—† }Œ
7 Œ6 	 d d d «       y # 1 sw Y   y xY w­w)NÚexpectedr    r"   é
   ©Útimeout_seconds)r   r   r+   r,   ÚKeyErrorr6   r   r   r7   r8   ÚassertRaisesr9   r:   r)   r   r;   )r@   rA   rE   r)   rG   s        r   Útest_watch_with_exceptionz#WatchTest.test_watch_with_exceptionÜ   sÆ   è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü19¸*Ó1Eˆ	×Ñ×"Ñ"Ô.Ü“6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'à×ÑœxÓ(ñ 	Ü—N‘N×(Ñ(×.Ñ.Ó0ˆEØ Ÿ<™<¨×(?Ñ(?ÐQS˜<ÓT÷ ð �aØðøÑT÷	÷ 	ñ 	üsC   ‚BC9ÂAC-ÃC"ÃC ÃC"ÃC-Ã C"Ã"C-Ã$	C9Ã-C6Ã2C9c              ƒ   ó2  K  — t        «       }t        «       |j                  _        t        «       |_        ddddœi i dœdœ}t        j                  |«      j                  d«      t        j                  «       dg|j                  j                  _
        t        «       }t        t        |¬	«      |_        d
|j                  _        t        j                   j"                  j%                  «       }|j'                  |j                  «      4 ƒd {  –—† }|2 3 d {  –—† }Œ
7 Œ7 Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w|j                  j)                  t+        dd¬«      t+        ddd¬«      g«       |j                  j-                  «        y ­w)Nr   Útest1555Ú1555r   r   r   r   rV   r    r"   FT©r(   r)   r'   )r   r   r+   r,   r-   r1   r2   r3   ÚasyncioÚTimeoutErrorr6   r   r   r7   r8   r9   r:   r)   r   r;   Úassert_has_callsr   r?   )r@   rA   Ú
mock_eventrE   r)   r;   rG   s          r   Útest_watch_retry_timeoutz"WatchTest.test_watch_retry_timeoutê   sg  è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü ›Fˆ	Ôà%Ø6@ØAGñ.Ià)+Ø+-ñ!/ñ0ˆ
ô 37·*±*¸ZÓ2H×2OÑ2OÐPVÓ2WÜ29×2FÑ2FÓ2HØ25ð27ˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'ä—‘×$Ñ$×*Ñ*Ó,ˆØ—<‘< × 7Ñ 7Ó8÷ 	ð 	¸FØ!÷ ð �aØð	øðø˜6÷	÷ 	÷ 	÷ 	ó 	úð 	×Ñ×0Ñ0Ü 5°Ô5Ü 5°ÀvÔNðPô	Qð 	×Ñ×1Ñ1Õ3ùsm   ‚D	FÄDÄFÄD3ÄD ÄDÄD ÄD3ÄFÄD Ä D3Ä!FÄ,D/Ä-FÄ3EÄ9D<Ä:EÅAFc           	   ƒ   óˆ
  K  — t        «       }t        «       |j                  _        t        «       |_        ddddœi i dœdœ}ddddœi i dœdœ}ddd	i d
ddddœdœ}t        j                  |«      j                  d«      t        j                  |«      j                  d«      t        j                  |«      j                  d«      t        j                  |«      j                  d«      dg|j                  j                  _        t        «       }t        t        |¬«      |_        d|j                  _        t        j                  j                  j!                  «       }|j#                  |j                  «      4 ƒd {  –—† }|2 3 d {  –—† }Œ
7 Œ7 Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w|j                  j%                  t'        dd¬«      t'        ddd¬«      g«       |j                  j)                  «        t        j                  |«      j                  d«      t        j                  |«      j                  d«      t        j                  |«      j                  d«      t        j                  |«      j                  d«      t        j                  |«      j                  d«      dg|j                  j                  _        t        «       }t        t        |¬«      |_        d|j                  _        | j+                  t        j                  j,                  j.                  j0                  d«      5  t        j                  j                  j!                  «       }|j#                  |j                  «      4 ƒd {  –—†7  }|2 3 d {  –—†7  }Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY wd d d «       n# 1 sw Y   nxY wt        j                  |«      j                  d«      t        j                  |«      j                  d«      dg|j                  j                  _        t        «       }t        t        |¬«      |_        d|j                  _        | j+                  t        j                  j,                  j.                  j0                  d«      5  t        j                  j                  j!                  «       }|j#                  |j                  d¬«      4 ƒd {  –—†7  }|2 3 d {  –—†7  }Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY wd d d «       y # 1 sw Y   y xY w­w)Nr   r“   r”   r   r   r   rk   rl   rm   rn   ro   rp   rq   rr   r   rV   r    r"   FTr•   r'   rx   rŒ   r�   )r   r   r+   r,   r-   r1   r2   r3   r6   r   r   r7   r8   r9   r:   r)   r   r;   r˜   r   r?   rz   r{   r|   r}   )	r@   rA   Úmock_event1Úmock_event2Úmock_410rE   r)   r;   rG   s	            r   Útest_watch_retry_410zWatchTest.test_watch_retry_410  st  è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü ›Fˆ	Ôð ð !+Ø+1ñð Øññ
ˆð ð !+Ø+1ñð Øññ
ˆð à Ø"ØØ#ØBØ Øññ
ˆô 37·*±*¸[Ó2I×2PÑ2PÐQWÓ2XÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UÜ26·*±*¸[Ó2I×2PÑ2PÐQWÓ2XÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UØ25ð	27ˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'ä—‘×$Ñ$×*Ñ*Ó,ˆØ—<‘< × 7Ñ 7Ó8÷ 	ð 	¸FØ!÷ ð �aØð	øðø˜6÷	÷ 	÷ 	÷ 	ó 	úð 	×Ñ×0Ñ0Ü 5°Ô5Ü 5°ÀvÔNðPô	Qð 	×Ñ×1Ñ1Ô3ô 37·*±*¸[Ó2I×2PÑ2PÐQWÓ2XÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UÜ26·*±*¸[Ó2I×2PÑ2PÐQWÓ2XÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UØ25ð27ˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'à×#Ñ#Ü—‘×%Ñ%×0Ñ0×=Ñ=ØQóSñ 	ô —N‘N×(Ñ(×.Ñ.Ó0ˆEØ—|‘| H×$;Ñ$;Ó<÷ ñ ÀØ%÷ ñ ˜!Øð  &÷÷ ÷ ÷ ó ú÷		÷ 	ñ 	úô 37·*±*¸[Ó2I×2PÑ2PÐQWÓ2XÜ26·*±*¸XÓ2F×2MÑ2MÈfÓ2UØ25ð27ˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'à×#Ñ#Ü—‘×%Ñ%×0Ñ0×=Ñ=ØQóSñ 	ô —N‘N×(Ñ(×.Ñ.Ó0ˆEØ—|‘| H×$;Ñ$;ÈR�|ÓP÷ ñ ÐTZØ%÷ ñ ˜!Øð  &÷÷ ÷ ÷ ó ú÷		÷ 	ñ 	üsH  ‚E8UÅ:FÅ;UÅ>F"ÆFÆFÆFÆ	F"ÆUÆFÆF"ÆUÆFÆUÆ"F4Æ(F+Æ)F4Æ0FUÌ?AOÎN
ÎOÎN-ÎNÎN
ÎNÎN-ÎOÎ&N)Î'OÎ-N?	Î3N6Î4N?	Î;OÏ	UÏOÏCUÒ(A
T6Ó2S5Ó3T6Ó7TÓ:TÓ>T
Ó?TÔTÔT6ÔTÔT6ÔT*	ÔT!ÔT*	Ô&T6Ô-	UÔ6T?Ô;Uc              ƒ   ó  K  — t        «       }t        «       |j                  _        t        «       |_        t        j                  «       dg|j                  j                  _        t        «       }t        t        |¬«      |_
        d|j                  _        t        j                  j                  j                  «       }|j!                  |j                  d¬«      4 ƒd {  –—† }|2 3 d {  –—† }Œ
7 Œ7 Œ6 d d d «      ƒd {  –—†7   n# 1 ƒd {  –—†7  sw Y   nxY w|j                  j#                  t%        ddd¬«      t%        ddd¬«      g«       |j                  j'                  «        | j)                  |j*                  d«       y ­w)	NrV   r    r"   Ú10r$   FTr'   )r   r   r+   r,   r-   r–   r—   r6   r   r   r7   r8   r9   r:   r)   r   r;   r˜   r   r?   r<   r%   )r@   rA   rE   r)   r;   rG   s         r   Ú(test_watch_timeout_with_resource_versionz2WatchTest.test_watch_timeout_with_resource_versionq  sI  è ø€ Ü“Fˆ	Ü%.£[ˆ	×ÑÔ"Ü ›Fˆ	Ôä29×2FÑ2FÓ2HØ25ð27ˆ	×Ñ×"Ñ"Ô.ô “6ˆÜ"1Ü¨9ô#6ˆÔà*Cˆ×ÑÔ'ä—‘×$Ñ$×*Ñ*Ó,ˆØ—<‘< × 7Ñ 7È$�<ÓO÷ 	ð 	ÐSYØ!÷ ð �aØð	øðø˜6÷	÷ 	÷ 	÷ 	ó 	úð
 	×Ñ×0Ñ0Ü 5°ÀtÔLÜ 5°ÀtÔLðNô	Oð 	×Ñ×1Ñ1Ô3Ø×Ñ˜×/Ñ/°Õ6ùsm   ‚CFÃC/ÃFÃ"DÃ%C3Ã)C1Ã*C3Ã-DÃ/FÃ1C3Ã3DÃ4FÃ?DÄ FÄDÄDÄDÄA3Fc              ƒ   ó   K  — t        «       }|j                  dd«      }| j                  d|d   «       | j                  t	        |d   t
        «      «       | j                  d|d   d   d   «       | j                  d|j                  «       y ­w)	Nz�{"type": "BOOKMARK", "object": {"apiVersion":"test.com/v1beta1","kind":"foo","metadata":{"name": "bar", "resourceVersion": "1"}}}r   ÚBOOKMARKr   r[   r…   r   r   r†   r_   s      r   Ú?test_unmarshal_bookmark_succeeds_and_preserves_resource_versionzIWatchTest.test_unmarshal_bookmark_succeeds_and_preserves_resource_version‹  sŽ   è ø€ Ü‹GˆØ×!Ñ!ð #Nð #+ó,ˆð 	×Ñ˜ U¨6¡]Ô3ð 	�‰œ
 5¨Ñ#6¼Ó=Ô>Ø×Ñ˜˜e LÑ1°*Ñ=Ð>OÑPÔQØ×Ñ˜˜a×0Ñ0Õ1ùr‰   c              ƒ   ó   K  — t        «       }|j                  dd«      }| j                  d|d   «       | j                  t	        |d   t
        «      «       | j                  d|d   d   d   «       | j                  d|j                  «       y ­w)	NzÕ{"type": "BOOKMARK", "object": {"apiVersion":"batch/v1","kind":"Job","metadata":{"name": "bar", "resourceVersion": "1"},"spec": {"template": {"metadata": {"creationTimestamp":null}, "spec": {"containers":null}}}}}r   r¤   r   r[   r…   r   r   r†   r_   s      r   ÚCtest_unmarshal_job_bookmark_succeeds_and_preserves_resource_versionzMWatchTest.test_unmarshal_job_bookmark_succeeds_and_preserves_resource_version™  s�   è ø€ Ü‹GˆØ×!Ñ!ð #<ð #+ó,ˆð 	×Ñ˜ U¨6¡]Ô3ð 	�‰œ
 5¨Ñ#6¼Ó=Ô>Ø×Ñ˜˜e LÑ1°*Ñ=Ð>OÑPÔQØ×Ñ˜˜a×0Ñ0Õ1ùr‰   c              ƒ   óÌ   K  — dddi dœdœ}| j                  t        «      5  t        «       j                  t	        j
                  |«      d «       d d d «       y # 1 sw Y   y xY w­w)Nr¤   ÚJobzbatch/v1)rs   rt   r   r   )r�   Ú	Exceptionr   r\   r1   r2   r~   s     r   Ú3test_unmarshall_job_bookmark_malformed_object_failsz=WatchTest.test_unmarshall_job_bookmark_malformed_object_failsª  s_   è ø€ ð àØ(Øññ
ˆð ×ÑœyÓ)ñ 	?Ü‹G×#Ñ#¤D§J¡J¨wÓ$7¸Ô>÷	?÷ 	?ñ 	?üs   ‚A$¡.AÁ	A$ÁA!ÁA$N)Ú__name__Ú
__module__Ú__qualname__rH   rR   rX   rb   rf   ri   r€   rƒ   rˆ   r‘   rš   rŸ   r¢   r¥   r§   r«   r
   rV   r   r   r      sU   „ ò.6ò`4ò21ò<1ò9ò9ò?ò4?ò,2òò4ò<gòR7ò42ò2ó"?rV   r   )r–   r1   Úunittestr   Úunittest.mockr   r   r   r   Úkubernetes.aior9   Úkubernetes.aio.watchr   r   r   r
   rV   r   ú<module>r³      s0   ðó Û Ý ,ß @Ó @ã Ý &ò	ôZ?Ð'õ Z?rV   