๓
P'^c           @@  ss  d  d l  m Z d  d l Z d  d l Z d  d l m Z d  d l m Z d  d l m Z d  d l	 m Z
 d  d l m Z d  d l m Z m Z m Z m Z d  d l m Z d e f d	     YZ e   Z d
 e j f d     YZ d e j f d     YZ d e j f d     YZ d e j f d     YZ d e f d     YZ d e f d     YZ d e f d     YZ d S(   i    (   t   absolute_importN(   t   defaultdict(   t   beat(   t	   platforms(   t   AppCaset   Mockt   patcht   restore_logging(   t   redirect_stdoutst   MockedShelveModulec           B@  s    e  Z e d     Z d   Z RS(   c           C@  s   i  S(   N(    (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   <lambda>   t    c         O@  s   |  j  | S(   N(   t   shelves(   t   selft   filenamet   argst   kwargs(    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   open   s    (   t   __name__t
   __module__R   R   R   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR	      s   t   MockServicec           B@  s,   e  Z e Z e Z e Z d    Z d   Z RS(   c         C@  s   t  |  j _ d  S(   N(   t   Truet	   __class__t   started(   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   start   s    c         C@  s   t  |  j _ d  S(   N(   R   R   t   in_sync(   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   sync!   s    (	   R   R   t   FalseR   R   t   mocked_shelvet   persistenceR   R   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR      s
   	t   MockBeatc           B@  s   e  Z e Z d    Z RS(   c         C@  s   t  t _ d  S(   N(   R   R   t   running(   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   run(   s    (   R   R   R   R   R    (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR   %   s   t	   MockBeat2c           B@  s   e  Z e Z d    Z RS(   c         C@  s   d  S(   N(    (   R   t   b(    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   install_sync_handler/   s    (   R   R   R   t   ServiceR#   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR!   ,   s   t	   MockBeat3c           B@  s   e  Z e Z d    Z RS(   c         C@  s   t  d   d  S(   Nt   xxx(   t	   TypeError(   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR#   6   s    (   R   R   R   R$   R#   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR%   3   s   t	   test_Beatc           B@  s   e  Z d    Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z	 e
 e d  d	     Z e
 e d
  d     Z RS(   c         C@  su   t  j d |  j d d d t  } |  j | j t j  t  j d |  j d t j d t  } |  j | j t j  d  S(   Nt   appt   loglevelt   DEBUGR   (   t   beatappt   BeatR)   R   t   assertEqualR*   t   loggingR+   (   R   R"   t   b2(    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_loglevel_string<   s    		c         C@  s~   t    |  j j _ t j d |  j d t d t  } | j   |  j	 |  j j j j
  |  j |  j j j j d d t  d  S(   NR)   t   no_colorR   i   t   colorize(   R   R)   t   logt   setupR,   R-   R   R   t   setup_loggingt
   assertTruet   calledR.   t	   call_args(   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_colorizeE   s    	
c         C@  s)   t  j d |  j d t  } | j   d  S(   NR)   R   (   R,   R-   R)   R   t   init_loader(   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_init_loaderM   s    c         C@  s)   t  j d |  j d t  } | j   d  S(   NR)   R   (   R,   R-   R)   R   t   set_process_title(   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_process_titleQ   s    c         C@  s?   t  d |  j d t  } t t _ | j   |  j t j  d  S(   NR)   R   (   R!   R)   R   R   R   R    R7   (   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_runU   s    	
c         @  sa   i    d t  j f   f d     Y} t  j |   } t  _ z | | |     SWd  | t  _ Xd  S(   Nt   Signalsc           @  s   e  Z   f d    Z RS(   c         @  s   |   | <d  S(   N(    (   R   t   sigt   handler(   t   handlers(    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   __setitem__`   s    (   R   R   RD   (    (   RC   (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR@   ^   s   (   R   R@   t   signals(   R   t   funR   R   R@   t   p(    (   RC   s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   psig[   s    c         C@  s   t  j d |  j d t  } t d |  j  } t t _ |  j | j |  } |  j t	   | d d t
    Wd  QX|  j t j  t t _ d  S(   NR)   R   t   SIGINT(   R,   R-   R)   R   R   R   RH   R#   t   assertRaisest
   SystemExitt   objectR7   (   R   R"   t   clockRC   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_install_sync_handlerj   s    	c      	   C@  s   t     y t t j d  Wn t k
 r1 n Xt j d |  j d t  } t | _	 t | j j
 _ | j   |  j t   t j j Wd  QXWd  QXd  S(   Nt   loggerR)   R   (   R   t   delattrt   syst   stdoutt   AttributeErrorR,   R-   R)   R   R   R4   t   already_setupR6   RJ   RO   (   R   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_setup_loggingt   s    
	
s   celery.apps.beat.loggerc         C@  sO   t    @ t d |  j d t d d   } | j   |  j | j j  Wd  QXd  S(   NR)   R   t   socket_timeout(	   R   R%   R)   R   t   Nonet   start_schedulerR7   t   criticalR8   (   R   RO   RR   t   stderrR"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_logs_errors   s
    

s   celery.platforms.create_pidlockc      	   C@  sB   t  d |  j d d d d  d t  } | j   |  j | j  d  S(   NR)   t   pidfilet   pidfilelockfilepidRV   R   (   R!   R)   RW   R   RX   R7   R8   (   R   t   create_pidlockRR   RZ   R"   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_use_pidfile   s    
(   R   R   R1   R:   R<   R>   R?   RH   RN   RU   R   R   R[   R_   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR(   :   s   								
		t   MockDaemonContextc           B@  s;   e  Z e Z e Z d    Z d   Z e Z d   Z e Z	 RS(   c         O@  s   d  S(   N(    (   R   R   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   __init__   s    c         C@  s   t  |  j _ |  S(   N(   R   R   t   opened(   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR      s    c         G@  s   t  |  j _ d  S(   N(   R   R   t   closed(   R   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   closeก   s    (
   R   R   R   Rb   Rc   Ra   R   t	   __enter__Rd   t   __exit__(    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR`      s   			t   test_divc           B@  s5   e  Z d    Z d   Z d   Z d   Z d   Z RS(   c         C@  s0   t  j t |  _ t  _ t j t |  _ t _ d  S(   N(   R,   R-   R   t   prevt   beat_bint   detachedR`   t   ctx(   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyR5   จ   s    c         C@  s   |  j  t _ d  S(   N(   Rh   R,   R-   (   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   teardownฎ   s    c         C@  sQ   t  j d d d g t  _ z' t j d |  j  |  j t j  Wd  t t _ Xd  S(   Ni    s   -st   fooR)   (	   RQ   t   argvRi   t   mainR)   R7   R   R   R   (   R   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt	   test_mainฑ   s
    c         C@  sL   t  j   } |  j | _ | j d t  |  j t j  |  j t j  d  S(   Nt   detach(	   Ri   R   R)   R    R   R7   R`   Rb   Rc   (   R   t   cmd(    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_detachน   s
    c         C@  sM   t  j   } |  j | _ | j d d d g  \ } } |  j | j d  d  S(   Ns   celery beats   -sRm   (   Ri   R   R)   t   parse_optionsR.   t   schedule(   R   Rr   t   optionsR   (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   test_parse_optionsภ   s    (   R   R   R5   Rl   Rp   Rs   Rw   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyRg   ฆ   s
   				(    t
   __future__R    R/   RQ   t   collectionsR   t   celeryR   R   t
   celery.binRi   t   celery.appsR,   t   celery.tests.caseR   R   R   R   t   kombu.tests.caseR   RL   R	   R   R$   R   R-   R   R!   R%   R(   R`   Rg   (    (    (    s<   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/bin/test_beat.pyt   <module>   s$   "	[