+
    ¾¾jÙ4  ã                   óª   € R t ^ RIHtHtHt ^ RIt^ RIHtHtHt ^ RI	H
t
HtHtHtHtHtHt ^ RIHtHt  ! R R4      t ! R R	4      t ! R
 R4      tR# )zDTests for consolidated attribute functions in icalendar.attr module.)ÚdateÚdatetimeÚ	timedeltaN)ÚAlarmÚEventÚTodo)Úget_duration_propertyÚget_end_propertyÚ&get_start_end_duration_with_validationÚget_start_propertyÚset_duration_with_lockingÚset_end_with_lockingÚset_start_with_locking)ÚIncompleteComponentÚInvalidCalendarc                   óÆ   a € ] tR t^t o RtV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR	 ltV 3R
 lR lt	V 3R lR lt
V 3R lR ltV 3R lR ltV 3R lR ltRtV tR# )ÚTestConsolidatedSettersz7Test consolidated setter functions from icalendar.attr.c                ó   <€ V ^8„  d   QhRR/# ©é   ÚreturnN© )ÚformatÚ__classdict__s   "€Úp/home/ralf/ical-fahrzeuge/venv/lib/python3.14/site-packages/icalendar/tests/test_consolidation_attr_functions.pyÚ__annotate__Ú$TestConsolidatedSetters.__annotate__   s   ø€ ÷ 4ñ 4°4ñ 4ó    c           
     óª  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\        R^^^
^ 4      RR4       VP                  \        R^^^
^ 4      8X  g   Q hVP
                  \        R^^^^ 4      8X  g   Q hVP                  \        ^R7      8X  g   Q hR# )	z1Test set_start_with_locking for Event components.ÚUIDú
test-eventÚDTSTARTéê  ÚDTENDÚend©ÚhoursN)r   Úaddr   r   Ústartr$   Údurationr   ©ÚselfÚevents   & r   Ú!test_set_start_with_locking_eventÚ9TestConsolidatedSetters.test_set_start_with_locking_event   s¿   € ä“ˆØ�	‰	�%˜Ô&Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7ô 	˜u¤h¨t°Q¸¸2¸qÓ&AÀ5È'ÔRà�{‰{œh t¨Q°°2°qÓ9Ô9Ð9Ð9Ø�y‰yœH T¨1¨a°°QÓ7Ô7Ð7Ð7Ø�~‰~¤°Ô!3Ô3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   %   s   ø€ ÷ 3ñ 3°$ñ 3r   c           
     óª  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\        R^^^
