+
    ¾¾jì  ã                   óŒ  € R t ^ RIt^ RIHtHtHtHt ^ RIHt R t	R t
R tR t]P                  R 4       t]P                  R	 4       t]P                  ! ]].R
7      R 4       t]P                  R 4       tR tR tR tR tR tR R ltR R lt]P                  ! ]].R
7      R 4       tR tR tR tR tR tR t]P@                  PC                  R*RRR /3R!R"R#/3R$R%R&/3.4      R' 4       t"]P@                  PC                  R*RR. /3R!R". /3R$R%. /3.4      R( 4       t#]P@                  PC                  R. R+O4      R) 4       t$R# ),zTest conference properties.N)ÚCalendarÚEventÚTodoÚvUri)Ú
Conferencec                 óÊ   € \         P                  ! \        R4      4      p V P                  R8X  g   Q hV P                  e   Q hV P
                  e   Q hV P                  e   Q hR# )zTest creation from a URI.ú(https://chat.example.com/audio?id=123456N©r   Úfrom_urir   ÚuriÚfeatureÚlabelÚlanguage©Ú
conferences    Úc/home/ralf/ical-fahrzeuge/venv/lib/python3.14/site-packages/icalendar/tests/prop/test_conference.pyÚtest_from_empty_urir   	   sa   € ä×$Ò$¤TÐ*TÓ%UÓV€JØ�>‰>ÐGÔGÐGÐGØ×ÑÒ%Ð%Ð%Ø×ÑÒ#Ð#Ð#Ø×ÑÒ&Ð&Ò&ó    c                 óì   € \         P                  ! \        RRRRRRR/R7      4      p V P                  R8X  g   Q hV P                  R8X  g   Q hV P
                  R8X  g   Q hV P                  R8X  g   Q hR	# )
z(Create a conference with lots of values.r   ÚFEATUREzPHONE,MODERATORÚLABELúModerator dial-inÚLANGUAGEÚEN©ÚparamsNr	   r   s    r   Útest_from_example_urir      s†   € ä×$Ò$ÜØ6àÐ,ØÐ,Ø˜Dðô	
ó	€Jð �>‰>ÐGÔGÐGÐGØ×ÑÐ!2Ô2Ð2Ð2Ø×ÑÐ2Ô2Ð2Ð2Ø×Ñ $Ô&Ð&Ò&r   c                 óÆ   € \        RRRRRRRRR	/R
7      p \        P                  ! V 4      pVP                  4       pW 8X  g   Q hVP                  V P                  8X  g   Q hR# )zTest creating a vURI.r   r   ÚPHONEr   Ú	Moderatorr   ÚDEÚVALUEÚURIr   N)r   r   r
   Úto_urir   )r   r   Únew_uris      r   Útest_to_urir%   $   sh   € ä
Ø2à�wØ�[Ø˜Ø�Uð	
ô€Cô ×$Ò$ SÓ)€JØ×ÑÓ!€GØŒ>Ðˆ>Ø�>‰>˜SŸZ™ZÔ'Ð'Ò'r   c                 ó   € \        RRR.RR7      p V P                  4       p\        VP                  R,          \        4      '       g   Q hVP                  R,          R8X  g   Q hVP                  R,          R8X  g   Q hR	# )
zKEnsure list parameters are correctly serialized to comma-separated strings.úhttps://example.comÚAUDIOÚVIDEOzMeeting room)r   r   r   r   zAUDIO,VIDEOr   N)r   r#   Ú
isinstancer   Ústr©ÚconfÚvuris     r   Ú)test_conference_list_params_serializationr/   5   so   € äØ!¨G°WÐ+=À^ô€Dð �;‰;‹=€Dä�d—k‘k )Õ,¬c×2Ò2Ð2Ð2Ø�;‰;�yÕ! ]Ô2Ð2Ð2Ø�;‰;�wÕ >Ô1Ð1Ò1r   c                 ó@   € \         P                  ! \        R4      4      # )ú$Fixture for a conference with a URI.r   )r   r
   r   © r   r   Úconference_1r3   B   s   € ô ×ÒœtÐ$NÓOÓPÐPr   c                 ó2   € \        \        R4      RRRR7      # )r1   r   r   r   r   )r   r   r   )r   r   r2   r   r   Úconference_2r5   H   s#   € ô ÜÐ7Ó8ØØ!Øô	ð r   r   c                ó   € V P                   # )z)Fixture to create a Conference component.)Úparam)Úrequests   &r   Úcomponent_classr9   S   s   € ð �=‰=Ðr   c                ó   € V ! 4       # )zCreate a component.r2   )r9   s   &r   Ú	componentr;   Y   s   € ñ ÓÐr   c                ó>   € V P                   . 8X  g   Q hRV 9  g   Q hR# )zNo conferences by default.Ú
