
    1h                        d dl Z d dlZe j                  j                  e j                  j                  e j                  j
                  e j                  j                  fZdZ G d dej                        Z
 G d dej                        Zy)    N)zISS (ZARYA)zE1 25544U 98067A   21339.43187394  .00003128  00000+0  65063-4 0  9994zE2 25544  51.6429 215.9885 0004097 274.3592 259.8366 15.48933952315130c                   N    e Zd Z ej                         Zde_        d Zd Zd Z	y)HourAngleTestsz2021/12/5 13:56c                     t        j                  d      }|j                  | j                         | j	                  |j
                  d       y )NRigel        )ephemstarcomputeoassertNotEqualhaselfbs     >D:\jyotish\venv\Lib\site-packages\ephem/tests/test_rise_set.pytest_fixed_hazHourAngleTests.test_fixed_ha   s4    JJw			$&&ADD#&    c                     t        j                         }|j                  | j                         | j	                  |j
                  d       y Nr   )r   Marsr
   r   r   r   r   s     r   test_cir_pos_hazHourAngleTests.test_cir_pos_ha   s1    JJL			$&&ADD#&r   c                     t        j                  t         }|j                  | j                         | j                  |j                  d       y r   )r   readtle	tle_linesr
   r   r   r   r   s     r   test_earth_satellite_haz&HourAngleTests.test_earth_satellite_ha"   s4    MM9%			$&&ADD#&r   N)
__name__
__module____qualname__r   Observerr   dater   r   r    r   r   r   r      s(     	AAF'
'
'r   r   c                   :    e Zd ZdZd Zd Zd Zd Zd Zd Z	d Z
y	)
RiseSetTestsi'  c                    t        j                         }t        j                         }d|_        d|_        d|_        | j                  t        |j                  |            d       d|_        | j                  t         j                  |j                  |       d|_        |j                  |      }| j                  t        |j                  |            d       y )N0z
2021/11/11z+40z2021/11/11 13:22:31z+80z+70z2021/11/11 17:13:03)r   Moonr   lonr    latassertEqualstrnext_risingassertRaisesNeverUpError)r   mr   ts       r   test_never_upzRiseSetTests.test_never_up-   s    JJLNN Q]]1-.0EF%,,ammQ?
 MM!Q]]1-.0EFr   c                 6   t        j                         }t        j                         }d|_        d|_        d|_        | j                  t        |j                  |            d       d|_        | j                  t         j                  |j                  |       y )Nr%   z2022/9/7z-60z2022/9/7 12:11:26z-70)r   r&   r   r'   r    r(   r)   r*   r+   r,   AlwaysUpErrorr   r.   r   s      r   test_always_upzRiseSetTests.test_always_upA   sp    JJLNNQ]]1-.0CD%--q}}a@r   c                     t        j                         }t        j                         }t        d      |_        | j                  t              5  |j                  |       d d d        y # 1 sw Y   y xY w)Nnan)r   r&   r   floatr    r,   
