
#þîhU  ã               @   s3   d  d l  Z  d  d l m Z Gd d „  d ƒ Z d S)é    N)Úsetoptc               @   sL   e  Z d  Z e d d „  ƒ Z e d d „  ƒ Z d d „  Z d d „  Z d	 S)
ÚTestEditc          	   C   s9   t  j ƒ  } t |  d d ƒ� } | j | ƒ Wd  QRX| S)NÚencodingzutf-8)ÚconfigparserÚConfigParserÚopenÚ	read_file)ÚfilenameÚparserÚreader© r   úB/tmp/pip-build-zijwfla7/setuptools/setuptools/tests/test_setopt.pyÚparse_config   s    zTestEdit.parse_configc          
   C   s3   t  |  d ƒ � } | j | j d ƒ ƒ Wd  QRXd  S)NÚwbzutf-8)r   ÚwriteÚencode)ÚfileÚcontentÚstrmr   r   r   Ú
write_text   s    zTestEdit.write_textc             C   s¢   | j  d ƒ } |  j t | ƒ d ƒ t j t | ƒ t d t d d ƒ ƒ ƒ |  j t | ƒ ƒ } | j d d ƒ d k s€ t ‚ | j d d ƒ d k sž t ‚ d S)	zh
        When editing a file, non-ASCII characters encoded in
        UTF-8 should be retained.
        z	setup.cfgu   [names]
jaraco=Ð´Ð¶Ð°Ñ€Ð°ÐºÐ¾ÚnamesÚotherÚyesZjaracou   Ð´Ð¶Ð°Ñ€Ð°ÐºÐ¾N)	Újoinr   Ústrr   Úedit_configÚdictr   ÚgetÚAssertionError)ÚselfÚtmpdirÚconfigr
   r   r   r   Útest_utf8_encoding_retained   s    (z$TestEdit.test_utf8_encoding_retainedc             C   s‡   | j  d ƒ } |  j t | ƒ d ƒ t j t | ƒ t d t d d ƒ ƒ ƒ | j d d ƒ } d | k sq t ‚ d | k sƒ t ‚ d	 S)
zG
        When editing a file, case of keys should be retained.
        z	setup.cfgz[names]
FoO=bArr   ZoTherr   r   ÚasciiZFoON)r   r   r   r   r   r   Z	read_textr   )r   r    r!   Úactualr   r   r   Útest_case_retained   s    (zTestEdit.test_case_retainedN)Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr   r   r"   r%   r   r   r   r   r      s   r   )r   Zsetuptools.commandr   r   r   r   r   r   Ú<module>   s   