Your IP : 216.73.216.213
�
g f� � @ s� d d l Z d d l Z d d l Z d d l Z d d l m Z y d d l Z Wn e k
rj d Z Yn Xd Z Gd d � d � Z Gd d � d e j
� Z
e d k r� e j � n d S) � N)�support�
c @ s@ e Z d Z d d � Z d d � Z d d � Z d d � Z d S)
�Timerc C s% t j � | _ d | _ d | _ d S)Nr )� threadingZ Condition�_cond�_time�_stop)�self� r
�4/opt/alt/python34/lib64/python3.4/test/test_sched.py�__init__ s zTimer.__init__c C s | j � | j SWd QXd S)N)r r )r r
r
r �time s
z
Timer.timec C sk | d k s t � | j �J | | j 7} x, | j | k rW | j | _ | j j � q, W| | _ Wd QXd S)Nr )�AssertionErrorr r r �wait)r �tr
r
r �sleep s
zTimer.sleepc
C sB | d k s t � | j �! | j | 7_ | j j � Wd QXd S)Nr )r r r Z
notify_all)r r r
r
r �advance# s
z
Timer.advanceN)�__name__�
__module__�__qualname__r r
r r r
r
r
r r s
r c @ s� e Z d Z d d � Z d d � Z e j e d � d d � � Z d d � Z d
d � Z
e j e d � d d
� � Z d d � Z d d � Z
d d � Z d d � Z d S)�TestCasec s� g � � f d d � } t j t j t j � } x8 d d d d d g D]! } | j | d | | f � } qF W| j � | j � d d d d d g � d S) Nc s
� j | � S)N)�append)�x)�lr
r �<lambda>. s z%TestCase.test_enter.<locals>.<lambda>g �?g�������?g333333�?g�������?g�������?� )�sched� schedulerr
r �enter�run�assertEqual)r �funr r �zr
)r r �
test_enter, s
zTestCase.test_enterc s� g � � f d d � } t j t j t j � } x8 d d d d d g D]! } | j | d | | f � } qF W| j � | j � d d d d d g � d S) Nc s
� j | � S)N)r )r )r r
r r 7 s z(TestCase.test_enterabs.<locals>.<lambda>g�������?g{�G�z�?g���Q��?g{�G�z�?g{�G�z�?r )r r r
r �enterabsr r )r r! r r r"