
    fjS                         d dl Zd dlmc mZ d dlZd dlZdZeej                  vrej                  j                  d e       d dlZd dlZd dlZg dZddZd Zd Zd Zy)	    Nz/home/jay/workspace)active_dispatch_scannerauthoritative_verdict_selectorcallback_4tuple_registrycallback_owner_validatordispatch_callback_contractexecutor_callback_contractruntime_batch_state_updaterruntime_next_action_resolverruntime_reconcile_checkpoint+runtime_reconcile_checkpoint_recovery_layerself_collector_guardtask_artifact_detectorc           
      `   |xs
 t               }t        j                  t        j                  j	                  | d             t        j                  t        j                  j	                  | d             t        t        j                  j	                  | dd      d      j                          t        t        j                  j	                  | dd      d      j                          |rXt        j                  t        j                  j	                  t        dd      t        j                  j	                  | dd             t        D ]e  }||v rt        j                  t        j                  j	                  t        d| d      t        j                  j	                  | d| d             g y )Nanu_v3dispatchz__init__.pywzcallback_owner_enforcer.pyz.py)setosmakedirspathjoinopencloseshutilcopySRCTWELVE)tmpomitinclude_enforcerms       @/home/jay/workspace/tests/regression/test_dispatch_debug_2628.py_build_closure_dirr#      s   =35DKKS(+,KKS*-.c8]	3S9??Ac:}	5s;AACBGGLLj2NOGGLLj2NO	Q <9BGGLLh1#S	:GGLLh1#S	:	<<    c                    t        t        j                        }t        j                  j	                         D ci c]  \  }}|j                  d      s|| }}}t        t        j                        D ]%  }|j                  d      st        j                  |= ' |D cg c]L  }t        j                  j                  |xs d      t        j                  j                  t              k7  sK|N }}| g|z   t        j                  d d  	 t        j                  |       	 |t        j                  d d  t        t        j                        D ]%  }|j                  d      st        j                  |= ' t        j                  j                  |       y c c}}w c c}w # t        $ r}t        |      j                   dt        |      d d  cY d }~|t        j                  d d  t        t        j                        D ]%  }|j                  d      st        j                  |= ' t        j                  j                  |       S d }~ww xY w# |t        j                  d d  t        t        j                        D ]%  }|j                  d      st        j                  |= ' t        j                  j                  |       w xY w)N)r   r   .: x   )listsysr   modulesitems
startswithr   realpathr   	importlibimport_moduleupdate	Exceptiontype__name__str)	r   modname
saved_pathkv
saved_modspkeptes	            r"   _isolated_importr>   "   s   chhJ#&;;#4#4#6_41a!,,G]:^!Q$_J_#++ <<./A "Y!RWW%5%5ah3%?277CSCSTWCX%XAYDY%$,CHHQK
'( !ckk" 	#A||23KKN	# 	:&! ` Z
  5q'""#2c!fTcl^44 ckk" 	#A||23KKN	# 	:&5 !ckk" 	#A||23KKN	# 	:&sO   FF"AF/FF" "	I+%I	II 	II AK3Kc                  X   t        j                         } 	 t        |        t        D ]  }t	        | d|       }d }||u }|st        j                  d|fd||f      dt        j                         v st        j                  |      rt        j                  |      ndt        j                  |      dz  }t        j                  | d|       dz   d|iz  }t        t        j                  |            d x}} 	 t        j                  |        y # t        j                  |        w xY w)	Nzanu_v3.)is)z%(py0)s is %(py3)serr)py0py3r'   z
>assert %(py5)spy5)tempfilemkdtempr#   r   r>   
@pytest_ar_call_reprcompare@py_builtinslocals_should_repr_global_name	_saferepr_format_assertmsgAssertionError_format_explanationr   rmtree)r   r!   rA   @py_assert2@py_assert1@py_format4@py_format6s          r"   test_01rU   7   s    



C3 	.A"3'!6C-3$;---3$------3---3---$---1#Ru------	. 	ccs   C%D D)c            	      ,   t        ddt        j                  v         t        ddt        j                  v         t        dt        t        j                  v         dt        j                  v rFt        j                  d   } t        dt        | dd              t        d	t        | d
d              n@t        d       	 dd l}t        d|j                          t        d|j                          	 dd lm} t        d       y # t        $ r:}t        dt        |      j                   dt        |      d d         Y d }~Qd }~ww xY w# t        $ r:}t        dt        |      j                   dt        |      d d         Y d }~y d }~ww xY w)Nz&
After test_01 - dispatch in modules: r   z-dispatch.callback_owner_enforcer in modules: z dispatch.callback_owner_enforcerzSRC in sys.path: zdispatch.__file__: __file__NONEzdispatch.__path__: __path__zdispatch NOT in sys.modulesr   zdispatch fresh load: zdispatch __path__: zdispatch fresh FAIL: r'      z(callback_owner_enforcer direct import OKzcallback_owner_enforcer FAIL: )printr*   r+   r   r   getattrr   rW   rY   r2   r3   r4   r5    dispatch.callback_owner_enforcercallback_owner_enforcer)dd2r=   coes       r"   test_05rb   A   sr   	3J#++4M3N
OP	9:\`c`k`k:k9l
mn	cSXXo.
/0 S[[ KK
##GAz6$B#CDE#GAz6$B#CDE+,	N!)"++78'}56
S689  	N)$q'*:*:);2c!fTcl^LMM	N  S.tAw/?/?.@3q6$3<.QRRSs0   4D
 8E 
	E0EE	F0FF)NT)builtinsrI   _pytest.assertion.rewrite	assertionrewriterG   r*   r   r   r   insertr   rE   r/   r   r#   r>   rU   rb    r$   r"   <module>ri      sW      
 	chhHHOOAs   
<'*Sr$   