
\c           @   sd  d  d l  Z  d  d l m Z d  d l Z d  d l m Z m Z d  d l m	 Z	 m
 Z
 m Z m Z d  d l m Z d  d l m Z m Z m Z y d  d l	 Z Wn e k
 r e Z n Xe Z d   Z d   Z e j e d	 d
 d    Z e j e d	 d
 d    Z e j e d	 d
 d    Z e j e d	 d
 d    Z d e f d     YZ d S(   iN(   t   NamedTemporaryFile(   t   data_dirt   io(   t   imreadt   imsavet
   use_plugint   reset_plugins(   t   testing(   t   TestCaset   assert_array_equalt   assert_array_almost_equalc           C   s'   t  r# t j j d  t d  n  d  S(   Ni    R   (   t   imread_availablet   npt   randomt   seedR   (    (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   setup   s    c           C   s   t    d  S(   N(   R   (    (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   teardown   s    t   reasons   imageread not installedc          C   s   t  t j j t d  d t }  |  j d k s6 t  |  j t	 j
 k sN t  t  t j j t d  d t }  t	 j |  j  t	 j d k s t  d  S(   Ns	   color.pngt   flatteni   s
   camera.pngt
   AllInteger(   R   t   ost   patht   joinR   t   Truet   ndimt   AssertionErrort   dtypeR   t   float64t   sctype2chart	   typecodes(   t   img(    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   test_imread_flatten   s
    !!c          C   s4   t  t j j t d   }  |  j d k s0 t  d  S(   Ns   palette_color.pngi   (   R   R   R   R   R   R   R   (   R   (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   test_imread_palette)   s    c           C   s6   t  j t  ! t j t j j t d   Wd  QXd  S(   Ns   truncated.jpg(	   R   t   raisest   RuntimeErrorR   R   R   R   R   R   (    (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   test_imread_truncated_jpg/   s    c          C   sZ   t  j d t  }  d |  d  d  d  <t t j j t d   } t | j	 t  |   d  S(   Ni
   i   i   s   checker_bilevel.png(   i
   i
   (
   R   t   zerost   boolR   R   R   R   R   R	   t   astype(   t   expectedR   (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   test_bilevel5   s    t   TestSavec           B   s3   e  Z d  d  Z e j e d d d    Z RS(   i   c         C   s\   t  d d  } | j } | j   t | |  t |  } t | | j t j  |  d  S(   Nt   suffixs   .png(	   R    t   namet   closeR   R   R
   R&   R   t   int32(   t   selft   xt   scalingt   ft   fnamet   y(    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt	   roundtrip?   s    	
R   s   imageread not installedc         c   s   t  j } x d d d g D]u } t  j | d | t  j j |   } t  j | t  j  rm |  j | d f Vq | d j |  } |  j | f Vq Wd  S(	   Ni
   i   i   R   i   (   i
   i
   (   i
   i
   i   (   i
   i
   i   (	   R   t   uint8t   onesR   t   randt
   issubdtypet   floatingR4   R&   (   R.   R   t   shapeR/   (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   test_imsave_roundtripH   s    	%(   t   __name__t
   __module__R4   R   t   skipifR   R;   (    (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyR)   >   s   	(    R   t   tempfileR    t   numpyR   t   skimageR   R   t
   skimage.ioR   R   R   R   t   skimage._sharedR   t   skimage._shared.testingR   R	   R
   t   _imreadt   ImportErrort   FalseR   R   R   R   R>   R   R    R#   R(   R)   (    (    (    s;   lib/python2.7/site-packages/skimage/io/tests/test_imread.pyt   <module>   s$   "
			