ó
‡ˆ\c           @   s    d  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	 m
 Z
 d d l m Z d	 „  Z d
 „  Z d „  Z d „  Z d S(   sQ   
Testing for Elliptic Envelope algorithm (sklearn.covariance.elliptic_envelope).
iÿÿÿÿN(   t   EllipticEnvelope(   t   assert_raises(   t   assert_almost_equal(   t   assert_array_almost_equal(   t   assert_array_equalt   assert_warns_message(   t   NotFittedErrorc          C   s(  t  j j d ƒ }  |  j d d ƒ } t d d ƒ } t t | j | ƒ t t | j | ƒ | j	 | ƒ | j | ƒ } | j
 | ƒ } | j | ƒ } t | | j | ƒ ƒ t | j | ƒ | j ƒ t | j | t  j d ƒ ƒ d | | d k j d ƒ t | d k ƒ t | d k  ƒ k s$t ‚ d  S(   Ni    id   i
   t   contaminationgš™™™™™¹?iÿÿÿÿg      Y@(   t   npt   randomt   RandomStatet   randnR    R   R   t   predictt   decision_functiont   fitt   score_samplesR   t   mahalanobist   dist_R   t   scoret   onest   sizet   sumt   AssertionError(   t   rndt   Xt   clft   y_predt   scorest	   decisions(    (    sN   lib/python2.7/site-packages/sklearn/covariance/tests/test_elliptic_envelope.pyt   test_elliptic_envelope   s    c          C   sð   d d g d d g d d g g }  t  d d ƒ j |  ƒ } t  ƒ  j |  ƒ } t | j d d g g ƒ | j d d g g ƒ | j ƒ t | j d d g g ƒ | j d d g g ƒ | j ƒ t | j d d g g ƒ | j d d g g ƒ ƒ d  S(   Ni   i   R   gš™™™™™É?g       @(   R    R   R   R   R   t   offset_(   t   X_traint   clf1t   clf2(    (    sN   lib/python2.7/site-packages/sklearn/covariance/tests/test_elliptic_envelope.pyt   test_score_samples!   s    !  c          C   sD   d g d g g }  t  ƒ  j |  ƒ } t t d | j |  d t ƒd  S(   Ng        g      ð?sG   raw_values parameter is deprecated in 0.20 and will be removed in 0.22.t
   raw_values(   R    R   R   t   DeprecationWarningR   t   True(   R   R   (    (    sN   lib/python2.7/site-packages/sklearn/covariance/tests/test_elliptic_envelope.pyt   test_raw_values_deprecation-   s
    c          C   s>   d g d g g }  t  ƒ  j |  ƒ } t t d t | d ƒ d  S(   Ng        g      ð?sG   threshold_ attribute is deprecated in 0.20 and will be removed in 0.22.t
   threshold_(   R    R   R   R$   t   getattr(   R   R   (    (    sN   lib/python2.7/site-packages/sklearn/covariance/tests/test_elliptic_envelope.pyt   test_threshold_deprecation6   s
    (   t   __doc__t   numpyR   t   sklearn.covarianceR    t   sklearn.utils.testingR   R   R   R   R   t   sklearn.exceptionsR   R   R"   R&   R)   (    (    (    sN   lib/python2.7/site-packages/sklearn/covariance/tests/test_elliptic_envelope.pyt   <module>   s   				