σ
ίΘ[c        
   @` s  d  d l  m Z m Z m Z 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
 d d d d d d d d g
 Z d   Z d   Z d   Z d   Z e j j d e j e e g  e j d d  g  e e g d d  g e j d d g  d d g g  d    Z e j j d d% d& d' g  d    Z d   Z d  e f d!     YZ d"   Z d#   Z  d$   Z! d S((   i    (   t   absolute_importt   divisiont   print_functiont   unicode_literalsNi   (   t   NDData(   t   NDDataArray(   t   StdDevUncertaintyi   (   t   unitsu   masku   flagsu   uncertaintyu   unitu   shapeu   sizeu   dtypeu   ndimu   wcsu   convert_unit_toc          C` s?   t  d d d g  }  x# t D] } t |  |  s t  q Wd  S(   Ni   i   i   (   R   t   NDDATA_ATTRIBUTESt   hasattrt   AssertionError(   t   nddt   attr(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt-   test_nddataarray_has_attributes_of_old_nddata   s    c          C` sa   t  t j d   }  |  j d k s* t  |  j d k s? t  |  j t j t  k s] t  d  S(   Ni
   id   (   i
   i
   (   i
   i
   (   R   t   npt   zerost   shapeR
   t   sizet   dtypet   float(   t   nd(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_nddata_simple   s    c          C` s^  t  d t j d   }  |  j d k s- t  |  j d k sB t  |  j t j t  k s` t  t  d i  d t j d   }  |  j d	 k s t  |  j d k s¨ t  |  j t j t  k sΖ t  t j d
  } t d t j	 |   } t  | |  }  |  j d k st  |  j d k s't  |  j t j t  k sEt  |  j
 | k sZt  d  S(   Nt   datai
   id   t   metagΉ?(   i
   i
   (   i
   i
   (   i
   i
   (   i
   i
   (   i
   i
   (   i
   i
   (   R   R   R   R   R
   R   R   R   R   t
   zeros_liket   uncertainty(   R   R   R   (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_nddata_parameters!   s    c          C` sd   t  t j d d d g d d d g g   }  |  j d k sB t  |  j t j t  k s` t  d  S(   Ni   i   i   i   i   i   (   R   R   t   arrayR   R
   R   t   int(   R   (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_nddata_conversion6   s    -u   flags_ini   u   au   bc         C` s7   t  d d g d |  } | j |  k j   s3 t  d  S(   Ni   t   flags(   R   R   t   allR
   (   t   flags_inR   (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt'   test_nddata_flags_init_without_np_array<   s    i
   i   c      	   C` sZ   t  j t  ) } t t j d  d t j |   Wd  QX| j j d d k sV t	  d  S(   Ni
   R   i    u%   dimensions of flags do not match data(   i
   i
   (
   t   pytestt   raisest
   ValueErrorR   R   R   t   onest   valuet   argsR
   (   R   t   exc(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_nddata_flags_invalid_shapeH   s    (c          C` s5  t  t j d   }  d |  _ t d t j |    |  _ t j |  j  } t j | d t j	 |  _
 |  j d  } t j | j t j d  k  s t  t j | j j d |  j j k  sΘ t  | j t j k sΰ t  t | j
 d	 <|  j
 d
 | j
 d k st  t j |  j  |  _ |  j d  } d  S(   Ni   u   kmgΉ?R   u   mg     @@i    (   i   i   (   i    i    (   i    i    (   i    i    (   R   R   R%   t   unitR   R   R   R   R   t   boolt   maskt   convert_unit_toR   R
   t   ut   mt   TrueR   (   t   dt   tmpt   d1(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_convert_unit_toO   s    	'+ t	   SubNDDatac           B` s   e  Z d  Z d   Z RS(   um   
    Subclass for test initialization of subclasses in NDData._arithmetic and
    NDData.convert_unit_to
    c         O` sY   t  t |   j | |   |  j d  k r7 t d   n  |  j d  k rU t d   n  d  S(   Nu#   Unit for subclass must be specifiedu"   WCS for subclass must be specified(   t   superR5   t   __init__R*   t   NoneR$   t   wcs(   t   selft   argt   kwd(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyR7   j   s
    (   t   __name__t
   __module__t   __doc__R7   (    (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyR5   e   s   c          C` s]   t  j d d g  }  t |  d d d d } | j d  } t  j j | j d | j  d  S(   Ni
   R*   u   mR9   i   u   kmiθ  (   R   R%   R5   R-   t   testingt   assert_array_equalR   (   R   t   arr1t   result(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt(   test_init_of_subclass_in_convert_unit_tor   s    c          C` s©   t  d d d g d t d d d g  d d d	 d g }  t  |   } | j |  j k s] t  | j |  j k su t  | j |  j k s t  | j |  j k s₯ t  d  S(
   Ng      π?g      @g      "@R   g       @g      @R   i    i   (   R   R   R   R
   R   R   R   (   t   ndd1t   ndd2(    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt!   test_nddataarray_from_nddataarrayz   s    c          C` s   t  d d d g d t d d d g  }  t |   } | j |  j k sN t  | j |  j k sf t  | j |  j k s~ t  d  S(   Ng      π?g      @g      "@R   g       @g      @(   R   R   R   R   R
   R   R   (   RE   RF   (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   test_nddataarray_from_nddata   s    (   i
   (   i   i   (   i   i
   i
   ("   t
   __future__R    R   R   R   R"   t   numpyR   t   nddataR   t   compatR   t   nduncertaintyR   t    R   R.   R   R   R   R   R   t   markt   parametrizeR   R0   t   FalseR!   R)   R4   R5   RD   RG   RH   (    (    (    s?   lib/python2.7/site-packages/astropy/nddata/tests/test_compat.pyt   <module>   s2   "						'			