^ 4      RR4       VP                  \        R^^^
^ 4      8X  g   Q hVP
                  \        R^^^^ 4      8X  g   Q hVP                  \        ^R7      8X  g   Q hR# )	z0Test set_start_with_locking for Todo components.r   ú	test-todor!   r"   ÚDUEr$   r%   N)r   r'   r   r   r(   r$   r)   r   ©r+   Útodos   & r   Ú test_set_start_with_locking_todoÚ8TestConsolidatedSetters.test_set_start_with_locking_todo%   s¿   € ä‹vˆØ�‰�˜Ô$Ø�‰�œH T¨1¨a°°QÓ7Ô8Ø�‰�œ  q¨!¨R°Ó3Ô4ô 	˜t¤X¨d°A°q¸"¸aÓ%@À%ÈÔOà�z‰zœX d¨A¨q°"°aÓ8Ô8Ð8Ð8Ø�x‰xœ8 D¨!¨Q°°AÓ6Ô6Ð6Ð6Ø�}‰}¤	°Ô 2Ô2Ð2Ò2r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   3   s   ø€ ÷ 4ñ 4°ñ 4r   c           
     óª  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\        R^^^^ 4      RR4       VP                  \        R^^^^ 4      8X  g   Q hVP
                  \        R^^^^ 4      8X  g   Q hVP                  \        ^R7      8X  g   Q hR# )	z/Test set_end_with_locking for Event components.r   r    r!   r"   r#   r(   r%   N)r   r'   r   r   r(   r$   r)   r   r*   s   & r   Útest_set_end_with_locking_eventÚ7TestConsolidatedSetters.test_set_end_with_locking_event3   s¿   € ä“ˆØ�	‰	�%˜Ô&Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7ô 	˜U¤H¨T°1°a¸¸QÓ$?ÀÈ'ÔRà�{‰{œh t¨Q°°2°qÓ9Ô9Ð9Ð9Ø�y‰yœH T¨1¨a°°QÓ7Ô7Ð7Ð7Ø�~‰~¤°Ô!3Ô3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   A   s   ø€ ÷ 3ñ 3°ñ 3r   c           
     óª  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\        R^^^^ 4      RR4       VP                  \        R^^^^ 4      8X  g   Q hVP
                  \        R^^^^ 4      8X  g   Q hVP                  \        ^R7      8X  g   Q hR# )	z.Test set_end_with_locking for Todo components.r   r1   r!   r"   r2   r(   r%   N)r   r'   r   r   r(   r$   r)   r   r3   s   & r   Útest_set_end_with_locking_todoÚ6TestConsolidatedSetters.test_set_end_with_locking_todoA   s¿   € ä‹vˆØ�‰�˜Ô$Ø�‰�œH T¨1¨a°°QÓ7Ô8Ø�‰�œ  q¨!¨R°Ó3Ô4ô 	˜T¤8¨D°!°Q¸¸AÓ#>ÀÈÔOà�z‰zœX d¨A¨q°"°aÓ8Ô8Ð8Ð8Ø�x‰xœ8 D¨!¨Q°°AÓ6Ô6Ð6Ð6Ø�}‰}¤	°Ô 2Ô2Ð2Ò2r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   O   s   ø€ ÷ 4ñ 4°dñ 4r   c           
     ó¤  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\	        ^R7      RR4       VP
                  \        R^^^^ 4      8X  g   Q hVP                  \        R^^^^ 4      8X  g   Q hVP                  \	        ^R7      8X  g   Q hR# )	z4Test set_duration_with_locking for Event components.r   r    r!   r"   r#   r%   r(   N)r   r'   r   r   r   r(   r$   r)   r*   s   & r   Ú$test_set_duration_with_locking_eventÚ<TestConsolidatedSetters.test_set_duration_with_locking_eventO   s·   € ä“ˆØ�	‰	�%˜Ô&Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7ô 	" %¬¸Ô);¸WÀgÔNà�{‰{œh t¨Q°°2°qÓ9Ô9Ð9Ð9Ø�y‰yœH T¨1¨a°°QÓ7Ô7Ð7Ð7Ø�~‰~¤°Ô!3Ô3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   ]   s   ø€ ÷ 3ñ 3°Tñ 3r   c           
     ó¤  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\	        ^R7      RR4       VP
                  \        R^^^^ 4      8X  g   Q hVP                  \        R^^^^ 4      8X  g   Q hVP                  \	        ^R7      8X  g   Q hR# )	z3Test set_duration_with_locking for Todo components.r   r1   r!   r"   r2   r%   r(   N)r   r'   r   r   r   r(   r$   r)   r3   s   & r   Ú#test_set_duration_with_locking_todoÚ;TestConsolidatedSetters.test_set_duration_with_locking_todo]   s·   € ä‹vˆØ�‰�˜Ô$Ø�‰�œH T¨1¨a°°QÓ7Ô8Ø�‰�œ  q¨!¨R°Ó3Ô4ô 	" $¬	¸Ô(:¸GÀUÔKà�z‰zœX d¨A¨q°"°aÓ8Ô8Ð8Ð8Ø�x‰xœ8 D¨!¨Q°°AÓ6Ô6Ð6Ð6Ø�}‰}¤	°Ô 2Ô2Ð2Ò2r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   k   s   ø€ ÷ 8ñ 8°4ñ 8r   c           
     ó¤  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        ^R7      4       \	        V\        R^^^
^ 4      RR4       VP
                  \        R^^^
