U
    j                     @   sX   d Z ddlZddlmZ ddlmZ dd Zdd Zd	d
 Zdd Z	dd Z
dd ZdS )zTest vBinary    N)vBinary)
Parametersc                  C   s2   d} d}t |  |kstt || ks.td S )Ns   This is gibberishs   VGhpcyBpcyBnaWJiZXJpc2g=r   Zto_icalAssertionError	from_icaltxtZtxt_ical r	   E/tmp/pip-unpacked-wheel-g40nyxg1/icalendar/tests/prop/test_vBinary.py	test_text	   s    r   c                  C   s2   d} d}t |  |kstt || ks.td S )Ns   Binary data  Vs   QmluYXJ5IGRhdGEgEyBWr   r   r	   r	   r
   test_binary   s    r   c                   C   s0   t tdjtsttdjdddks,td S )Nr   ZBINARYBASE64)ZVALUEENCODING)
isinstancer   paramsr   r   r	   r	   r	   r
   
test_param   s    r   c                  C   s2   d} d}t |  |kstt || ks.tdS )z>Long data should not have line breaks, as that would interferesc   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaas   YWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhNr   r   r	   r	   r
   test_long_data   s    r   c                  C   s   t d} t| dkstd S )NvaluezvBinary(b'dmFsdWU='))r   reprr   )instancer	   r	   r
   	test_repr$   s    r   c                	   C   sL   t jtdd td W 5 Q R X t jtdd td W 5 Q R X d S )NzNot valid base 64 encoding.)matchr   u   áèਮ)pytestZraises
ValueErrorr   r   r	   r	   r	   r
   test_from_ical)   s    r   )__doc__r   Z	icalendarr   Zicalendar.parserr   r   r   r   r   r   r   r	   r	   r	   r
   <module>   s   