Ë
    eQêj³N  ã                   ó¶   — d dl Z d dlZd dlZd dlmZ d dlmZ ddlmZ ddl	m
Z
mZ ddlmZ d„ Z G d	„ d
ej                  «      Z G d„ dej                  «      Zy)é    N)Úbase)Ú
api_clienté   )ÚDynamicClient)ÚResourceInstanceÚResourceField)ÚResourceNotFoundErrorc                  óF   — t        t        j                  «       «      } | dd  S )Niôÿÿÿ)ÚstrÚuuidÚuuid4)Úids    úc/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/kubernetes/dynamic/test_client.pyÚ
short_uuidr      s   € Ü	ŒT�Z‰Z‹\Ó	€BØˆcˆdˆ8€Oó    c                   óR   — e Zd Zed„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zy)ÚTestDynamicClientc                 ó6   — t        j                  «       | _        y ©N)r   Úget_e2e_configurationÚconfig)Úclss    r   Ú
setUpClasszTestDynamicClient.setUpClass"   s   € ä×/Ñ/Ó1ˆ�
r   c           	      ó¸  — t        t        j                  | j                  ¬«      «      }| j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       |j                  j                  dd¬«      }d}ddd|id	dd
dddœdddi idœdœ}|j                  |«      }| j                  ||j                  j                  «       | j                  |j                  «       |j                  |¬«      }| j                  ||j                  j                  «       | j                  |j                  «       	 |j                  j                  dd¬«      }|j                  j                  dd¬«      }|j                  «       }| j                  |j                   g «       dt#        «       z   }ddd|ii dœ}|j                  |¬«      }| j                  |j                  j                  |«       |j                  |¬«      }| j                  |j                  j                  |«       d|d   d<   |j%                  |d¬«      }| j                  |j&                  j(                  d«       |j                  |¬«      }| j                  |j&                  j(                  d«       |j                  «       }| j                  t+        |j                   «      d«       |j-                  |¬«      }|j                  «       }| j                  t+        |j                   «      d«       |j-                  |¬«      }t        j                  d«       |j                  j/                  «        | j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       y # 1 sw Y   �ŒCxY w# t
        $ r t        j                  d«       Y �Œow xY w# 1 sw Y   y xY w)N©Úconfigurationúapps.example.com/v1ÚClusterChangeMe©Úapi_versionÚkindúapiextensions.k8s.io/v1beta1ÚCustomResourceDefinitionz!clusterchangemes.apps.example.comÚnameúapps.example.comÚClusterChangeMeListÚclusterchangemesÚclusterchangeme©r!   ÚlistKindÚpluralÚsingularÚClusterÚv1Ústatus©ÚgroupÚnamesÚscopeÚversionÚsubresources©Ú
