U
    ãÇ-eB  ã                   @   s`   d dl Z d dlZdejd< G dd„ deƒZdd„ Zdd	„ Zd
d„ Zedkr\eƒ  eƒ  eƒ  dS )é    NTÚrecursec                   @   s.   e Zd Zdd„ Zdd„ Zdd„ ZeeeƒZdS )ÚFooc                 C   s
   d| _ d S ©Né   ©Ú_data©Úself© r
   ú[/var/www/html/Darija-Ai-Train/env/lib/python3.8/site-packages/dill/tests/test_properties.pyÚ__init__   s    zFoo.__init__c                 C   s   | j S ©Nr   r   r
   r
   r   Ú	_get_data   s    zFoo._get_datac                 C   s
   || _ d S r   r   )r	   Úxr
   r
   r   Ú	_set_data   s    zFoo._set_dataN)Ú__name__Ú
__module__Ú__qualname__r   r   r   ÚpropertyÚdatar
   r
   r
   r   r      s   r   c                  C   s>   t  t¡} | jjd k	st‚| jjd k	s*t‚| jjd ks:t‚d S r   )ÚdillÚcopyr   r   ÚfgetÚAssertionErrorÚfsetÚfdel)ÚFooSr
   r
   r   Útest_data_not_none   s    
r   c                  C   sT   t  t¡} z| ƒ j}W n, tk
rB   t ¡ d }tt|ƒƒ‚Y nX |dksPt‚d S r   ©	r   r   r   r   Ú	ExceptionÚsysÚexc_infor   Ústr)r   ÚresÚer
   r
   r   Útest_data_unchanged#   s    
r%   c                  C   s^   t  t¡} z| ƒ }d|_|j}W n, tk
rL   t ¡ d }tt|ƒƒ‚Y nX |dksZt‚d S )Ni   r   r   )r   Úfr#   r$   r
   r
   r   Útest_data_changed.   s    

r'   Ú__main__)	r    r   ÚsettingsÚobjectr   r   r%   r'   r   r
   r
   r
   r   Ú<module>	   s   
