ó
P'—^c           @@  sÐ   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	 m
 Z
 d  d l m Z 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 d S(   i    (   t   absolute_importN(   t   registry(   t   SecurityError(   t   SecureSerializert   register_auth(   t   Certificatet	   CertStore(   t
   PrivateKeyi   (   t   CERT1t   CERT2t   KEY1t   KEY2(   t   SecurityCaset   test_SecureSerializerc           B@  sY   e  Z d  „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z	 d „  Z
 RS(	   c         C@  sI   t  ƒ  } x! | D] } | j t | ƒ ƒ q Wt t | ƒ t | ƒ | ƒ S(   N(   R   t   add_certR   R   R   (   t   selft   keyt   certt   certst   storet   c(    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   _get_s   s    	c         C@  s>   |  j  t t t g ƒ } |  j | j | j d ƒ ƒ d ƒ d  S(   Nt   foo(   R   R
   R   t   assertEqualt   deserializet	   serialize(   R   t   s(    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_serialize   s    c         C@  s2   |  j  t t t g ƒ } |  j t | j d ƒ d  S(   Ns   bad data(   R   R
   R   t   assertRaisesR   R   (   R   R   (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_deserialize   s    c         C@  s>   |  j  t t t t g ƒ } |  j t | j | j d ƒ ƒ d  S(   NR   (   R   R
   R	   R   R   R   R   R   (   R   R   (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_unmatched_key_cert!   s    	c         C@  so   |  j  t t t g ƒ } |  j  t t g  ƒ } |  j t | j | j d ƒ ƒ |  j t | j | j d ƒ ƒ d  S(   NR   (   R   R
   R   R	   R   R   R   R   (   R   t   s1t   s2(    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_unknown_source&   s    		c         C@  sV   |  j  t t t g ƒ } |  j  t t t g ƒ } |  j | j | j d ƒ ƒ d ƒ d  S(   NR   (   R   R
   R   R   R   R   (   R   R   R    (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_self_send.   s    c         C@  sV   |  j  t t t g ƒ } |  j  t t t g ƒ } |  j | j | j d ƒ ƒ d ƒ d  S(   NR   (   R   R
   R   R	   R   R   R   R   (   R   R   R    (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_separate_ends3   s    c         C@  s'   t  t t d ƒ |  j d t j ƒ d  S(   Nt    s   application/data(   R   R
   R   t   assertInR   t	   _decoders(   R   (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_register_auth8   s    c         C@  sm   xf t  d ƒ D]X } t j t j d ƒ ƒ } |  j t t t g ƒ } |  j | j	 | j
 | ƒ ƒ | ƒ q Wd  S(   Niè  i	  (   t   ranget   base64t   urlsafe_b64encodet   ost   urandomR   R
   R   R   R   R   (   R   t   it   rdataR   (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   test_lots_of_sign<   s    (   t   __name__t
   __module__R   R   R   R   R!   R"   R#   R'   R/   (    (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyR      s   								(   t
   __future__R    R+   R)   t   kombu.serializationR   t   celery.exceptionsR   t   celery.security.serializationR   R   t   celery.security.certificateR   R   t   celery.security.keyR   R$   R   R	   R
   R   t   caseR   R   (    (    (    sJ   /tmp/pip-unpacked-wheel-gV1wwp/celery/tests/security/test_serialization.pyt   <module>   s   "