apiVersionr!   ÚmetadataÚspec©r$   é   úcustom-resource)Úbodyé   r9   Úsizeúapplication/merge-patch+json)r=   Úcontent_typer   r   ©r   r   Ú	ApiClientr   ÚassertRaisesr	   Ú	resourcesÚgetÚcreateÚassertEqualr8   r$   Ú
assertTruer/   ÚtimeÚsleepÚitemsr   Úpatchr9   r?   ÚlenÚdeleteÚinvalidate_cache©	ÚselfÚclientÚchangeme_apiÚcrd_apir$   Úcrd_manifestÚrespÚchangeme_nameÚchangeme_manifests	            r   Útest_cluster_custom_resourcesz/TestDynamicClient.test_cluster_custom_resources&   s»  € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆà×ÑÔ4Ó5ñ 	KØ!×+Ñ+×/Ñ/Ø1Ð8Ið 0ó KˆL÷	Kð ×"Ñ"×&Ñ&Ø6Ø+ð 'ó -ˆð 3ˆà8Ø.à˜ðð ,à-Ø 5Ø0Ø 1ñ	ð #Øà˜bð!ññ
ˆð* �~‰~˜lÓ+ˆà×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$à�{‰{Øð ó 
ˆð 	×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$ð	Ø!×+Ñ+×/Ñ/Ø1Ð8Ið 0ó KˆLð
 ×'Ñ'×+Ñ+Ø-Ð4Eð ,ó Gˆà×ÑÓ!ˆØ×Ñ˜Ÿ™ RÔ(Ø)¬J«LÑ8ˆà/Ø%à˜ðð ñ
Ðð ×"Ñ"Ð(9Ð"Ó:ˆØ×Ñ˜Ÿ™×+Ñ+¨]Ô;à×Ñ ]ÐÓ3ˆØ×Ñ˜Ÿ™×+Ñ+¨]Ô;à,-Ð˜&Ñ! &Ñ)Ø×!Ñ!Ø"Ø7ð "ó 
ˆð 	×Ñ˜Ÿ™Ÿ™¨Ô+à×Ñ ]ÐÓ3ˆØ×Ñ˜Ÿ™Ÿ™¨Ô+à×ÑÓ!ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à×"Ñ"Øð #ó 
ˆð ×ÑÓ!ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à�~‰~Øð ó 
ˆô 	�
‰
�1ŒØ×Ñ×)Ñ)Ô+Ø×ÑÔ4Ó5ñ 	KØ!×+Ñ+×/Ñ/Ø1Ð8Ið 0ó KˆL÷	Kð 	K÷y	Kñ 	KûôV %ò 	ä�J‰J�q�Mð	ú÷b	Kð 	Kús)   ¿NÅ N+ Í7OÎN(Î+OÏOÏOc           	      óÀ  — t        t        j                  | j                  ¬«      «      }| j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       |j                  j                  dd¬«      }d}ddd|id	dd
dddœdddi idœdœ}|j                  |d¬«      }| j                  ||j                  j                  «       | j                  |j                  «       |j                  |d¬«      }| j                  ||j                  j                  «       | j                  |j                  «       	 |j                  j                  dd¬«      }|j                  d¬«      }| j                  |j                   g «       dt#        «       z   }ddd|ii dœ}|j                  |dd¬«      }| j                  |j                  j                  |«       |j                  |dd¬«      }| j                  |j                  j                  |«       d|d   d<   |j%                  |ddd¬«      }| j                  |j&                  j(                  d«       |j                  |dd¬«      }| j                  |j&                  j(                  d«       |j                  dd¬ «      }| j                  t+        |j                   «      d!«       |j                  d¬«      }| j                  t+        |j                   «      d!«       |j-                  |dd¬«      }|j                  dd¬ «      }| j                  t+        |j                   «      d"«       |j                  d¬«      }| j                  t+        |j                   «      d"«       |j-                  |d¬«      }t        j                  d«       |j                  j/                  «        | j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       y # 1 sw Y   �ŒªxY w# t
        $ r6 t        j                  d«       |j                  j                  dd¬«      }Y �Œðw xY w# 1 sw Y   y xY w)#Nr   r   ÚChangeMer   r"   r#   úchangemes.apps.example.comr$   r%   ÚChangeMeListÚ	changemesÚchangemer)   Ú