ValueErrorr+   r3   s      r   test_raises_error_for_NaNz&RiseSetTests.test_raises_error_for_NaNM   sJ    JJLNNuz*MM! +**s   A))A2c                     t        j                         }d|_        d|_        d|_        d|_        t        j                         }|j                  |      }| j                  t        |      d       y )Nz69.043z20.851i  z2023/5/20 22:20z2023/5/20 22:33:50)
r   r   r(   r'   elevr    Sunr+   r)   r*   )r   observersunr/   s       r   test_avoids_infinite_loopz&RiseSetTests.test_avoids_infinite_loopT   s\    >>#)iik  % 	Q!56r   c                 L   t        j                         }t        j                         }d|_        d|_        d|_        d}|j                         }| j                  ||      }t        t        ||      d      D ]*  \  }\  }}| j                  ||dj                  |             , y )N36.4072	-105.5734
2021/11/24a  0.0 0.0 False
2021/11/23 13:51:09 previous_rising
2021/11/23 23:46:11 previous_setting
2021/11/24 13:52:08 next_rising
2021/11/24 23:45:47 next_setting

0.0 0.0 True
2021/11/23 13:52:38 previous_rising
2021/11/23 23:44:41 previous_setting
2021/11/24 13:53:38 next_rising
2021/11/24 23:44:17 next_setting

0.0 1010.0 False
2021/11/23 13:47:44 previous_rising
2021/11/23 23:49:36 previous_setting
2021/11/24 13:48:43 next_rising
2021/11/24 23:49:12 next_setting

0.0 1010.0 True
2021/11/23 13:49:33 previous_rising
2021/11/23 23:47:46 previous_setting
2021/11/24 13:50:32 next_rising
2021/11/24 23:47:22 next_setting

-0.8333 0.0 False
2021/11/23 13:46:34 previous_rising
2021/11/23 23:50:46 previous_setting
2021/11/24 13:47:33 next_rising
2021/11/24 23:50:22 next_setting

-0.8333 0.0 True
2021/11/23 13:48:03 previous_rising
2021/11/23 23:49:17 previous_setting
2021/11/24 13:49:02 next_rising
2021/11/24 23:48:53 next_setting

-0.8333 1010.0 False
2021/11/23 13:41:44 previous_rising
2021/11/23 23:55:36 previous_setting
2021/11/24 13:42:42 next_rising
2021/11/24 23:55:13 next_setting

-0.8333 1010.0 True
2021/11/23 13:43:44 previous_rising
2021/11/23 23:53:35 previous_setting
2021/11/24 13:44:43 next_rising
2021/11/24 23:53:12 next_setting
   Line {})r   r<   r   r(   r'   r    
splitlines_generate_report	enumeratezipr)   format)r   sr   expectedactualns         r   test_sunzRiseSetTests.test_sunc   s    IIKNN0b &&(&&q!,%.s8V/Da%H!A!&Xvy/?/?/BC &Ir   c                 L   t        j                         }t        j                         }d|_        d|_        d|_        d}|j                         }| j                  ||      }t        t        ||      d      D ]*  \  }\  }}| j                  ||dj                  |             , y )NrA   rB   rC   a  0.0 0.0 False
2021/11/23 02:21:39 previous_rising
2021/11/23 17:34:47 previous_setting
2021/11/24 03:15:45 next_rising
2021/11/24 18:18:46 next_setting

0.0 0.0 True
2021/11/23 02:23:09 previous_rising
2021/11/23 17:33:17 previous_setting
2021/11/24 03:17:15 next_rising
2021/11/24 18:17:18 next_setting

0.0 1010.0 False
2021/11/23 02:17:52 previous_rising
2021/11/23 17:38:32 previous_setting
2021/11/24 03:12:00 next_rising
2021/11/24 18:22:25 next_setting

0.0 1010.0 True
2021/11/23 02:19:43 previous_rising
2021/11/23 17:36:41 previous_setting
2021/11/24 03:13:51 next_rising
2021/11/24 18:20:36 next_setting

-0.8333 0.0 False
2021/11/23 02:16:31 previous_rising
2021/11/23 17:39:52 previous_setting
2021/11/24 03:10:40 next_rising
2021/11/24 18:23:43 next_setting

-0.8333 0.0 True
2021/11/23 02:18:02 previous_rising
2021/11/23 17:38:21 previous_setting
2021/11/24 03:12:11 next_rising
2021/11/24 18:22:14 next_setting

-0.8333 1010.0 False
2021/11/23 02:11:04 previous_rising
2021/11/23 17:45:16 previous_setting
2021/11/24 03:05:16 next_rising
2021/11/24 18:28:58 next_setting

-0.8333 1010.0 True
2021/11/23 02:13:10 previous_rising
2021/11/23 17:43:11 previous_setting
2021/11/24 03:07:21 next_rising
2021/11/24 18:26:56 next_setting
rD   rE   )r   r&   r   r(   r'   r    rF   rG   rH   rI   r)   rJ   )r   r.   r   rL   rM   rN   s         r   	test_moonzRiseSetTests.test_moon   s    JJLNN0b &&(&&q!,%.s8V/Da%H!A!&Xvy/?/?/BC &Ir   c           	   #      K   dD ]k  }dD ]d  }dD ]]  }||_         ||_        dj                  |||       t        D ]+  } ||||      }dj                  ||j                         - d _ f m y w)N)r   z-0.8333)r   g     @)FTz{} {} {})
use_centerz{} {} )horizonpressurerJ   METHODSr   )r   r   bodyrU   rV   rS   methodds           r   rG   zRiseSetTests._generate_report   s{     %G'"-J 'AI!)AJ$++GXzJJ")"1dzB%nnQ@@ #* H #. ( &s   A2A4N)r   r   r   maxDiffr0   r4   r9   r?   rO   rQ   rG   r!   r   r   r#   r#   *   s0    GG(
A7:Dx:Dx
r   r#   )r   unittestr   previous_risingprevious_settingr+   next_settingrW   r   TestCaser   r#   r!   r   r   <module>ra      su      
NN""	NN##	NN	NN		'X&& '2{8$$ {r   