U
    PeG                     @   s   d Z ddlZddlZddlZejddkr8ejdZej	
ej	edZdZed Zd	ZG d
d dejZG dd deZG dd deZdS )z
Audio tests
===========
    NZKIVY_TEST_AUDIO0zAudio is not availablezsample1.oggg;On?g{Gz?g?c                   @   s,   e Zd Zdd Zdd Zdd Zdd Zd	S )
AudioTestCasec                 C   s0   dd l }|jtstddlm} |jtS )Nr   )audio)	ospathexistsSAMPLE_FILEAssertionErrorZ	kivy.corer   ZSoundLoaderload)selfr   r    r   9/tmp/pip-unpacked-wheel-xzebddm3/kivy/tests/test_audio.py	get_sound   s    zAudioTestCase.get_soundc                 C   s:   |   }d }|_|j}| jt|td ||jks6td S )Ng      ?delta)r   volumelengthassertAlmostEqualSAMPLE_LENGTHDELTAr	   )r   soundr   r   r   r   r   test_length_simple   s
    
z AudioTestCase.test_length_simplec                 C   s\   dd l }|  }|  z$|t |j}| jt|t	d W 5 |  X | jt|t	d d S Nr   r   
timer   ZplaystopsleepDELAYr   r   r   r   r   r   r   r   r   r   r   test_length_playing"   s    

z!AudioTestCase.test_length_playingc                 C   sL   dd l }|  }|  z|t W 5 |  X |j}| jt|t	d d S r   r   r   r   r   r   test_length_stopped.   s    
z!AudioTestCase.test_length_stoppedN)__name__
__module____qualname__r   r   r   r    r   r   r   r   r      s   r   c                   @   s   e Zd Zdd ZdS )AudioGstreamerTestCasec                 C   s   ddl m} ||S )Nr   )audio_gstreamer)kivy.core.audior%   ZSoundGstreamer)r   sourcer%   r   r   r   
make_sound<   s    z!AudioGstreamerTestCase.make_soundNr!   r"   r#   r(   r   r   r   r   r$   :   s   r$   c                   @   s   e Zd Zdd ZdS )AudioPygameTestCasec                 C   s   ddl m} ||S )Nr   )audio_pygame)r&   r+   ZSoundPygame)r   r'   r+   r   r   r   r(   C   s    zAudioPygameTestCase.make_soundNr)   r   r   r   r   r*   A   s   r*   )__doc__Zunittestr   ZpytestenvirongetmarkskipZ
pytestmarkr   joindirname__file__r   r   r   r   ZTestCaser   r$   r*   r   r   r   r   <module>   s   (