Namespacedr.   r/   r0   r6   T)Ú	async_req)r$   rb   r;   r<   Údefault)r=   Ú	namespacerb   )r$   rd   rb   r>   r9   r?   r@   )r=   rd   rA   rb   )rd   rb   r   r   rB   )	rR   rS   rT   rU   r$   rV   Ú
async_resprX   rY   s	            r   Ú&test_async_namespaced_custom_resourcesz8TestDynamicClient.test_async_namespaced_custom_resources‰   sh  € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆà×ÑÔ4Ó5ñ 	DØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆL÷	Dð ×"Ñ"×&Ñ&Ø6Ø+ð 'ó -ˆð ,ˆð 9Ø.à˜ðð ,à&Ø .Ø)Ø *ñ	ð &Øà˜bð!ññ
ˆð* —^‘^ L¸D�^ÓAˆ
à×Ñ˜˜z×2Ñ2×7Ñ7Ô8Ø�‰˜
×)Ñ)Ô*à—[‘[ØØð !ó 
ˆ
ð 	×Ñ˜˜z×2Ñ2×7Ñ7Ô8Ø�‰˜
×)Ñ)Ô*ð	DØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆLð "×%Ñ%°Ð%Ó5ˆ
Ø×Ñ˜×)Ñ)¨2Ô.à)¬J«LÑ8ˆà/Øà˜ðð ñ
Ðð "×(Ñ(Ð.?È9Ð`dÐ(Óeˆ
Ø×Ñ˜×,Ñ,×1Ñ1°=ÔAà!×%Ñ%¨=ÀIÐY]Ð%Ó^ˆ
Ø×Ñ˜×,Ñ,×1Ñ1°=ÔAà,-Ð˜&Ñ! &Ñ)Ø!×'Ñ'Ø"ØØ7Øð	 (ó 
ˆ
ð 	×Ñ˜Ÿ™×-Ñ-¨qÔ1à!×%Ñ%¨=ÀIÐY]Ð%Ó^ˆ
Ø×Ñ˜Ÿ™×-Ñ-¨qÔ1à!×%Ñ%°	ÀTÐ%ÓJˆ
Ø×Ñœ˜Z×-Ñ-Ó.°Ô2à!×%Ñ%°Ð%Ó5ˆ
Ø×Ñœ˜Z×-Ñ-Ó.°Ô2à!×(Ñ(ØØØð )ó 
ˆ
ð "×%Ñ%°	ÀTÐ%ÓJˆ
Ø×Ñœ˜Z×-Ñ-Ó.°Ô2à!×%Ñ%°Ð%Ó5ˆ
Ø×Ñœ˜Z×-Ñ-Ó.°Ô2à—^‘^ØØð $ó 
ˆ
ô
 	�
‰
�1ŒØ×Ñ×)Ñ)Ô+Ø×ÑÔ4Ó5ñ 	DØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆL÷	Dð 	D÷Y	Dñ 	Dûô\ %ò 	Dä�J‰J�qŒMØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó D‹Lð	Dú÷|	Dð 	Dús)   ¿PÅP ÏQÐPÐ;QÑQÑQc           	      óž  — t        t        j                  | j                  ¬«      «      }| j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       |j                  j                  dd¬«      }d}ddd|id	dd
dddœdddi idœdœ}|j                  |«      }| j                  ||j                  j                  «       | j                  |j                  «       |j                  |¬«      }| j                  ||j                  j                  «       | j                  |j                  «       	 |j                  j                  dd¬«      }|j                  j                  dd¬«      }|j                  «       }| j                  |j                   g «       dt#        «       z   }ddd|ii dœ}|j                  |d¬«      }| j                  |j                  j                  |«       |j                  |d¬«      }| j                  |j                  j                  |«       d|d   d<   |j%                  |dd¬«      }| j                  |j&                  j(                  d«       |j                  |d¬«      }| j                  |j&                  j(                  d«       |j                  d¬«      }| j                  t+        |j                   «      d«       |j                  «       }| j                  t+        |j                   «      d«       |j-                  |d¬«      }|j                  d¬«      }| j                  t+        |j                   «      d «       |j                  «       }| j                  t+        |j                   «      d «       |j-                  |¬«      }t        j                  d«       |j                  j/                  «        | j	                  t
        «      5  |j                  j                  dd¬«      }d d d «       y # 1 sw Y   �Œ¶xY w# t
        $ r t        j                  d«       Y �Œâw xY w# 1 sw Y   y xY w)!Nr   r   r\   r   r"   r#   r]   r$   r%   r^   r_   r`   r)   ra   r.   r/   r0   r6   r:   r;   r<   rc   ©r=   rd   ©r$   rd   r>   r9   r?   r@   )r=   rd   rA   )rd   r   r   rB   rQ   s	            r   Ú test_namespaced_custom_resourcesz2TestDynamicClient.test_namespaced_custom_resourcesü   s  € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆà×ÑÔ4Ó5ñ 	DØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆL÷	Dð ×"Ñ"×&Ñ&Ø6Ø+ð 'ó -ˆð ,ˆà8Ø.à˜ðð ,à&Ø .Ø)Ø *ñ	ð &Øà˜bð!ññ
ˆð* �~‰~˜lÓ+ˆà×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$à�{‰{Øð ó 
ˆð 	×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$ð	Ø!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆLð
 ×'Ñ'×+Ñ+Ø-°Jð ,ó @ˆà×ÑÓ!ˆØ×Ñ˜Ÿ™ RÔ(Ø)¬J«LÑ8ˆà/Øà˜ðð ñ
Ðð ×"Ñ"Ð(9ÀYÐ"ÓOˆØ×Ñ˜Ÿ™×+Ñ+¨]Ô;à×Ñ ]¸iÐÓHˆØ×Ñ˜Ÿ™×+Ñ+¨]Ô;à,-Ð˜&Ñ! &Ñ)Ø×!Ñ!Ø"ØØ7ð "ó 
ˆð
 	×Ñ˜Ÿ™Ÿ™¨Ô+à×Ñ ]¸iÐÓHˆØ×Ñ˜Ÿ™Ÿ™¨Ô+à×Ñ¨)ÐÓ4ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à×ÑÓ!ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à×"Ñ"ØØð #ó 
ˆð
 ×Ñ¨)ÐÓ4ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à×ÑÓ!ˆØ×Ñœ˜TŸZ™Z›¨!Ô,à�~‰~Øð ó 
