
    -ii                         d dl Z d dlZd dlmZ d dlZd dlmZm	Z	  G d d          Z
 G d d          Z G d d          ZdS )	    N)assert_allcloseassert_array_equalc                       e Zd Zd Zd Zd Zej                            de	j
        ddfde	j
        dfdde	j
        fg          d             Zd	 Zd
S )TestBdtrc                 R    t          j        ddd          }t          |d           d S Nr            ?)scbdtrr   selfvals     c/var/www/html/bet.cuttalo.com/ml/venv/lib/python3.11/site-packages/scipy/special/tests/test_bdtr.pytestzTestBdtr.test
   s+    gaC  S!!!!!    c                 Z    t          j        g ddd          }t          |g d           d S )Nr   r	      r   r
   )      ?      ?      ?r   r   r   r   s     r   test_sum_is_onezTestBdtr.test_sum_is_one   s6    giiiC((3 1 1 122222r   c                     t          j        g ddd          }t          j        g ddd          }t          ||           d S N)皙?皙? @r   r
   r   r   r   
double_valint_vals      r   test_roundingzTestBdtr.test_rounding   sF    W___a55
')))Q,,:w/////r   k, n, pr   r
   r   c                     t          j                    5  t          j        dt                     t	          j        |||          }d d d            n# 1 swxY w Y   t          j        |          sJ d S Nignore)warningscatch_warningssimplefilterDeprecationWarningr   r   npisnanr   knpr   s        r   test_infzTestBdtr.test_inf   s     $&& 	# 	#!(,>???'!Q""C	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# 	# x}}   1AAAc                 ^    t          j        ddd          }t          j        |          sJ d S )N皙r	   r
   )r   r   r,   r-   r   s     r   test_domainzTestBdtr.test_domain"   s/    gdAs##x}}r   N)__name__
__module____qualname__r   r   r#   pytestmarkparametrizer,   infr2   r6    r   r   r   r   	   s        " " "3 3 30 0 0
 [Y	C	bfc	a)  
  
    r   r   c                       e Zd Zd Zd Zd Zej                            de	j
        ddfde	j
        dfdde	j
        fg          d             Zd	 Zd
 ZdS )	TestBdtrcc                 R    t          j        ddd          }t          |d           d S r   )r   bdtrcr   r   s     r   
test_valuezTestBdtrc.test_value(   +    hq!S!!S!!!!!r   c                 Z    t          j        g ddd          }t          |g d           d S )Nr   r   r
   )r   r   g        r   rB   r   r   s     r   r   zTestBdtrc.test_sum_is_one,   s6    hyyy!S))3 1 1 122222r   c                     t          j        g ddd          }t          j        g ddd          }t          ||           d S r   rF   r    s      r   r#   zTestBdtrc.test_rounding0   sF    Xoooq#66
(999a--:w/////r   r$   r   r
   r   c                     t          j                    5  t          j        dt                     t	          j        |||          }d d d            n# 1 swxY w Y   t          j        |          sJ d S r&   )r(   r)   r*   r+   r   rB   r,   r-   r.   s        r   r2   zTestBdtrc.test_inf5        $&& 	$ 	$!(,>???(1a##C	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ 	$ x}}r3   c                     t          j        ddd          }t          j        ddd          }t          j        |          sJ t	          |d           d S )Nr5   r	   r
   r   r   )r   rB   r,   r-   r   )r   r   val2s      r   r6   zTestBdtrc.test_domain@   sR    htQ$$xQ$$x~~S!!!!!r   c                     t          j        g ddd          }t          j        g ddd          }||z   }t          |g d           d S )Nr   r   r
   )r   r   r   )r   r   rB   r   )r   	bdtr_vals
bdtrc_valsvalss       r   test_bdtr_bdtrc_sum_to_onez$TestBdtrc.test_bdtr_bdtrc_sum_to_oneF   sT    GIIIq#..	XiiiC00
:%ooo.....r   N)r7   r8   r9   rC   r   r#   r:   r;   r<   r,   r=   r2   r6   rP   r>   r   r   r@   r@   '   s        " " "3 3 30 0 0
 [Y	C	bfc	a)  
  
" " "/ / / / /r   r@   c                       e Zd Zd Zd Zd Zej                            de	j
        ddfde	j
        dfdde	j
        fg          d             Zej                            dd	d
g          d             Zd ZdS )	TestBdtric                 R    t          j        ddd          }t          |d           d S r   r   bdtrir   r   s     r   rC   zTestBdtri.test_valueN   rD   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          ||           d S )Nr   r	   r   r
   )r   rU   r,   asarraysqrtr   )r   r   actuals      r   r   zTestBdtri.test_sum_is_oneR   s`    h1vq#&&Q271::-q|<==V$$$$$r   c                     t          j        ddgdd          }t          j        ddgdd          }t          ||           d S )Nr   r   r   r
   r   r	   rT   r    s      r   r#   zTestBdtri.test_roundingW   sF    XsCj!S11
(Aq61c**
G,,,,,r   r$   r   r
   r   c                     t          j                    5  t          j        dt                     t	          j        |||          }d d d            n# 1 swxY w Y   t          j        |          sJ d S r&   )r(   r)   r*   r+   r   rU   r,   r-   r.   s        r   r2   zTestBdtri.test_inf\   rI   r3   )r5   r	   r
   )r   r	   r
   c                 ^    t          j        |||          }t          j        |          sJ d S )N)r   rU   r,   r-   r.   s        r   r6   zTestBdtri.test_domaing   s1    
 hq!Qx}}r   c                     t          j        g ddd          }t          j        g dd|          }t          |ddt          j        g           d S )Nr   r   r
   )r   r   rU   r   r,   nan)r   rM   roundtrip_valss      r   test_bdtr_bdtri_roundtripz#TestBdtri.test_bdtr_bdtri_roundtripo   sO    GIIIq#..	)))Q	::c26(:;;;;;r   N)r7   r8   r9   rC   r   r#   r:   r;   r<   r,   r=   r2   r6   r`   r>   r   r   rR   rR   M   s        " " "% % %
- - -
 [Y	C	bfc	a)  
  
 [Y)   	 < < < < <r   rR   )r(   numpyr,   scipy.specialspecialr   r:   numpy.testingr   r   r   r@   rR   r>   r   r   <module>re      s                = = = = = = = =       <#/ #/ #/ #/ #/ #/ #/ #/L%< %< %< %< %< %< %< %< %< %<r   