ó
x\c           @   sń   d  d l  Z d  d l Z d  d l m Z d  d l m Z d  d l Z d  d l	 m
 Z
 d  d l j j Z d e j f d     YZ d e
 f d     YZ d	 e f d
     YZ d   Z d   Z e j j d e j   e j   g  d    Z d S(   i˙˙˙˙N(   t   dtypes(   t   is_extension_array_dtype(   t   ExtensionArrayt
   DummyDtypec           B   s   e  Z RS(    (   t   __name__t
   __module__(    (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyR      s   t
   DummyArrayc           B   s5   e  Z d    Z d   Z e d    Z e d  Z RS(   c         C   s   | |  _  d  S(   N(   t   data(   t   selfR   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   __init__   s    c         C   s   |  j  S(   N(   R   (   R   t   dtype(    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt	   __array__   s    c         C   s   t    S(   N(   R   (   R   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyR
      s    c         C   sE   t  | t  r, | r( t |   |  j  S|  St j |  d | d | S(   NR
   t   copy(   t
   isinstanceR   t   typeR   t   npt   array(   R   R
   R   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   astype   s
    (   R   R   R	   R   t   propertyR
   t   TrueR   (    (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyR      s   		t   TestExtensionArrayDtypec        
   B   sł   e  Z e j j d  e j g   e j g   j e j e j g    e	   e
 e j d d g   g  d    Z e j j d  e j g   e j e j g    g  d    Z RS(   t   valuesi   i   c         C   s   t  |  s t  d  S(   N(   R   t   AssertionError(   R   R   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   test_is_extension_array_dtype(   s    c         C   s   t  |  s t  d  S(   N(   R   R   (   R   R   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt!   test_is_not_extension_array_dtype2   s    (   R   R   t   pytestt   markt   parametrizet   pdt   CategoricalR
   t   SeriesR   R   R   R   R   R   (    (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyR   &   s   *c          C   s~   t  t j d d d g   }  t j d d d g d t } |  j t  } t j | |  |  j d  } t j | |  d  S(   Ni   i   i   R
   t   object(   R   R   R   R   R   t   tmt   assert_numpy_array_equal(   t   arrt   expectedt   result(    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   test_astype:   s    c          C   sy   t  t j d d d g d t j  }  |  j |  j d t } |  | k sQ t  |  j |  j  } |  | k	 su t  d  S(   Ni   i   i   R
   R   (   R   R   R   t   int64R   R
   t   FalseR   (   R"   R$   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   test_astype_no_copyF   s
    'R
   c         C   s.   t  |  t j  s t  t |   s* t  d  S(   N(   R   R    t   ExtensionDtypeR   R   (   R
   (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyR   P   s    (   t   numpyR   R   t   pandas.core.dtypesR    t   pandas.core.dtypes.commonR   t   pandasR   t   pandas.core.arraysR   t   pandas.util.testingt   utilt   testingR    R)   R   R   R   R   R%   R(   R   R   t   CategoricalDtypet   IntervalDtypeR   (    (    (    sA   lib/python2.7/site-packages/pandas/tests/extension/test_common.pyt   <module>   s   		
	