ˆô 	�
‰
�1ŒØ×Ñ×)Ñ)Ô+Ø×ÑÔ4Ó5ñ 	DØ!×+Ñ+×/Ñ/Ø1¸
ð 0ó DˆL÷	Dð 	D÷I	Dñ 	DûôV %ò 	ä�J‰J�q�Mð	ú÷r	Dð 	Dús)   ¿PÅ P Ï*QÐPÐQ Ð?Q ÑQc                 ó(  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }dt        «       z   }ddd|i|dœdd	d
d	dœgd|idœdœ}|j                  |d¬«      }| j                  ||j                  j                  «       | j                  |j                  «       |j                  |d¬«      }| j                  ||j                  j                  «       | j                  |j                  «       ddd
ddœg|d   d<   |j                  ||d¬«      }| j                  dt        |j                  j                   «      «       | j                  |j                  «       |j#                  |i d¬«      }y )Nr   r.   ÚServicer   ú	frontend-r$   ©Úlabelsr$   ÚportéP   ÚTCP)r$   rp   ÚprotocolÚ
targetPort)ÚportsÚselectorr6   rc   rh   ri   Únewi�  r9   ru   )r=   r$   rd   r;   ©r$   r=   rd   )r   r   rC   r   rE   rF   r   rG   rH   r8   r$   rI   r/   rM   rN   r9   ru   rO   )rR   rS   Úapir$   Úservice_manifestrW   s         r   Útest_service_apisz#TestDynamicClient.test_service_apisg  s   € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"¨t¸)Ð"ÓDˆàœZ›\Ñ)ˆØ*.Ø$-Ø4:¸D°>Ø15ñ)7à8>Ø8:Ø<AØ>@ñ0Bð /Cð 39¸$°ñ	%Añ	BÐð �z‰zØ!Øð ó 
ˆð 	×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$à�w‰wØØð ó 
ˆð 	×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø�‰˜Ÿ™Ô$à6;Ø6:Ø:?Ø<@ñ.Bð -CÐ˜Ñ  Ñ)ð �y‰yØ!ØØð ó 
ˆð
 	×Ñ˜œC §	¡	§¡Ó0Ô1Ø�‰˜Ÿ™Ô$à�z‰zØ˜BØð ó 
‰r   c                 ó–  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }dt        «       z   }ddd|i|dœdd|id	d|iid
dddddœgdœgidœdœdœ}|j                  |d¬«      }| j                  ||j                  j                  «       | j                  d|j                  j                  «       |j                  |d¬«      }| j                  ||j                  j                  «       | j                  d|j                  j                  «       |j                  |dd¬«       y )Nr   r.   ÚReplicationControllerr   rm   r$   rn   r;   ro   Ú
containersÚnginxrq   rr   ©ÚcontainerPortrs   ©Úimager$   ru   )r8   r9   )Úreplicasrv   Útemplater6   rc   rh   ri   Ú
Background)r$   rd   Úpropagation_policy)r   r   rC   r   rE   rF   r   rG   rH   r8   r$   r9   r„   rO   )rR   rS   ry   r$   Úrc_manifestrW   s         r   Ú test_replication_controller_apisz2TestDynamicClient.test_replication_controller_apis•  sg  € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"ØÐ#:ð #ó <ˆð œZ›\Ñ)ˆàØ+Ø$*¨D >Ø!%ñ'à!"Ø"(¨$ à! F¨D >ð/3à".Ø&-Ø%,Ø9;Ø49ñ(;ð '<ñ2=ð 1>ð "?ñ"@ñAñBˆð �z‰zØ¨	ð ó 3ˆà×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø×Ñ˜˜DŸI™I×.Ñ.Ô/à�w‰wØ ð ó ,ˆà×Ñ˜˜tŸ}™}×1Ñ1Ô2Ø×Ñ˜˜DŸI™I×.Ñ.Ô/à�
‰
ØØØ+ð 	õ 	-r   c                 óÜ  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }dt        «       z   }dd|ddidœd	d
dœdœ}|j                  |d¬«      }| j                  ||j                  j                  «       |j                  |dd¬«      }| j                  ||j                  j                  «       d}|j                  |dd|¬«      D ]  }|dz  }Œ	 | j                  |dkD  d¬«       d|d   d<   |j                  |d|¬«      }|j                  |i d¬«      }|j                  ddd¬«      }| j                  g |j                  «       y )Nr   r.   Ú	ConfigMapr   ztest-configmap-ze2e-testÚtrue)r$   ro   z"{"command":"/usr/bin/mysqld_safe"}z![mysqld]
bind-address = 10.0.0.3
)úconfig.jsonzfrontend.cnf)r!   r7   r8   Údatarc   rh   ze2e-test=true)r$   rd   Úlabel_selectorr   é
   )Útimeoutrd   r$   r   zno events received for watch)Úmsgz{}rŽ   r�   )r$   rd   r=   rx   T)rd   Úprettyr�   )r   r   rC   r   rE   rF   r   rG   rH   r8   r$   ÚwatchrI   rM   rO   rL   )rR   rS   ry   r$   Útest_configmaprW   ÚcountÚ_s           r   Útest_configmap_apisz%TestDynamicClient.test_configmap_apis¹  s—  € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"¨t¸+Ð"ÓFˆà ¤:£<Ñ/ˆàØàà ðñð  HØ Eññ
