
    i4
                     N   S SK r S SKJr  S SKJrJrJrJr  S SKJ	r	  S SK
Jr  S SKJrJr  S SKJr  \	" SS	9S
\S   4S j5       r\	" SS	9S
\\\   \\   \\   \\   \\   \\\      \\   \/\4   4S j5       r\	" SS	9S
\\\   \\   \\   \\   \\\      \/\4   4S j5       rg)    N)Path)Callable	GeneratorListOptional)fixture)	Singleton)SweepTaskFunctionTaskTestFunction)TaskFunctionfunction)scopereturn)NNNc               #      #    [         R                  " [        R                  " 5       5      n Sv   [        R                  " U 5        g7f)z5
Restore singletons state after the function returns
N)copydeepcopyr	   	get_state	set_state)states    X/var/www/html/ai-image-ml/venv/lib/python3.13/site-packages/hydra/extra/pytest_plugin.pyhydra_restore_singletonsr      s/     
 MM)--/0E	s   AAc                        SS[         [           S[         [           S[         [           S[         [           S[         [           S[         [        [              S[         [           S[
        S	[        4S
 jjn U $ )Ncalling_filecalling_moduletask_functionconfig_pathconfig_name	overridestemp_dirconfigure_loggingr   c                     [        5       nXl        Xl        X(l        X8l        XHl        U=(       d    / Ul        [        U5      Ul        Xxl	        U$ N)
r
   r   r   r   r   r   r   strr   r    )	r   r   r   r   r   r   r   r    sweeps	            r   _hydra_sweep_runner.<locals>._'   sK     "#)-+''#/rX"3    NF)r   r#   r   r   r   boolr
   r%   s    r   hydra_sweep_runnerr+      s    . $("'sm   - c]	
 c] DI& 4.   
* Hr'   c                        S	S[         [           S[         [           S[         [           S[         [           S[         [        [              S[        S[        4S jjn U $ )
Nr   r   r   r   r   r    r   c                 v    [        5       nU=(       d    / Ul        Xl        X6l        Xl        X&l        XVl        U$ r"   )r   r   r   r   r   r   r    )r   r   r   r   r   r    tasks          r   r%   hydra_task_runner.<locals>._M   s:      !"b(&,&!2r'   r(   )r   r#   r   r)   r   r*   s    r   hydra_task_runnerr0   ?   sq    & *."'sm  c] c]	
 DI&   
" Hr'   )r   pathlibr   typingr   r   r   r   pytestr   hydra.core.singletonr	   hydra.test_utils.test_utilsr
   r   hydra.typesr   r   r#   r)   r+   r0    r'   r   <module>r8      s     6 6  * K $ 	z),<"=   	z$SMSM\"SMSMT#YTN		
 	
	$ $N 	zSMSMSMSMT#Y	
 		
 r'   