
    _j                         S SK r S SKrS SKrS SKJr  S SKJr  S SKJr  S SKJr   " S S\R                  5      r
\S:X  a  \R                  " 5         gg)	    N)datetime)Timer)croniter)basec                   $    \ rS rSrSS jrS rSrg)CroniterSpeedTest   c                    [        SSSSS5      n[        SU5      n[        U5       H  nUR                  5         M     [        SU5      n[        U5       H  nUR                  5         M     [        SSSSS	5      n[        S
U5      n[        U5       H  nUR                  5         M     [        SS	SSS5      n[        SU5      n[        U5       H  nUR                  [         5        M     [        SS	S5      n[        SU5      n[        U5       H  nUR                  [         5        M     [        SS	S5      n[        SU5      n[        U5       H  nUR                  [         5        M     [        SS	S5      n[        SU5      n[        U5       H  nUR                  [         5        M     [        SSS5      n[        SU5      n[        U5       H  nUR                  [         5        M     [        SSS5      n[        SU5      n[        U5       H  nUR                  5         M     [        SSSSS5      n[        SU5      n[        U5       H  nUR	                  [         5        M     [        SSSSS5      n[        SU5      n[        U5       H  nUR	                  [         5        M     [        SSSSS5      n[        SU5      n[        U5       H  nUR	                  [         5        M     [        SSSSS5      n[        SU5      n[        U5       H  nUR	                  [         5        M     [        SS	S5      n[        SU5      n[        U5       H  nUR	                  [         5        M     [
        R                  " S5      n[        5       nSn	[        SUS-  -  5      n
[        SSSUS9n[        X5      n[        U
5       H7  nUR                  [         5      nUR                  UR                  5       5        M9     [        X5      n[        U
5       H7  nUR	                  [         5      nUR                  UR                  5       5        M9     g ) Ni              z*/1 * * * *z*/5 * * * *      z0 */3 * * *	   z0 0 */3 * *i     z	0 0 * * *i     z0 0 * * satz0 0 1 * wedz	0 0 1 * *      8   r   z0 0 * * sat,sunz	0 0 * * 7zEurope/Bucharestz15 0,3 * 3 *>   (   )tzinfo)r   r   rangeget_nextget_prevzoneinfoZoneInfosetintadd	utcoffset)self
iterationsdtitridt2itr2tzoffsetsdst_cron	dst_itersds               W/home/rurouni/.local/lib/python3.13/site-packages/croniter/tests/test_croniter_speed.pyrun_long_testCroniterSpeedTest.run_long_test   s   dAr2r*}b)z"ALLN # }b)z"ALLN # dAr2q)}b)z"ALLN # dAr2q)}b)z"ALL" # dAr"{B'z"ALL" # tQ#S)z"AMM(# # dAr"}b)z"ALL" # dAr"}b)z"ALL" # dAr"{B'z"ALLN # dAr2r*}b)z"ALL" # dAr2q)}b)z"ALL" # dAr1a(}b)z"ALL" # dAr2r*("-z"ALL" # dAr"{B'z"ALL" # 12%!*r/23	dAr"-x$y!AX&AKK& " x$y!AX&AKK& "    c                    [        [        R                  R                  SS5      5      n[	        5       nUR                  [        5       5        [        SUS9nSnUR                  U5      nU R                  XT:  SU SU S35        g )	NCRONITER_TEST_SPEED_ITERATIONS40zself.run_long_test(iterations))globalsP   z'Regression in croniter speed detected ( z).)
r    osenvirongetr6   updatelocalsr   timeit
assertTrue)r#   r$   globstlimitrets         r/   test_not_long_time$CroniterSpeedTest.test_not_long_timed   st    (H$OP
	VX2EBhhuo'NseSTUZT[[]%^_r2    N)r   )__name__
__module____qualname____firstlineno__r0   rD   __static_attributes__rF   r2   r/   r   r      s    T'l`r2   r   __main__)r9   unittestr   r   r>   r   r   croniter.testsr   TestCaser   rG   mainrF   r2   r/   <module>rQ      sI    
      ^` ^`B zMMO r2   