^ 4      8X  g   Q hVP                  \        ^R7      8X  g   Q hVP                  \        R^^^^ 4      8X  g   Q hR# )	z(Test auto-detection of property locking.r   r    r!   r"   ÚDURATIONr%   Nr#   )r   r'   r   r   r   r(   r)   r$   r*   s   & r   Ú!test_auto_detect_property_lockingÚ9TestConsolidatedSetters.test_auto_detect_property_lockingk   s¿   € ä“ˆØ�	‰	�%˜Ô&Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�*œi¨aÔ0Ô1ô 	ØÜ�T˜1˜a  QÓ'ØØô		
ð �{‰{œh t¨Q°°2°qÓ9Ô9Ð9Ð9Ø�~‰~¤°Ô!3Ô3Ð3Ð3Ø�y‰yœH T¨1¨a°°QÓ7Ô7Ð7Ò7r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   ~   s   ø€ ÷ ñ ¸Dñ r   c                ó\  € \        4       pVP                  RR4       \        P                  ! \        RR7      ;_uu_ 4        \        V\        R^^^^ 4      RR4       RRR4       \        P                  ! \        RR7      ;_uu_ 4        \        V\        R^^^^ 4      RR4       RRR4       \        P                  ! \        RR7      ;_uu_ 4        \        V\        ^R	7      RR4       RRR4       R#   + '       g   i     LŸ; i  + '       g   i     Lj; i  + '       g   i     R# ; i)
z.Test error handling in consolidated functions.r   r    zlocked must be©Úmatchr"   Úinvalidr#   Nr%   )
r   r'   ÚpytestÚraisesÚ
ValueErrorr   r   r   r   r   r*   s   & r   Ú*test_error_handling_consolidated_functionsÚBTestConsolidatedSetters.test_error_handling_consolidated_functions~   sÞ   € ä“ˆØ�	‰	�%˜Ô&ô �]Š]œ:Ð-=×>Ö>Ü"ØÜ˜˜q ! R¨Ó+ØØô	÷ ?ô �]Š]œ:Ð-=×>Ö>Ü ØÜ˜˜q ! R¨Ó+ØØô	÷ ?ô �]Š]œ:Ð-=×>Ö>Ü%ØÜ Ô"ØØô	÷ ?Ñ>÷! ?×>ú÷ ?×>ú÷ ?×>Ð>ús$   ÁC4Â	DÃDÃ4D	ÄD	ÄD+	c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r   œ   s   ø€ ÷ 2ñ 2Èñ 2r   c           
     ó’  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V\        R^^^
^ 4      RR4       VP	                  \        R^^^
^ 4      RR7       VP
                  VP
                  8X  g   Q hVP                  VP                  8X  g   Q hVP                  VP                  8X  g   Q hR	# )
z=Test that consolidated functions maintain identical behavior.r   ztest-event-1r!   r"   r#   ztest-event-2r$   )ÚlockedN)r   r'   r   r   Ú	set_startr(   r$   r)   )r+   Úevent1Úevent2s   &  r   Ú7test_consolidated_functions_maintain_identical_behaviorÚOTestConsolidatedSetters.test_consolidated_functions_maintain_identical_behaviorœ   s#  € ô “ˆØ�
‰
�5˜.Ô)Ø�
‰
�9œh t¨Q°°2°qÓ9Ô:Ø�
‰
�7œH T¨1¨a°°QÓ7Ô8ä“ˆØ�
‰
�5˜.Ô)Ø�
‰
�9œh t¨Q°°2°qÓ9Ô:Ø�
‰
�7œH T¨1¨a°°QÓ7Ô8ô 	ØÜ�T˜1˜a  QÓ'ØØô		
ð 	×Ñœ $¨¨1¨b°!Ó4¸UÐÔCð �|‰|˜vŸ|™|Ô+Ð+Ð+Ø�z‰z˜VŸZ™ZÔ'Ð'Ð'Ø�‰ &§/¡/Ô1Ð1Ò1r   r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r-   r5   r9   r=   rA   rE   rJ   rT   r\   Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r      sb   ø‡ € ÙA÷4ð 4÷3ð 3÷4ð 4÷3ð 3÷4ð 4÷3ð 3÷8ð 8÷&ð ÷<2ö 2r   r   c                   óÆ   a € ] tR t^¸t o RtV 3R lR ltV 3R lR ltV 3R lR ltV 3R lR	 ltV 3R
 lR lt	V 3R lR lt
