
    ~U eW                     *   d dl Z d dlmZmZmZmZ d dlZd dlZd dlZe j        	                    d ed          df edddgi          d	f ed
dd          df eddi          df edddgi          df edddgddgd          df eddi          df edddgi          df edddgddgd          dfg	          d             Z
d Zd Zd  Ze j        	                    d!g d"          d#             Z G d$ d%ej                  ZdS )&    N)CalendarEvent
ParametersvCalAddresszparameter, expectedValue1
parameter1s   PARAMETER1=Value1r	   Value2s   PARAMETER1=Value1,Value2TRUEzREQ-PARTICIPANT)RSVPROLEs   ROLE=REQ-PARTICIPANT;RSVP=TRUEALTREPzhttp://www.wiz.orgs   ALTREP="http://www.wiz.org"MEMBERzMAILTO:projectA@host.comzMAILTO:projectB@host.coms<   MEMBER="MAILTO:projectA@host.com","MAILTO:projectB@host.com"Value3value4)r	   
parameter2r   sM   ALTREP="http://www.wiz.org",value4;PARAMETER1=Value1;PARAMETER2=Value2,Value3PARAM s   PARAM=)
PARAMETER1r   
PARAMETER2c                     |                                  |k    sJ t          j        |                    d                    | k    sJ d S )Nutf-8)to_icalr   	from_icaldecode)	parameterexpecteds     h/var/www/dev/btcams2023/python_venv/lib/python3.11/site-packages/icalendar/tests/test_property_params.py.test_parameter_to_ical_is_inverse_of_from_icalr      sO    < (**** 8 899YFFFFFF    c                  Z    t          j        d          t          ddd          k    sJ d S )NzPARAM1=Value 1;PARA2=Value 2zValue 1zValue 2)PARAM1PARA2)r   r    r    r   *test_parse_parameter_string_without_quotesr%   )   s7     >??:YbmvNwNwCxCxxxxxxxr    c                  l    t          d          } | d         | d         cxk    r| d         k    sn J d S )Nr   r   r	   r   
PaRaMeTer1)r   r   s    r   !test_parametr_is_case_insensitiver)   ,   sL    h///I\"i&=XXXX<AXXXXXXXXXr    c                  v    t          d          } t          |                                           dgk    sJ d S )Nr   r   r   )r   listkeysr(   s    r   !test_parameter_keys_are_uppercaser-   0   s=    h///I	  !!l^333333r    zcn_param, cn_quoted))Aramisr.   )zAramis Alamedaz"Aramis Alameda")zAramis d'Alameda"Aramis d'Alameda")u   Арамис д'Аламедаu    "Арамис д'Аламеда")zAramis d"Alamedar/   c                     t                      }t          d          }| |j        d<   |                    d|           d| d|                                                    d          v sJ d S )Nztest@example.comCNATTENDEEzATTENDEE;CN=z:test@example.comr   )r   r   paramsaddr   r   )cn_param	cn_quotedeventattendees       r   test_quotingr9   4   st     GGE-..H$HOD	IIj(###6)666%--//:P:PQX:Y:YYYYYYYr    c                        e Zd Zd Zd Zd ZdS )TestPropertyParamsc                    t          d          }d|j        d<   t                      }|                    d|           t          j        |          }d}|                     ||           t          j        |          }|                     |                    d          j                            d          d           d S )Nzmailto:john.doe@example.orgz	Doe, Johnr1   	organizersV   BEGIN:VCALENDAR
ORGANIZER;CN="Doe, John":mailto:john.doe@example.org
END:VCALENDAR
	ORGANIZER)r   r3   r   r4   r   assertEqualr   get)selfcal_addressicalical_strexp_strical2s         r   test_property_paramsz'TestPropertyParams.test_property_paramsH   s     ""?@@#.4 zzk***#D))J 	7+++ "8,,;//6::4@@+NNNNNr    c                    d}t           j                            |          }|                    d          d         }|d         d          |                     |d         d                                         d           |                     |d         d         j                                        d           |                     |d         d         j        d         d           d	S )
zParse an ics string and access some property parameters then.
        This is a follow-up of a question received per email.

        a  BEGIN:VCALENDAR
VERSION:2.0
PRODID://RESEARCH IN MOTION//BIS 3.0
METHOD:REQUEST
BEGIN:VEVENT
SEQUENCE:2
X-RIM-REVISION:0
SUMMARY:Test meeting from BB
X-MICROSOFT-CDO-ALLDAYEVENT:TRUE
CLASS:PUBLIC
ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN="RembrandXS":MAILTO:rembrand@xs4all.nl
ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN="RembrandDX":MAILTO:rembrand@daxlab.com
ATTENDEE;PARTSTAT=NEEDS-ACTION;RSVP=TRUE;CN="RembrandSB":MAILTO:rembspam@xs4all.nl
UID:XRIMCAL-628059586-522954492-9750559
DTSTART;VALUE=DATE:20120814
DTEND;VALUE=DATE:20120815
DESCRIPTION:Test meeting from BB
DTSTAMP:20120813T151458Z
ORGANIZER:mailto:rembrand@daxlab.com
END:VEVENT
END:VCALENDARVEVENTr   r8   s   MAILTO:rembrand@xs4all.nls-   CN=RembrandXS;PARTSTAT=NEEDS-ACTION;RSVP=TRUEcn
RembrandXSN)	icalendarr   r   walkr?   r   r3   )rA   icscalr7   s       r   %test_parse_and_access_property_paramsz8TestPropertyParams.test_parse_and_access_property_params\   s    
,  **3//""1%j!z*1-55775	7 	7 	7z*1-4<<>>I	K 	K 	Kz*1-4T:LIIIIIr    c                     t          d          }|                     t          j        dt	          |                               dS )z+Test correct class representation.
        r   r   z*Parameters\({u?'PARAMETER1': u?'Value1'}\)N)r   
assertTruerematchstr)rA   its     r   	test_reprzTestPropertyParams.test_repr   sJ     8,,,HBCGGLL	
 	
 	
 	
 	
r    N)__name__
__module____qualname__rG   rP   rW   r$   r    r   r;   r;   F   sH        O O O("J "J "JH
 
 
 
 
r    r;   )pytestrL   r   r   r   r   unittestrS   markparametrizer   r%   r)   r-   r9   TestCaser;   r$   r    r   <module>r`      s    > > > > > > > > > > > >      				.Z8$$$&:;Z(34557RSZ):;;<<>_`Z/0113QRZ6#=? @ A ADF Zx'/&:#7"BD D E E VW
 Z"	*Z6#=? @ A ADF Zx0(; ((35 5 6 6 VW11  :G G; :Gy y yY Y Y4 4 4 . 
1 
1 
1 
 
Z Z
 
Z@
 @
 @
 @
 @
* @
 @
 @
 @
 @
r    