
    tKg                     p    d dl Zd dlmZ d dlZd dlmZmZm	Z	  G d d      Z
 G d d      Z G d d      Zy)	    N)assert_allcloseassert_array_equalsuppress_warningsc                       e Zd Zd Zd Zd Zej                  j                  de	j                  ddfde	j                  dfdde	j                  fg      d        Zd	 Zy
)TestBdtrc                 J    t        j                  ddd      }t        |d       y Nr            ?)scbdtrr   selfvals     a/home/alanp/www/video.onchill/myenv/lib/python3.12/site-packages/scipy/special/tests/test_bdtr.pytestzTestBdtr.test   s    ggaC S!    c                 R    t        j                  g ddd      }t        |g d       y )Nr   r
      r   r   )      ?      ?      ?r   r   r   r   s     r   test_sum_is_onezTestBdtr.test_sum_is_one   s    ggiC(3 12r   c                     t        j                  g ddd      }t        j                  g ddd      }t        ||       y N)皙?皙? @r   r   r   r   r   
double_valint_vals      r   test_roundingzTestBdtr.test_rounding   s0    WW_a5
'')Q,:w/r   k, n, pr   r   r   c                     t               5 }|j                  t               t        j                  |||      }d d d        t        j                        sJ y # 1 sw Y   !xY wN)r   filterDeprecationWarningr   r   npisnanr   knpsupr   s         r   test_infzTestBdtr.test_inf   sK      CJJ)*''!Q"C ! xx}} !    -AA!c                 `    t        j                  ddd      }t        j                  |      sJ y )N皙r
   r   )r   r   r*   r+   r   s     r   test_domainzTestBdtr.test_domain    s$    ggdAs#xx}}r   N)__name__
__module____qualname__r   r   r$   pytestmarkparametrizer*   infr1   r5    r   r   r   r      sj    "30
 [[Y	C	bffc	a) 

r   r   c                       e Zd Zd Zd Zd Zej                  j                  de	j                  ddfde	j                  dfdde	j                  fg      d        Zd	 Zd
 Zy)	TestBdtrcc                 J    t        j                  ddd      }t        |d       y r	   )r   bdtrcr   r   s     r   
test_valuezTestBdtrc.test_value&       hhq!S!S!r   c                 R    t        j                  g ddd      }t        |g d       y )Nr   r   r   )r   r   g        r   rA   r   r   s     r   r   zTestBdtrc.test_sum_is_one*   s    hhy!S)3 12r   c                     t        j                  g ddd      }t        j                  g ddd      }t        ||       y r   rE   r!   s      r   r$   zTestBdtrc.test_rounding.   s0    XXoq#6
((9a-:w/r   r%   r   r   r   c                     t               5 }|j                  t               t        j                  |||      }d d d        t        j                        sJ y # 1 sw Y   !xY wr'   )r   r(   r)   r   rA   r*   r+   r,   s         r   r1   zTestBdtrc.test_inf3   K      CJJ)*((1a#C ! xx}} ! r2   c                     t        j                  ddd      }t        j                  ddd      }t        j                  |      sJ t	        |d       y )Nr4   r
   r   r    r   )r   rA   r*   r+   r   )r   r   val2s      r   r5   zTestBdtrc.test_domain>   s@    hhtQ$xxQ$xx~~S!r   c                     t        j                  g ddd      }t        j                  g ddd      }||z   }t        |g d       y )Nr   r   r   )r   r   r   )r   r   rA   r   )r   	bdtr_vals
bdtrc_valsvalss       r   test_bdtr_bdtrc_sum_to_onez$TestBdtrc.test_bdtr_bdtrc_sum_to_oneD   s:    GGIq#.	XXiC0
:%o.r   N)r6   r7   r8   rB   r   r$   r9   r:   r;   r*   r<   r1   r5   rO   r=   r   r   r?   r?   %   so    "30
 [[Y	C	bffc	a) 

"/r   r?   c                      e Zd Zd Zd Zd Zej                  j                  de	j                  ddfde	j                  dfdde	j                  fg      d        Zej                  j                  dd	d
g      d        Zd Zy)	TestBdtric                 J    t        j                  ddd      }t        |d       y r	   r   bdtrir   r   s     r   rB   zTestBdtri.test_valueL   rC   r   c                     t        j                  ddgdd      }t        j                  ddt        j                  d      z  z
  dt        j                  d      z  g      }t        ||       y )Nr   r
   r   r   )r   rT   r*   asarraysqrtr   )r   r   actuals      r   r   zTestBdtri.test_sum_is_oneP   sR    hh1vq#&Q2771:-q|<=V$r   c                     t        j                  ddgdd      }t        j                  ddgdd      }t        ||       y )Nr   r   r   r   r   r
   rS   r!   s      r   r$   zTestBdtri.test_roundingU   s8    XXsCj!S1
((Aq61c*
G,r   r%   r   r   r   c                     t               5 }|j                  t               t        j                  |||      }d d d        t        j                        sJ y # 1 sw Y   !xY wr'   )r   r(   r)   r   rT   r*   r+   r,   s         r   r1   zTestBdtri.test_infZ   rH   r2   )r4   r
   r   )r    r
   r   c                 `    t        j                  |||      }t        j                  |      sJ y r'   )r   rT   r*   r+   )r   r-   r.   r/   r   s        r   r5   zTestBdtri.test_domaine   s&    
 hhq!Qxx}}r   c                     t        j                  g ddd      }t        j                  g dd|      }t        |ddt        j
                  g       y )Nr   r   r   )r   r   rT   r   r*   nan)r   rL   roundtrip_valss      r   test_bdtr_bdtri_roundtripz#TestBdtri.test_bdtr_bdtri_roundtripm   s;    GGIq#.	)Q	:c266(:;r   N)r6   r7   r8   rB   r   r$   r9   r:   r;   r*   r<   r1   r5   r_   r=   r   r   rQ   rQ   K   s    "%
-
 [[Y	C	bffc	a) 

 [[Y) 	<r   rQ   )numpyr*   scipy.specialspecialr   r9   numpy.testingr   r   r   r   r?   rQ   r=   r   r   <module>rd      s3       P P <#/ #/L%< %<r   