CONFERENCEN©Úconferences)r;   s   &r   Útest_no_conferencesr@   _   s$   € à× Ñ  BÔ&Ð&Ð&Ø˜yÔ(Ð(Ò(r   c                óR   € V.V n         V R,          VP                  4       8X  g   Q hR# ©zAdd a new conference.r=   N©r?   r#   )r;   r3   s   &&r   Útest_add_conferencerD   e   s(   € à)˜N€IÔØ�\Õ" l×&9Ñ&9Ó&;Ô;Ð;Ò;r   c                ór   € W.V n         V R,          VP                  4       VP                  4       .8X  g   Q hR# rB   rC   )r;   r3   r5   s   &&&r   Útest_add_multiple_conferencesrF   k   s7   € à)Ð8€IÔØ�\Õ" |×':Ñ':Ó'<¸l×>QÑ>QÓ>SÐ&TÔTÐTÒTr   c                óT   € V P                  W.R7      pVP                  W.8X  g   Q hR# )z(Create a new component with conferences.r>   N)Únewr?   )r9   r3   r5   r;   s   &&& r   Ú#test_new_component_with_conferencesrI   q   s/   € à×#Ñ#°Ð0LÐ#ÓM€IØ× Ñ  \Ð$@Ô@Ð@Ò@r   c                óŠ   € V .Vn         VP                  4       P                  R4      pRV9   g   Q hRV9   g   Q hRV9   g   Q hR# )z$The URI start be in the ical string.zutf-8zCONFERENCE;z/audio?id=123456r   N)r?   Úto_icalÚdecode)r5   r;   Úical_strs   && r   Útest_uri_in_ical_rN   w   sO   € à)˜N€IÔØ× Ñ Ó"×)Ñ)¨'Ó2€HØ˜HÔ$Ð$Ð$Ø Ô)Ð)Ð)Ø�hÔÐÒr   c                ó0   € V ^8„  d   QhR\         R\        /# ©é   ÚcalendarÚreturn©r   r   )Úformats   "r   Ú__annotate__rV   €   s   € ÷ ñ œð ¤Uñ r   c                ó(   € V P                   ^ ,          # ©zGet the event directly)Úevents)rR   s   &r   Ú	get_eventrZ   €   s   € à�?‰?˜1ÕÐr   c                ó0   € V ^8„  d   QhR\         R\        /# rP   rT   )rU   s   "r   rV   rV   …   s   € ÷ ñ ¤8ð ´ñ r   c                óp   € \         P                  ! V P                  4       4      pVP                  ^ ,          # rX   )r   Ú	from_icalrK   rY   )rR   Úcals   & r   Úget_serialized_eventr_   …   s)   € ä
×
Ò
˜X×-Ñ-Ó/Ó
0€CØ�:‰:�a�=Ðr   c                ó<   € VP                   pV P                  V4      # )zReturn the event from the file.)Úrfc_7986_conferencesr7   )r8   Ú	calendarsrR   s   && r   Úevent_with_conferencesrc   ‹   s   € ð ×-Ñ-€HØ�=‰=˜Ó"Ð"r   c                ó|  € \        V P                  4      ^8X  g   Q hV P                  ^ ,          P                  R8X  g   Q hV P                  ^,          P                  R8X  g   Q hV P                  ^,          P                  R8X  g   Q hV P                  ^,          P                  R8X  g   Q hV P                  ^,          P                  R8X  g   Q hV P                  ^,          P                  RR.8X  g   Q hV P                  ^,          P                  R8X  g   Q hV P                  ^,          P
                  e   Q hR	# )
z*The conferences should be in the calendar.ztel:+1-412-555-0123,,,654321ztel:+1-412-555-0123,,,555123ztel:+1-888-555-0456,,,555123z$xmpp:chat-123@conference.example.comr   r(   r)   zAttendee dial-inN)Úlenr?   r   r   r   r   )rc   s   &r   Útest_conferences_from_filerf   ’   s-  € äÐ%×1Ñ1Ó2°aÔ7Ð7Ð7Ø!×-Ñ-¨aÕ0×4Ñ4Ð8VÔVÐVÐVØ!×-Ñ-¨aÕ0×4Ñ4Ð8VÔVÐVÐVØ!×-Ñ-¨aÕ0×4Ñ4Ð8VÔVÐVÐVà×*Ñ*¨1Õ-×1Ñ1Ø1ô	2ðð	2ð 	×*Ñ*¨1Õ-×1Ñ1Ø5ô	6ðð	6ð "×-Ñ-¨aÕ0×8Ñ8¸WÀgÐ<NÔNÐNÐNØ!×-Ñ-¨aÕ0×6Ñ6Ð:LÔLÐLÐLØ!×-Ñ-¨aÕ0×9Ñ9ÒAÐAÒAr   c                 ó¸   € \         P                  ! R4      p V P                  R8X  g   Q hV P                  e   Q hV P                  e   Q hV P
                  e   Q hR# )z"Create a conference from a string.ztel:+1-412-555-0123N)r   r
   r   r   r   r   r   s    r   Útest_conference_from_stringrh   ¥   s\   € ä×$Ò$Ð%:Ó;€JØ�>‰>Ð2Ô2Ð2Ð2Ø×ÑÒ%Ð%Ð%Ø×ÑÒ#Ð#Ð#Ø×ÑÒ&Ð&Ò&r   c                 óx   € \         P                  ! R4      p V P                  4       pVP                  R8X  g   Q hR# )z;Conference created from a string should add the value type.z
http://asdr"   N)r   r
   r#   r!   )r   r   s     r   Ú$test_from_uri_string_adds_value_typerj   ®   s2   € ä×$Ò$ \Ó2€JØ
×
Ñ
Ó
€CØ�9‰9˜ÔÐÒr   c                 ót   € \        RRR7      p V P                  4       pVP                  R,          R8X  g   Q hR# )z=A string feature should be kept as-is, not wrapped in a list.r'   r(   ©r   r   r   N©r   r#   r   r,   s     r   Útest_string_feature_passthroughrn   µ   s1   € äÐ/¸ÔA€DØ�;‰;‹=€DØ�;‰;�yÕ! WÔ,Ð,Ò,r   c                 óf   € \        R. R7      p V P                  4       pRVP                  9  g   Q hR# )z=An empty list feature should be omitted from params entirely.r'   rl   r   Nrm   r,   s     r   Ú test_empty_list_feature_filteredrp   ¼   s,   € äÐ/¸Ô<€DØ�;‰;‹=€DØ˜DŸK™KÔ'Ð'Ò'r   c                 ód   € \        RR7      p V P                  4       pRVP                  9  g   Q hR# )z+A None feature should not appear in params.r'   ©r   r   Nrm   r,   s     r   Útest_none_feature_omittedrs   Ã   s*   € äÐ/Ô0€DØ�;‰;‹=€DØ˜DŸK™KÔ'Ð'Ò'r   Ú
param_namer   r   r(   r   r   zRoom Ar   r   r   c                ó°   € \        RRR/VB pVP                  4       pVP                  V ,          \        VP	                  4       4      ^ ,          8X  g   Q hR# )zMString values for feature, label, and language should pass through unchanged.r   r'   Nr2   )r   r#   r   ÚlistÚvalues©rt   Úkwargsr-   r.   s   &&  r   Ú"test_string_passthrough_all_paramsrz   Ê   sI   € ô Ñ:Ð/Ð:°6Ñ:€DØ�;‰;‹=€DØ�;‰;�zÕ"¤d¨6¯=©=«?Ó&;¸AÕ&>Ô>Ð>Ò>r   c                ód   € \        RRR/VB pVP                  4       pWP                  9  g   Q hR# )zKEmpty lists for feature, label, and language should be omitted from params.r   r'   Nr2   rm   rx   s   &&  r   Ú#test_empty_list_filtered_all_paramsr|   Ù   s2   € ô Ñ:Ð/Ð:°6Ñ:€DØ�;‰;‹=€DØŸ[™[Ô(Ð(Ò(r   c                ób   € \        RR7      pVP                  4       pWP                  9  g   Q hR# )zINone values for feature, label, and language should not appear in params.r'   rr   Nrm   )rt   r-   r.   s   &  r   Útest_none_omitted_all_paramsr~   è   s*   € ô Ð/Ô0€DØ�;‰;‹=€DØŸ[™[Ô(Ð(Ò(r   )rt   ry   )r   r   r   )%Ú__doc__ÚpytestÚ	icalendarr   r   r   r   Úicalendar.prop.conferencer   r   r   r%   r/   Úfixturer3   r5   r9   r;   r@   rD   rF   rI   rN   rZ   r_   rc   rf   rh   rj   rn   rp   rs   ÚmarkÚparametrizerz   r|   r~   r2   r   r   Ú<module>r†      sÃ  ðÙ !ã ç 1Ó 1Ý 0ò'ò'ò$(ò"
2ð ‡�ñQó ðQð
 ‡�ñó ðð ‡‚˜˜t�}Ô%ñó &ðð
 ‡�ñó ðò
)ò<òUòAòõõ
ð ‡‚˜	Ð#7Ð8Ô9ñ#ó :ð#òBò&'òò-ò(ò(ð ‡�×ÑØà	�Y Ð(Ð)Ø	�7˜HÐ%Ð&Ø	�j $Ð'Ð(ðóñ?óð?ð ‡�×ÑØà	�Y �OÐ$Ø	�7˜B�-Ð Ø	�j "Ð%Ð&ðóñ)óð)ð ‡�×Ñ˜Ò'GÓHñ)ó Iò)r   