ˆð �z‰zØ¨9ð ó 
ˆð 	×Ñ˜˜tŸ}™}×1Ñ1Ô2à�w‰wØ ¸?ð ó Lˆà×Ñ˜˜tŸ}™}×1Ñ1Ô2àˆØ—‘˜c¨2¸È�ÓNò 	ˆAØ�Q‰J‰Eð	à�‰˜ ™	Ð'EˆÔFà04ˆ�vÑ˜}Ñ-Ø�y‰yØ °ð ó Aˆð �z‰zØ˜B¨)ð ó 5ˆð �w‰wØØØ*ð ó ,ˆð 	×Ñ˜˜TŸZ™ZÕ(r   c                 óŽ  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }|j                  «       j                  D ]b  }|j                  |j                  j                  ¬«      }| j                  t        t        |j                  j                  «      «      dkD  «       Œd y )Nr   r.   ÚNoder   r:   r   )r   r   rC   r   rE   rF   rL   r8   r$   rI   rN   Údictro   )rR   rS   ry   ÚitemÚnodes        r   Útest_node_apisz TestDynamicClient.test_node_apisè  s�   € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"¨t¸&Ð"ÓAˆà—G‘G“I—O‘Oò 	AˆDØ—7‘7 §¡× 2Ñ 2�7Ó3ˆDØ�O‰OœC¤ T§]¡]×%9Ñ%9Ó :Ó;¸aÑ?Õ@ñ	Ar   c                 óÐ  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }dddii} |j
                  di |¤Ž}| j                  d|j                  «       | j                  d	|j                  «       dd
dii} |j
                  di |¤Ž}| j                  d|j                  «       | j                  d	|j                  «       y )Nr   r.   rš   r   Úheader_paramsÚAcceptz@application/json;as=PartialObjectMetadataList;v=v1;g=meta.k8s.ioÚPartialObjectMetadataListzmeta.k8s.io/v1ÚaCcePt© )	r   r   rC   r   rE   rF   rH   r!   r7   )rR   rS   ry   ÚparamsrW   s        r   Ú&test_node_apis_partial_object_metadataz8TestDynamicClient.test_node_apis_partial_object_metadataò  sæ   € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"¨t¸&Ð"ÓAˆð ØÐ\ð^ð_ˆð ˆs�w‰wÑ ˜Ñ ˆØ×ÑÐ4°d·i±iÔ@Ø×ÑÐ)¨4¯?©?Ô;ð ØÐ\ð^ð_ˆð ˆs�w‰wÑ ˜Ñ ˆØ×ÑÐ4°d·i±iÔ@Ø×ÑÐ)¨4¯?©?Õ;r   c           	      óh  — t        t        j                  | j                  ¬«      «      }|j                  j                  dd¬«      }dt        «       z   }ddd|i|dœdd	d	d
