U
    e»{jS  ć                   @   sÜ   d Z ddlZddlZddlZddlmZ ddlmZm	Z	m
Z
 ej dejejdddg”dd	 Zej d
ejejfdddd
g”dd Zdd Zdd Zdd Zdd Zdd Zdd Zej di dddg”dd ZdS ) zG
Some might be indirectly tested already in ``astropy.io.fits.tests``.
é    N)ŚTable)Śdiff_valuesŚreport_diff_valuesŚwhere_not_allcloseŚaēĆõ(\Āń?é   c                 C   s   t | | rtd S ©N©r   ŚAssertionError)r   © r   ś\/var/www/html/bwave/python/venv/lib/python3.8/site-packages/astropy/utils/tests/test_diff.pyŚtest_diff_values_false   s    r   ©r   Śb)r   gń?)r   é   )r   r   c                 C   s   t | |std S r	   r
   r   r   r   r   Śtest_diff_values_true   s    r   c                  C   sV   t  ” } t d”}t d”}t||| d}|r2t|  ” }d|ksFtd|ksRtdS )zP
    Regression test for https://github.com/spacetelescope/PyFITS/issues/21
    gA(Ē$w?g ųH$w?©Śfileobjza>zb>N)ŚioŚStringIOŚnpZfloat32r   r   Śgetvalue©Śfr   r   Ś	identicalŚoutr   r   r   Śtest_float_comparison   s    

r   c                  C   s>   t  ” } d}d}t||| d}|r&t|  ” }|dks:tdS )zL
    Regression test for https://github.com/astropy/astropy/issues/4122
    ē      š?z1.0r   z7  (float) a> 1.0
    (str) b> '1.0'
           ? +   +
N©r   r   r   r   r   r   r   r   r   Śtest_diff_types+   s    ’r    c                  C   s2   t  ” } tdd| drt|  ” }|dks.tdS )z2Test comparison of different numeric scalar types.r   r   r   z   (float) a> 1.0
    (int) b> 1
Nr   )r   r   r   r   r   Śtest_diff_numeric_scalar_types>   s    r!   c                  C   sP   t  ” } t d” dd”}|d }t||| d}|r8t|  ” }|dksLtdS )z#
    Test diff-ing two arrays.
    é	   é   r   r   zy  at [0, 0]:
    a> 0
    b> 1
  at [0, 1]:
    a> 1
    b> 2
  at [0, 2]:
    a> 2
    b> 3
  ...and at 6 more indices.
N)r   r   r   ZarangeZreshaper   r   r   r   r   r   r   Śtest_array_comparisonF   s    ’r$   c                  C   sD   t  ” } t d”}t||d | d}|r,t|  ” }|dks@tdS )z6
    Test diff-ing two differently shaped arrays.
    )r   r   r#   r   r   zE  Different array shapes:
    a> (1, 2, 3)
     ?  ---
    b> (2, 3)
N)r   r   r   Śemptyr   r   r   )r   r   r   r   r   r   r   Ś!test_diff_shaped_array_comparison^   s    
’’r&   c                  C   sd   t jddd} t jddd}t ” }t| ||d}|r:t| ” }|dksNtt| | |ds`tdS )z1
    Test diff-ing two simple Table objects.
    zname    obs_date    mag_b  mag_v
M31     2012-01-02  17.0   16.0
M82     2012-10-29  16.2   15.2
M101    2012-10-31  15.1   15.5Śascii)Śformatz name    obs_date    mag_b  mag_v
M31     2012-01-02  17.0   16.5
M82     2012-10-29  16.2   15.2
M101    2012-10-30  15.1   15.5
NEW     2018-05-08   nan    9.0r   at       name  obs_date  mag_b mag_v
     ---- ---------- ----- -----
  a>  M31 2012-01-02  17.0  16.0
   ?                           ^
  b>  M31 2012-01-02  17.0  16.5
   ?                           ^
      M82 2012-10-29  16.2  15.2
  a> M101 2012-10-31  15.1  15.5
   ?               ^
  b> M101 2012-10-30  15.1  15.5
   ?               ^
  b>  NEW 2018-05-08   nan   9.0
N)r   Śreadr   r   r   r   r   )r   r   r   r   r   r   r   r   Śtest_tablediffm   s    ūś’r*   Śkwargs)ZatolZrtolc                 C   sh   t  dt jt jdg”}t  dt jt jdg”}t||f| dgfksFttt||f| d dksdtd S )Nr   g      @gffffff@r#   r   )r   ŚarrayŚnanŚinfr   r   Ślen)r+   r   r   r   r   r   Śtest_where_not_allclose   s    r0   )Ś__doc__r   Śnumpyr   ZpytestZastropy.tabler   Zastropy.utils.diffr   r   r   ŚmarkZparametrizer-   r.   r   r   r   r    r!   r$   r&   r*   r0   r   r   r   r   Ś<module>   s(   
 ’
*