V 3R lR ltV 3R lR ltV 3R lR ltRtV tR# )ÚTestConsolidatedPropertyGettersz,Test consolidated property getter functions.c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   Ú,TestConsolidatedPropertyGetters.__annotate__»   s   ø€ ÷ .ñ .¸dñ .r   c           
     óð   € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        ^R7      4       \	        V4      pV\        ^R7      8X  g   Q hR# )z;Test get_duration_property when DURATION is explicitly set.r   ztest-durationr!   r"   rI   r%   N)r   r'   r   r   r   ©r+   r,   r)   s   &  r   Ú,test_get_duration_property_with_duration_setÚLTestConsolidatedPropertyGetters.test_get_duration_property_with_duration_set»   sb   € ä“ˆØ�	‰	�%˜Ô)Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�*œi¨aÔ0Ô1ä(¨Ó/ˆØœ9¨1Ô-Ô-Ð-Ò-r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   Å   s   ø€ ÷ .ñ .°tñ .r   c           
     óö   € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        V4      pV\	        ^R7      8X  g   Q hR# )z:Test get_duration_property when calculated from start/end.r   ztest-calculatedr!   r"   r#   r%   N)r   r'   r   r   r   rk   s   &  r   Ú%test_get_duration_property_calculatedÚETestConsolidatedPropertyGetters.test_get_duration_property_calculatedÅ   sk   € ä“ˆØ�	‰	�%Ð*Ô+Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7ä(¨Ó/ˆØœ9¨1Ô-Ô-Ð-Ò-r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   Ï   s   ø€ ÷ 4ñ 4°ñ 4r   c           
     ó¾   € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       \        V4      pV\        R^^^^ 4      8X  g   Q hR# )z%Test get_start_property success case.r   ú
test-startr!   r"   N)r   r'   r   r   )r+   r,   r(   s   &  r   Útest_get_start_property_successÚ?TestConsolidatedPropertyGetters.test_get_start_property_successÏ   sW   € ä“ˆØ�	‰	�%˜Ô&Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9ä" 5Ó)ˆØœ  q¨!¨R°Ó3Ô3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   Ø   s   ø€ ÷ &ñ &°ñ &r   c                óÖ   € \        4       pVP                  RR4       \        P                  ! \        RR7      ;_uu_ 4        \        V4       RRR4       R#   + '       g   i     R# ; i)z0Test get_start_property when DTSTART is missing.r   rt   zNo DTSTART givenrN   N)r   r'   rQ   rR   r   r   r*   s   & r   Útest_get_start_property_missingÚ?TestConsolidatedPropertyGetters.test_get_start_property_missingØ   sB   € ä“ˆØ�	‰	�%˜Ô&ä�]Š]Ô.Ð6H×IÖIÜ˜uÔ%÷ J×I×IÒIús   ÁAÁA(	c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   à   s   ø€ ÷ 2ñ 2°$ñ 2r   c           
     óþ   € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        VR4      pV\        R^^^^ 4      8X  g   Q hR# )z(Test get_end_property when DTEND is set.r   ztest-endr!   r"   r#   N)r   r'   r   r	   ©r+   r,   r$   s   &  r   Ú test_get_end_property_with_dtendÚ@TestConsolidatedPropertyGetters.test_get_end_property_with_dtendà   st   € ä“ˆØ�	‰	�%˜Ô$Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7ä˜u gÓ.ˆØ”h˜t Q¨¨2¨qÓ1Ô1Ð1Ò1r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   ê   s   ø€ ÷ 2ñ 2°Tñ 2r   c           
     óø   € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        ^R7      4       \	        VR4      pV\        R^^^^ 4      8X  g   Q hR# )	z+Test get_end_property when DURATION is set.r   ztest-duration-endr!   r"   rI   r%   r#   N)r   r'   r   r   r	   r}   s   &  r   Ú#test_get_end_property_with_durationÚCTestConsolidatedPropertyGetters.test_get_end_property_with_durationê   sm   € ä“ˆØ�	‰	�%Ð,Ô-Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�*œi¨aÔ0Ô1ä˜u gÓ.ˆØ”h˜t Q¨¨2¨qÓ1Ô1Ð1Ò1r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri   ô   s   ø€ ÷ 3ñ 3¸ñ 3r   c           
     ór  € \        4       pVP                  RR4       VP                  R\        R^^4      4       \        VR4      pV\        R^^4      8X  g   Q h\        4       pVP                  RR4       VP                  R\	        R^^^^ 4      4       \        VR4      pV\	        R^^^^ 4      8X  g   Q hR# )z'Test get_end_property default behavior.r   ztest-defaultr!   r"   r#   ztest-default-2N)r   r'   r   r	   r   )r+   r,   r$   r[   Úend2s   &    r   Ú&test_get_end_property_default_behaviorÚFTestConsolidatedPropertyGetters.test_get_end_property_default_behaviorô   s©   € ä“ˆØ�	‰	�%˜Ô(Ø�	‰	�)œT $¨¨1Ó-Ô.ä˜u gÓ.ˆØ”d˜4  AÓ&Ô&Ð&Ð&ä“ˆØ�
‰
�5Ð*Ô+Ø�
‰
�9œh t¨Q°°2°qÓ9Ô:ä ¨Ó0ˆØ”x  a¨¨B°Ó2Ô2Ð2Ò2r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri     s   ø€ ÷  ñ  Àñ  r   c           
     ó@  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       \        VRRR4      w  r#pV\        R^^^^ 4      8X  g   Q hV\        R^^^^ 4      8X  g   Q hVe   Q hR# )z9Test get_start_end_duration_with_validation success case.r   ztest-validationr!   r"   r#   ÚVEVENTN)r   r'   r   r
   )r+   r,   r(   r$   r)   s   &    r   Ú.test_get_start_end_duration_validation_successÚNTestConsolidatedPropertyGetters.test_get_start_end_duration_validation_success  s­   € ä“ˆØ�	‰	�%Ð*Ô+Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7äEØØØØó	 
Ñˆ�Hð œ  q¨!¨R°Ó3Ô3Ð3Ð3Ø”h˜t Q¨¨2¨qÓ1Ô1Ð1Ð1ØÒÐÒr   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   ri     s   ø€ ÷ +ñ +¸tñ +r   c           
     ó$  € \        4       pVP                  RR4       VP                  R\        R^^^^ 4      4       VP                  R\        R^^^^ 4      4       VP                  R\        ^R7      4       \        P
                  ! \        RR	7      ;_uu_ 4        \        VRRR
4       RRR4       \        4       pVP                  RR4       VP                  R\        R^^4      4       VP                  R\        ^R7      4       \        P
                  ! \        RR	7      ;_uu_ 4        \        VRRR
4       RRR4       \        4       pVP                  RR4       VP                  R\        R^^4      4       VP                  R\        R^^^^ 4      4       \        P
                  ! \        RR	7      ;_uu_ 4        \        VRRR
4       RRR4       R#   + '       g   i     EL6; i  + '       g   i     L¹; i  + '       g   i     R# ; i)z8Test get_start_end_duration_with_validation error cases.r   z	test-bothr!   r"   r#   rI   r%   zOnly one of DTEND and DURATIONrN   r‹   Nztest-date-durationzDURATION must be of daysztest-type-mismatchzmust be of the same type)	r   r'   r   r   rQ   rR   r   r
   r   )r+   r,   r[   Úevent3s   &   r   Ú-test_get_start_end_duration_validation_errorsÚMTestConsolidatedPropertyGetters.test_get_start_end_duration_validation_errors  s™  € ô “ˆØ�	‰	�%˜Ô%Ø�	‰	�)œX d¨A¨q°"°aÓ8Ô9Ø�	‰	�'œ8 D¨!¨Q°°AÓ6Ô7Ø�	‰	�*œi¨aÔ0Ô1ä�]Š]œ?Ð2R×SÖSÜ2ØØØØô	÷ Tô “ˆØ�
‰
�5Ð.Ô/Ø�
‰
�9œd 4¨¨AÓ.Ô/Ø�
‰
�:œy¨qÔ1Ô2ä�]Š]œ?Ð2L×MÖMÜ2ØØØØô	÷ Nô “ˆØ�
‰
�5Ð.Ô/Ø�
‰
�9œd 4¨¨AÓ.Ô/Ø�
‰
�7œH T¨1¨a°°QÓ7Ô8ä�]Š]œ?Ð2L×MÖMÜ2ØØØØô	÷ NÑM÷9 T×SÐSú÷ N×Mú÷ N×MÐMús$   ÂGÄ+G+Æ>G>ÇG(	Ç+G;	Ç>H	r   N)r^   r_   r`   ra   rb   rl   rp   ru   ry   r~   r‚   r‡   rŒ   r‘   rc   rd   re   s   @r   rg   rg   ¸   sb   ø‡ € Ù6÷.ð .÷.ð .÷4ð 4÷&ð &÷2ð 2÷2ð 2÷3ð 3÷  ð  ÷"+ö +r   rg   c                   ó�   a € ] tR tRt o RtV 3R lR ltV 3R lR ltV 3R lR ltV 3R	 lR
 ltV 3R lR lt	V 3R lR lt
RtV tR# )ÚTestUidVendorFallbackiC  z3Test UID access for vendor-specific UID properties.c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   Ú"TestUidVendorFallback.__annotate__F  s   ø€ ÷ &ñ &¸Dñ &r   c                ód   € \        4       pVP                  RR4       VP                  R8X  g   Q hR# )z-Use X-EVOLUTION-ALARM-UID when UID is absent.úX-EVOLUTION-ALARM-UIDúevo-123N©r   r'   Úuid©r+   Úalarms   & r   Ú*test_uid_uses_evolution_alarm_uid_fallbackÚ@TestUidVendorFallback.test_uid_uses_evolution_alarm_uid_fallbackF  s*   € ä“ˆØ�	‰	Ð)¨9Ô5à�y‰y˜IÔ%Ð%Ò%r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r–   M  s   ø€ ÷ ,ñ ,°ñ ,r   c                óˆ   € \        4       pVP                  RR4       VP                  RR4       VP                  R8X  g   Q hR# )z/Prefer UID over vendor-specific UID properties.r   úcanonical-123r˜   r™   Nrš   rœ   s   & r   Útest_uid_prefers_canonical_uidÚ4TestUidVendorFallback.test_uid_prefers_canonical_uidM  s8   € ä“ˆØ�	‰	�%˜Ô)Ø�	‰	Ð)¨9Ô5à�y‰y˜OÔ+Ð+Ò+r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r–   U  s   ø€ ÷ ñ °4ñ r   c                ó@   € \        4       pVP                  R8X  g   Q hR# )z7Return the empty-string default when no UID is present.Ú N)r   r›   rœ   s   & r   Ú!test_uid_defaults_to_empty_stringÚ7TestUidVendorFallback.test_uid_defaults_to_empty_stringU  s   € ä“ˆà�y‰y˜BŒÐŠr   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r–   [  s   ø€ ÷ 	4ñ 	4Àdñ 	4r   c                ó”   € \        4       pVP                  RR4       VP                  RR4       RVn        RV9  g   Q hRV9  g   Q hR# )z@Setting uid to None removes canonical and vendor UID properties.r   r¢   r˜   r™   Nrš   rœ   s   & r   Ú4test_setting_uid_to_none_removes_evolution_alarm_uidÚJTestUidVendorFallback.test_setting_uid_to_none_removes_evolution_alarm_uid[  sI   € ä“ˆØ�	‰	�%˜Ô)Ø�	‰	Ð)¨9Ô5àˆŒ	à˜EÔ!Ð!Ð!Ø&¨eÔ3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r–   f  s   ø€ ÷ 	4ñ 	4¸tñ 	4r   c                óŠ   € \        4       pVP                  RR4       VP                  RR4       V=RV9  g   Q hRV9  g   Q hR# )z9Deleting uid removes canonical and vendor UID properties.r   r¢   r˜   r™   Nrš   rœ   s   & r   Ú-test_deleting_uid_removes_evolution_alarm_uidÚCTestUidVendorFallback.test_deleting_uid_removes_evolution_alarm_uidf  sG   € ä“ˆØ�	‰	�%˜Ô)Ø�	‰	Ð)¨9Ô5àˆIà˜EÔ!Ð!Ð!Ø&¨eÔ3Ð3Ò3r   c                ó   <€ V ^8„  d   QhRR/# r   r   )r   r   s   "€r   r   r–   q  s   ø€ ÷ 	)ñ 	)¸$ñ 	)r   c                óz   € \        4       pVP                  RR4       VP                  R8X  g   Q hV=RV9  g   Q hR# )z=Keep the existing single-string other_name fallback behavior.z
X-ALARMUIDz	alarm-123Nrš   rœ   s   & r   Ú(test_alarm_uid_keeps_x_alarmuid_fallbackÚ>TestUidVendorFallback.test_alarm_uid_keeps_x_alarmuid_fallbackq  s<   € ä“ˆØ�	‰	�, Ô,à�y‰y˜KÔ'Ð'Ð'àˆIà 5Ô(Ð(Ò(r   r   N)r^   r_   r`   ra   rb   rž   r£   r¨   r¬   r°   r´   rc   rd   re   s   @r   r”   r”   C  sD   ø‡ € Ù=÷&ð &÷,ð ,÷ð ÷	4ð 	4÷	4ð 	4÷	)ö 	)r   r”   )rb   r   r   r   rQ   Ú	icalendarr   r   r   Úicalendar.attrr   r	   r
   r   r   r   r   Úicalendar.errorr   r   r   rg   r”   r   r   r   Ú<module>r¹      sP   ðÙ Jç .Ñ .ã ç (Ñ (÷÷ ñ ÷ A÷a2ñ a2÷HHñ H÷V7)ó 7)r   