ddœgdœgidœ}|j                  d|dd¬«      }| j                  d|j                  j                  d   j                  «       y )Nr   r.   ÚPodr   zpod-r$   rn   r~   r   rq   rr   r€   r‚   r6   rc   zkubernetes-unittestsÚAll)rd   r=   Úfield_managerÚdry_runr   )r   r   rC   r   rE   rF   r   Úserver_side_applyrH   r8   ÚmanagedFieldsÚmanager)rR   rS   ry   r$   Úpod_manifestrW   s         r   Útest_server_side_apply_apiz,TestDynamicClient.test_server_side_apply_api  sÜ   € Üœz×3Ñ3À$Ç+Á+ÔNÓOˆØ×Ñ×"Ñ"Ø 5ð #ó *ˆð œ
›Ñ$ˆà"ØØ(.° ~Ø$(ñ*à%Ø%,Ø$+Ø8:Ø8=ñ'?ð &@ñ)Að (Bð Cñ	Dˆð ×$Ñ$Ø lØ0¸%ð %ó Aˆð 	×ÑÐ/°·±×1LÑ1LÈQÑ1O×1WÑ1WÕXr   N)Ú__name__Ú
__module__Ú__qualname__Úclassmethodr   rZ   rf   rj   r{   r‰   r˜   rž   r¦   r°   r¤   r   r   r   r       sO   „ àñ2ó ð2òaKòFqDòfiDòV,
ò\"-òH-)ò^Aò<ó$Yr   r   c                   ó.   — e Zd Zed„ «       Zd„ Zd„ Zd„ Zy)ÚTestDynamicClientSerializationc                 óœ   — t        j                  «       }t        t        j                  |¬«      «      | _        ddddidddd	œgid
œ| _        y )Nr   r.   r¨   r$   zfoo-podr~   ÚmainÚbusybox)r$   rƒ   r6   )r   r   r   r   rC   rS   r¯   )r   r   s     r   r   z)TestDynamicClientSerialization.setUpClass  sO   € ä×+Ñ+Ó-ˆÜ"¤:×#7Ñ#7ÀfÔ#MÓNˆŒ
àØØ Ð+Ø!¨V¸iÑ$HÐ#IÐJñ	
ˆÕr   c                 ó‚   — | j                  | j                  j                  | j                  «      | j                  «       y r   )rH   rS   Úserialize_bodyr¯   )rR   s    r   Útest_dict_typez-TestDynamicClientSerialization.test_dict_type(  s-   € Ø×Ñ˜Ÿ™×3Ñ3°D×4EÑ4EÓFÈ×HYÑHYÕZr   c                 ó®   — t        | j                  | j                  «      }| j                  | j                  j	                  |«      | j                  «       y r   )r   rS   r¯   rH   r»   )rR   Úinsts     r   Útest_resource_instance_typez:TestDynamicClientSerialization.test_resource_instance_type+  s=   € Ü §¡¨T×->Ñ->Ó?ˆØ×Ñ˜Ÿ™×3Ñ3°DÓ9¸4×;LÑ;LÕMr   c                 óÜ   — dddœ}t        |¬«      }| j                  |d   |d   «       | j                  |d   |d   «       | j                  | j                  j                  |«      |«       y)zÇ`ResourceField` is a special type which overwrites `__getattr__` method to return `None`
        when a non-existent attribute was accessed. which means it can pass any `hasattr(...)` tests.
        ÚbarT)ÚfoorR   )r¥   rÂ   rR   N)r   rH   rS   r»   )rR   r¥   Úress      r   Útest_resource_fieldz2TestDynamicClientSerialization.test_resource_field/  sl   € ð
 Øñ
ˆô  6Ô*ˆØ×Ñ˜˜U™ V¨E¡]Ô3Ø×Ñ˜˜V™ f¨V¡nÔ5Ø×Ñ˜Ÿ™×3Ñ3°CÓ8¸&ÕAr   N)r±   r²   r³   r´   r   r¼   r¿   rÄ   r¤   r   r   r¶   r¶     s&   „ àñ
ó ð
ò[òNóBr   r¶   )rJ   Úunittestr   Úkubernetes.e2e_testr   Úkubernetes.clientr   Ú r   Úresourcer   r   Ú
exceptionsr	   r   ÚTestCaser   r¶   r¤   r   r   ú<module>rÌ      sO   ðó Û Û å $Ý (å ß 5Ý -òô
xY˜×)Ñ)ô xYôvB X×%6Ñ%6õ Br   