U
    ui                     @   sR   d Z ddlZddlZddlZddlmZmZ ddlZddlm	Z	 G dd dZ
dS )zTests for distutils.extension.    N)	Extensionread_setup_file   )check_warningsc                   @   s   e Zd Zdd Zdd ZdS )TestExtensionc              "   C   s   t jt jtd}t|}dd |D }|  dddddd	d
dddddddddddddddddddddd d!d"d#d$d%g"}||kstd S )&NzSetup.samplec                 S   s   g | ]
}|j qS  )name).0extr   r   N/tmp/pip-unpacked-wheel-9osl9suo/setuptools/_distutils/tests/test_extension.py
<listcomp>   s     z6TestExtension.test_read_setup_file.<locals>.<listcomp>Z_arraysurfarrayZ_cameraZ_numericsndarrayZ_numericsurfarraybaseZbufferproxyZcdromcolor	constantsZdisplayZdraweventZ	fasteventfontZgfxdrawimageZimageextZjoystickkeymaskZmixerZmixer_musicZmouseZmovieoverlayZ
pixelarrayZpypmZrectZrwobjectZscrapZsurfaceZsurflocktimeZ	transform)ospathjoindirname__file__r   sortAssertionError)selfsetupextsnameswantedr   r   r   test_read_setup_file   sP    %z"TestExtension.test_read_setup_filec              	   C   sb  t t tdg  W 5 Q R X tdg }|jdks8tt t tdd W 5 Q R X t t tdddg W 5 Q R X tdddg}|jddgksttdtdtdg}|jddgkstdD ]}t||g kstq|j	d kst|j
d kstt "}td tdddgdd	}W 5 Q R X t|jdksDtt|jd
 jdks^td S )Nr   r   filefile1file2)include_dirsdefine_macrosundef_macroslibrary_dirs	librariesruntime_library_dirsextra_objectsextra_compile_argsextra_link_argsexport_symbols	swig_optsdependsalwaysT)Zchicr   z!Unknown Extension options: 'chic')pytestZraisesr   r   r   sourcespathlibPathgetattrlanguageoptionalr   warningssimplefilterlenstrmessage)r   r
   attrwr   r   r   test_extension_init@   s*    

z!TestExtension.test_extension_initN)__name__
__module____qualname__r#   rB   r   r   r   r   r      s   2r   )__doc__r   r6   r;   distutils.extensionr   r   r4   Zcompat.py38r   r   r   r   r   r   <module>   s   