python (3.11.7)

(root)/
lib/
python3.11/
unittest/
test/
__pycache__/
test_discovery.cpython-311.pyc

eSddlZddlmZddlZddlZddlZddlZddlmZddl	m
Z
ddlZddlZddl
ZGddejZGddejZed	krejdSdS)
N)abspath)support)
import_helperc<eZdZdZdZdxZxZxZZdZ	dZ
dxZZdZ
dS)TestableTestProgramNTcdSN)selfs P/BuggyBox/python/3.11.7/bootstrap/lib/python3.11/unittest/test/test_discovery.py__init__zTestableTestProgram.__init__s)__name__
__module____qualname__moduleexitdefaultTestfailfast
catchbreakbuffer	verbosityprogName
testRunner
testLoaderrrrrrrsU
FD377K7(7Z&IH""J




rrceZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdS)
TestDiscoveryc"tj}d|_|d}||d	|t5|dddddS#1swxYwYdS)N/fooz/foo/bar/baz.pyzbar.bazFz/bar/baz.py)unittest
TestLoader_top_level_dir_get_name_from_pathassertEqualassertRaisesAssertionError)r
loadernames   rtest_get_name_from_pathz%TestDiscovery.test_get_name_from_paths$&& &))*;<<y)))	

~
.
.	6	6&&}555	6	6	6	6	6	6	6	6	6	6	6	6	6	6	6	6	6	6s!BBBc
tj}tjfd}tjj

fd}tjjfd}gdddggfdt_||d}|tj_||d	}|tj_||d
|_|j	dfd	}||_	d|_
tjd
}||_t||d}	ddD}
|
ddD||	|
dS)Nc t_dSroslistdiroriginal_listdirsrrestore_listdirz6TestDiscovery.test_find_tests.<locals>.restore_listdir/)BJJJrc*tj_dSrr/pathisfileoriginal_isfilesrrestore_isfilez5TestDiscovery.test_find_tests.<locals>.restore_isfile2,BGNNNrc*tj_dSrr/r7isdiroriginal_isdirsr
restore_isdirz4TestDiscovery.test_find_tests.<locals>.restore_isdir5*BGMMMr)ztest2.pyztest1.pyz
not_a_test.pytest_dirztest.fooztest-not-a-module.pyanother_dirztest4.pyztest3.pyc.dSNrpopr7
path_listss r<lambda>z/TestDiscovery.test_find_tests.<locals>.<lambda>;*.."3"3rc,|dS)Ndirendswithr7s rr?z,TestDiscovery.test_find_tests.<locals>.isdir>s=='''rc6|dod|vS)NrOrErPrRs rr8z-TestDiscovery.test_find_tests.<locals>.isfileCs!}}U+++IMT4IIrc|dzSNz modulerrRs rrLz/TestDiscovery.test_find_tests.<locals>.<lambda>ID94Drc0||}||dzgzSNpatternz testsrrrZbaseorig_load_testss   rloadTestsFromModulez:TestDiscovery.test_find_tests.<locals>.loadTestsFromModuleK*"?67;;;D6H,---rc|Srrthings rrLz/TestDiscovery.test_find_tests.<locals>.<lambda>P%rr!test*.pycg|]}|dzg	S)
 module testsr.0r*s  r
<listcomp>z1TestDiscovery.test_find_tests.<locals>.<listcomp>Xs,444TO+,444r)test1test2rDc g|]}d|zdzgS)ztest_dir.%srfrrgs  rriz1TestDiscovery.test_find_tests.<locals>.<listcomp>Zs1(((=4/?BC(((r)test3test4r)r"r#r/r0r7r8r?
addCleanup_get_module_from_namer^
suiteClassrr$list_find_testsextendr&)r
r)r3r;rBr?r8r^	top_levelsuiteexpectedr]rAr:r2rKs           @@@@@rtest_find_testszTestDiscovery.test_find_tests+s$&&:	*	*	*	*	*'.	-	-	-	-	-	+	+	+	+	+JJJ!:02
4333
(((	(	(	(

&&&	J	J	J ''''D'D$ 4	.	.	.	.	.	.&9"//GOOF++	 )V''	:>>??442444((&(((	)	)	))))))rc	
tj}tjfd}tjj

fd}tjj		fd}dggfdt_||dtj_||dtj_||d|_|j	d
fd		}||_	d
|_
tjd}||_t||d}||gdS)Nc t_dSrr.r1srr3z=TestDiscovery.test_find_tests_socket.<locals>.restore_listdirdr4rc*tj_dSrr6r9srr;z<TestDiscovery.test_find_tests_socket.<locals>.restore_isfilegr<rc*tj_dSrr>r@srrBz;TestDiscovery.test_find_tests_socket.<locals>.restore_isdirjrCrsocketc.dSrGrHrJs rrLz6TestDiscovery.test_find_tests_socket.<locals>.<lambda>nrMrcdSNFrrRs rrLz6TestDiscovery.test_find_tests_socket.<locals>.<lambda>qsUrcdSrrrRs rrLz6TestDiscovery.test_find_tests_socket.<locals>.<lambda>terc|dzSrUrrRs rrLz6TestDiscovery.test_find_tests_socket.<locals>.<lambda>wrVrc0||}||dzgzSrXrr[s   rr^zATestDiscovery.test_find_tests_socket.<locals>.loadTestsFromModuleyr_rc|Srrras rrLz6TestDiscovery.test_find_tests_socket.<locals>.<lambda>~rcrr!rdr)r"r#r/r0r7r8r?rorpr^rqrr$rrrsr&)
r
r)r3r;rBr^rurvr]rAr:r2rKs
        @@@@@rtest_find_tests_socketz$TestDiscovery.test_find_tests_socket^s$&&:	*	*	*	*	*'.	-	-	-	-	-	+	+	+	+	+ j\
3333
(((**

&&&++''''D'D$ 4	.	.	.	.	.	.&9"//GOOF++	 )V''	:>>??#####rc(	

tj}tjfd}tjjfd}tjj

fd}gdgggg

fdt_||dtj_||fdtj_||Gdd	tfd
|_	|j
	d	fd	}||_
d|_d
|_t|d
d}||dgddgdgg|jgd|j|gdfgdS)Nc t_dSrr.r1srr3zCTestDiscovery.test_find_tests_with_package.<locals>.restore_listdirr4rc*tj_dSrr6r9srr;zBTestDiscovery.test_find_tests_with_package.<locals>.restore_isfiler<rc*tj_dSrr>r@srrBzATestDiscovery.test_find_tests_with_package.<locals>.restore_isdirrCra_directorytest_directorytest_directory2c.dSrGrHrJs rrLz<TestDiscovery.test_find_tests_with_package.<locals>.<lambda>rMrcdSNTrrRs rrLz<TestDiscovery.test_find_tests_with_package.<locals>.<lambda>TrcFtj|vSrr/r7basenamer7directoriess rrLz<TestDiscovery.test_find_tests_with_package.<locals>.<lambda>bg&6&6t&<&<K&Orc"eZdZgZgZdZdZdS):TestDiscovery.test_find_tests_with_package.<locals>.Modulec|_j|tj|dkrfd}|_dSdS)NrcTj|||fjdzgSN load_testsload_tests_argsappendr7r)testsrZr
s   r
load_testszWTestDiscovery.test_find_tests_with_package.<locals>.Module.__init__.<locals>.load_tests1,33VUG4LMMM $	M 9::rr7pathsrr/rrr
r7rs`  rrzCTestDiscovery.test_find_tests_with_package.<locals>.Module.__init__j 	
!!$'''7##D))-===;;;;;'1DOOO	>=rc"|j|jkSrrRr
others  r__eq__zATestDiscovery.test_find_tests_with_package.<locals>.Module.__eq__yEJ..rNrrrrrrrrrrModuler<E O
1
1
1
/
/
/
/
/rrc|Srrr*rs rrLz<TestDiscovery.test_find_tests_with_package.<locals>.<lambda>FF4LLrc:||}||jdzgzSNrYrfrRr[s   rr^zGTestDiscovery.test_find_tests_with_package.<locals>.loadTestsFromModule,"?67;;;D6;8999rc|Srrras rrLz<TestDiscovery.test_find_tests_with_package.<locals>.<lambda>rcrr!ztest*a_directory module teststest_directory load_teststest_directory module teststest_directory2 module testsrr"r#r/r0r7r8r?roobjectrpr^rqr$rrrsr&rrr
r)r3r;rBr^rvrrr]rAr:r2rKs       @@@@@@@rtest_find_tests_with_packagez*TestDiscovery.test_find_tests_with_packages4$&&:	*	*	*	*	*'.	-	-	-	-	-	+	+	+	+	+KJJ!2r2.
3333
((())

&&&OOOO'''	/	/	/	/	/V	/	/	/ (A'@'@'@$ 4	:	:	:	:	:	:&9"// &V''8899
	
5668:9:<	=	=	=	
MMM	O	O	O	
/!2w/0	2	2	2	2	2rc(	

tj}tjfd}tjjfd}tjj

fd}gdgggg

fdt_||dtj_||fdtj_||Gdd	tfd
|_	|j
	d	fd	}||_
d|_d
|_t|d
d}||dgddgdgg|jgd|j|gdfgdS)Nc t_dSrr.r1srr3zWTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.restore_listdirr4rc*tj_dSrr6r9srr;zVTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.restore_isfiler<rc*tj_dSrr>r@srrBzUTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.restore_isdirrCrrc.dSrGrHrJs rrLzPTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.<lambda>rMrcdSrrrRs rrLzPTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.<lambda>rrcFtj|vSrrrs rrLzPTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.<lambda>rrc"eZdZgZgZdZdZdS)NTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.Modulec|_j|tj|dkrfd}|_dSdS)NrcTj|||fjdzgSrrrs   rrzkTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.Module.__init__.<locals>.load_testsrrrrs`  rrzWTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.Module.__init__rrc"|j|jkSrrRrs  rrzUTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.Module.__eq__rrNrrrrrrrrrc|Srrrs rrLzPTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.<lambda>rrc:||}||jdzgzSrrRr[s   rr^z[TestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.loadTestsFromModulerrc|Srrras rrLzPTestDiscovery.test_find_tests_default_calls_package_load_tests.<locals>.<lambda>rcrr!rdrrrrrrrs       @@@@@@@r0test_find_tests_default_calls_package_load_testsz>TestDiscovery.test_find_tests_default_calls_package_load_testss4$&&:	*	*	*	*	*'.	-	-	-	-	-	+	+	+	+	+KJJ!2r2.
3333
((())

&&&OOOO'''	/	/	/	/	/V	/	/	/ (A'@'@'@$ 4	:	:	:	:	:	:&9"// &V''
;;<<
	
5668:9:<	=	=	=	
MMM	O	O	O
	
/!2z23	5	5	5	5	5rc	
tj

fd}||tjj		fd}||tjjfd}|||tjjtdtddgtdddgifd	}|t_d
tj_dtj_Gdd
ttj}fd|_d|_
td|_t|tdd}||dgdggg|jddg|j|gdf|gdfgdS)Nc t_dSrr.r1srr3zTTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.restore_listdirr4rc*tj_dSrr6r9srr;zSTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.restore_isfile!r<rc*tj_dSrr>r@srrBzRTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.restore_isdir%rCrr!
my_package/foo/my_package__init__.pytest_module.pyc.t|Srrrr7vfss rlist_dirzMTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.list_dir7D	??"rc.|dSNz.pyrPrRs rrLzMTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.<lambda>:u)=)=%=rc,|dSrrPrRs rrLzMTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.<lambda>;dmmE&:&:rc"eZdZgZgZdZdZdS)KTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.Modulec|_j||drfd}nfd}|_dS)Ntest_modulecTj|||fjdzgSrrrs   rrzhTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.Module.__init__.<locals>.load_testsErrcj|||fd}tj|}|||}jdz|g|zS)Nz/foo/my_package/__init__.py	start_dirrZr)rrr/r7dirnamediscover)r)rrZ__file__this_dir	pkg_testsr
s      rrzhTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.Module.__init__.<locals>.load_testsIsv,33VUG4LMMM#@#%7??8#<#<$*OO&.%4%A%A	 $	M 95  ) **r)r7rrrQrrs`  rrzTTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.Module.__init__Asx 	
!!$'''==//
*;;;;;;*****#-rc"|j|jkSrrRrs  rrzRTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.Module.__eq__TrrNrrrrrr=s<E O
-
-
-&
/
/
/
/
/rrc|Srrrs rrLzMTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.<lambda>Xrrc|Srrras rrLzMTestDiscovery.test_find_tests_customize_via_package_pattern.<locals>.<lambda>Yrcrrdzmy_package load_testsz!my_package.test_module load_testszmy_package.test_module)r/r0ror7r8r?sysremoverrr"r#rprqr$rrrsr&rr)r
r3r;rBrr)rvrrAr:r2rs       @@@@@r-test_find_tests_customize_via_package_patternz;TestDiscovery.test_find_tests_customize_via_package_patternsP
:	*	*	*	*	*((('.	-	-	-	-	-'''	+	+	+	+	+
&&&999v())M;K+LN	#	#	#	#	#
==
::	/	/	/	/	/V	/	/	/4$&&'@'@'@'@$// 'V''DDEE
	
2B>?AB	C	C	C	
&(@A	C	C	C	
/!2z2!2z24	5	5	5	5	5rc

tj}tjj
tjj
fd}dtj_||tjddfd}||tjtj	d}|
t5|dddddn#1swxYwY|
|j|||tjdtj_dtj_fd	}||g

fd
}||_t"|_|ddd}tjd}tjd}	|
|d
|
|j||

|	dfg||tjdS)Nc*tj_dSrr6r9srr;z3TestDiscovery.test_discover.<locals>.restore_isfiletr<rcdSrrrRs rrLz-TestDiscovery.test_discover.<locals>.<lambda>wrrc*tjdd<dSr)rr7)
orig_sys_pathsrrestore_pathz1TestDiscovery.test_discover.<locals>.restore_path{s'CHQQQKKKrr!z/foo/bar
top_level_dircdSrrrRs rrLz-TestDiscovery.test_discover.<locals>.<lambda>sdrcdSrrrRs rrLz-TestDiscovery.test_discover.<locals>.<lambda>rrc*tj_dSrr>r@srrBz2TestDiscovery.test_discover.<locals>.restore_isdirrCrc8||fdgSNr)r)rrZ_find_tests_argss  rrsz0TestDiscovery.test_discover.<locals>._find_testss$##Y$89999rz/foo/bar/bazrZz	['tests'])r"r#r/r7r8r?rorrnormpathr'ImportErrorrr&r$assertInrsstrrq)r
r)r;r	full_pathrBrsrvrrrrrAr:s          @@@@r
test_discoverzTestDiscovery.test_discoveros$&&'.	-	-	-	-	-,+'''
	(	(	(	(	(%%%GOOBG$4$4V$<$<==	


{
+
+	>	>OOJfO===	>	>	>	>	>	>	>	>	>	>	>	>	>	>	>	
.	:::

i*****))
	+	+	+	+	+
&&&					)	:FF
33
GOON33	,,,.
>>>)Y	,B+CDDD

mSX.....s*DDDctddgtddgifd}|ttdtj|t_|ttjdtjjdtj_|ttjd	tjjd
tj_|tjj	tdGddttj}fd
|_
d|_|dd}||dggdS)Nz	/toplevelstartdirz/toplevel/startdirrc.t|Srrrs rrz[TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.list_dirrrr0r8c,|dSrrPrRs rrLz[TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.<lambda>rrr?c.|dSrrPrRs rrLz[TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.<lambda>rrc(eZdZgZgZdZdZdZdS)YTestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.Modulec||_dSrrR)r
r7s  rrzbTestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.Module.__init__s
 			rcd|jzgS)Nzload_tests called rR)r
r)rrZs    rrzdTestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.Module.load_testss,ty899rc"|j|jkSrrRrs  rrz`TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.Module.__eq__rrN)rrrrrrrrrrrrrsKE O
!
!
!
:
:
:
/
/
/
/
/rrc|Srrrs rrLz[TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.<lambda>rrc|Srrras rrLz[TestDiscovery.test_discover_start_dir_is_package_calls_package_load_tests.<locals>.<lambda>rcrrzload_tests called startdir)rrosetattrr/r0r7r8r?rrrr"r#rprqrr&)r
rr)rvrrs    @@r;test_discover_start_dir_is_package_calls_package_load_testszITestDiscovery.test_discover_start_dir_is_package_calls_package_load_testssu{##j\+,,}o?	#	#	#	#	#Y
;;;
(BGNCCC::'27=AAA==
)=)=>>>	/	/	/	/	/V	/	/	/$&&'@'@'@'@$// 4KPP	
789	;	;	;	;	;rctjfdt_tjjdtj_tjddfd}||dS)Nc
gSrr)_fakefiles rrLz8TestDiscovery.setup_import_issue_tests.<locals>.<lambda>s	zrcdSrrrs rrLz8TestDiscovery.setup_import_issue_tests.<locals>.<lambda>s4rcdtj_t_tjdd<dSr)r/r7r8r0r)r8r0rsrrestorez7TestDiscovery.setup_import_issue_tests.<locals>.restores&#BGN BJ'CHQQQKKKr)r/r0r7r8rro)r
rr r8r0rs ` @@@rsetup_import_issue_testsz&TestDiscovery.setup_import_issue_testss}*))))
'
	(	(	(	(	(	(	(	
     rc6|ttdtj|ttjdtjj|ttjdtjj|tjjtdttjfd}|t_dtj_dtj_dS)Nr0r8r?c.t|Srrrs rrz@TestDiscovery.setup_import_issue_package_tests.<locals>.list_dirrrc.|dSrrPrRs rrLz@TestDiscovery.setup_import_issue_package_tests.<locals>.<lambda>rrc,|dSrrPrRs rrLz@TestDiscovery.setup_import_issue_package_tests.<locals>.<lambda>rr)rorr/r0r7r8r?r__setitem__slicerr)r
rrs ` r setup_import_issue_package_testsz.TestDiscovery.setup_import_issue_package_testssY
;;;(BGNCCC'27=AAA,eDkk4>>JJJ	#	#	#	#	#
==
::rctj}|d|d}|tjtj|	|
d|g|j|	dt|j|jd}|d|vd|ztt|dd}|t"5|ddddS#1swxYwYdS)Ntest_this_does_not_exist.py.rrz6Failed to import test module: test_this_does_not_existmissing error string in %r)r"r#r!rrr/getcwdrr7r&countTestCasesassertNotEqualerrorslen
assertTruerrr'rtest_this_does_not_exist)r
r)rverrortests     r.test_discover_with_modules_that_fail_to_importz<TestDiscovery.test_discover_with_modules_that_fail_to_imports$&&%%&CDDD$$

bikk38,,,--//333B
...C
..///
a DM(50	2	2	2DKKN##A&


{
+
+	,	,))+++	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,	,sE&&E*-E*ctddgtdddgi}||gfd}tj}||_|td}|tdtj|	|
d|g|j|	dt|j|jd}|d	|vd
|ztt|dd}|t"5|dddn#1swxYwY|	dgt't(jdzD])}t)jt)j||*dS)Nr!rrrrcL|td)NzCannot import Name)rrr*import_callss rrpz`TestDiscovery.test_discover_with_init_modules_that_fail_to_import.<locals>._get_module_from_names&%%%2333rrrz(Failed to import test module: my_packager,)rr(r"r#rprrrr7r&r.r/r0r1r2rrr'rrrangepickleHIGHEST_PROTOCOLloadsdumps)	r
rrpr)rvr4r5protor:s	        @r3test_discover_with_init_modules_that_fail_to_importzATestDiscovery.test_discover_with_init_modules_that_fail_to_imports.v())M;K+LN--c222	4	4	4	4	4$&&'<$00

gfoosx000--//333B
...C
..///
a 6%?(50	2	2	2DKKN##A&


{
+
+		OO															~66662Q677	4	4ELdE223333	4	4s?F  F$'F$cZtjjstjdtj}d}||_|d|d}||	dtj
}|||t|j
dttjdzD])}tjtj||*dS)NSuite cleanup is disabledc*tjdN	skipperoo)r"SkipTest)r*s rrpzeTestDiscovery.test_discover_with_module_that_raises_SkipTest_on_import.<locals>._get_module_from_names#K000rztest_skip_dummy.pyr+r)r"
BaseTestSuite_cleanuprGr#rpr!rr&r.
TestResultrunr1skippedr;r<r=r>r?)r
r)rprvresultr@s      r8test_discover_with_module_that_raises_SkipTest_on_importzFTestDiscovery.test_discover_with_module_that_raises_SkipTest_on_imports%.	A#$?@@@$&&	1	1	1'<$%%&:;;;$$--//333$&&
		&V^,,a00062Q677	5	5ELeU334444	5	5rctjjstjdt	ddgt	dddgi}||gfd}tj}||_|t	d}|	t	dtj||
dtj}|||t!|jd||jd|dgt't(jdzD])}t)jt)j||*dS)	NrCr!rrrrcV|tjdrE)rr"rGr9s rrpzjTestDiscovery.test_discover_with_init_module_that_raises_SkipTest_on_import.<locals>._get_module_from_name2s(%%%#K000rr)r"rHrIrGrr(r#rprrrr7r&r.rJrKr1rLtestsRunr;r<r=r>r?)r
rrpr)rvrMr@r:s       @r=test_discover_with_init_module_that_raises_SkipTest_on_importzKTestDiscovery.test_discover_with_init_module_that_raises_SkipTest_on_import*s%.	A#$?@@@v())M;K+LN--c222	1	1	1	1	1$&&'<$00

gfoosx000--//333$&&
		&V^,,a000!,,,~66662Q677	5	5ELeU334444	5	5rct}g}|j|_|ddg||ggg|dd<|gd||ddggdS)N	somethingr)rTrfoobarrUrV)rr
_do_discovery	parseArgsr&r
programargss   r$test_command_line_handling_parseArgsz2TestDiscovery.test_command_line_handling_parseArgsEs%'' $;
3444t$$$QQQAAABBB/00000rcpt}g}|j|_|dg||gg||jd||jd||jd||j	ddS)NrTrF
rrrWrXr&rassertIsrrrrYs   r.test_command_line_handling_discover_by_defaultz<TestDiscovery.test_command_line_handling_discover_by_defaultQs%'' $;-(((t$$$*A...

gne,,,

g(%000

g&.....rcrt}g}|j|_|gd||gg||jd||jd||jd||j	ddS)N)rT-vz-brb-c-fTr^rYs   r;test_command_line_handling_discover_by_default_with_optionszITestDiscovery.test_command_line_handling_discover_by_default_with_options]s%'' $EEEFFFt$$$*A...

gnd+++

g($///

g&-----rct}d|_tj5}|t
5}|gddddn#1swxYwYdddn#1swxYwY||jj	d|
d|dS)N)onetwothreefour)rezusage:)rrrcaptured_stderrr'
SystemExitrWr&	exceptionr[rgetvalue)r
rZstderrcms    r:test_command_line_handling_do_discovery_too_many_argumentszHTestDiscovery.test_command_line_handling_do_discovery_too_many_argumentsjsY%''!

$
&
&	C&


z
*
*	C.0!!"A"A"ABBB	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	C	
*D111

h 1 122222s5A?A(A?(A,	,A?/A,	0A??BBcttj}|Gddt}||_|dg||jdgdS)NceZdZgZdZdS)YTestDiscovery.test_command_line_handling_do_discovery_uses_default_loader.<locals>.Loaderc@|j|||fdSrr[rr
rrZrs    rrzbTestDiscovery.test_command_line_handling_do_discovery_uses_default_loader.<locals>.Loader.discover|$	  )Wm!DEEEwrNrrrr[rrrrLoaderruz(D




rr{rbr+rdN)	r__new__r"TestProgram_initArgParsersrrWr&r[r
rZr{s   r;test_command_line_handling_do_discovery_uses_default_loaderzITestDiscovery.test_command_line_handling_do_discovery_uses_default_loadervs..!566!!!					V			$VXXtf%%%'>&?@@@@@rc4	t}Gddt}|dg|||jd||jd||jdgg|_t}|dg|||jd||jdgg|_t}|g|||jd||jdgg|_t}|d	g|||jd||jd
gg|_t}|d	dg|||jd||jdgg|_t}|gd
|||jd||jd
gg|_t}|dd	g|||jd||jd
gg|_t}|dd	g|||jd||jdgg|_t}|dd	g|||jd||jdg||j||j	g|_t}|gd|||jd||jdg||jd|
|j|
|j	dS)NceZdZgZdZdS)RTestDiscovery.test_command_line_handling_do_discovery_calls_loader.<locals>.Loaderc@|j|||fdSrrwrxs    rrz[TestDiscovery.test_command_line_handling_do_discovery_calls_loader.<locals>.Loader.discoverryrNrzrrrr{rr|rr{rb)r{rerr}z	--verbosefish)rrdNeggs)rrN)rrham-sz-t)r+rdr-p)r+rN)rrrrrbrdrc)rrrWr&rr5r[assertFalserrr2rs   r4test_command_line_handling_do_discovery_calls_loaderzBTestDiscovery.test_command_line_handling_do_discovery_calls_loaders%''					V				tfV444*A...w///'>&?@@@%''{mF;;;w///'>&?@@@%''b000w///'>&?@@@%''vhv666w///'A&BCCC%''vv.v>>>w///'=&>???%''555fEEEw///'>&?@@@%''tVnV<<<w///'A&BCCC%''tVnV<<<w///'@&ABBB%''tVnV<<<w///':&;<<<)***+,,,%''LLL%+		-	-	-w///'=&>???*A...()))*+++++rc	
Gddt}|tjd<tjdtj	tjjtjjtjj	
	
fd}|
|d}d}d}|t_|tj_|tj_tjdkr tjjtj_	S)	NceZdZdZdS)0TestDiscovery.setup_module_clash.<locals>.Modulez
bar/foo.pyN)rrrrrrrrrs#HHHrrrUct_tj_tj_tj_tjd=tjvr!tjdSdS)NrU)	r/r0r7r8r?realpathrmodulesr)r	rAr:r2original_realpathsrcleanupz1TestDiscovery.setup_module_clash.<locals>.cleanups_)BJ,BGN*BGM0BGE"CH$$	*****%$rcdgSNfoo.pyrrs rr0z1TestDiscovery.setup_module_clash.<locals>.listdirs
:rcdSrrrs rr8z0TestDiscovery.setup_module_clash.<locals>.isfile4rcdSrrrs rr?z/TestDiscovery.setup_module_clash.<locals>.isdirrrnt)rrrr/r7rr0r8r?rror*)r
rrr0r8r?r	rAr:r2rs      @@@@@rsetup_module_clashz TestDiscovery.setup_module_clashs	$	$	$	$	$V	$	$	$#EGOOE**	:'.G,	+	+	+	+	+	+	+	+	+	
   									


7d?? "wBGrc|}tj}tjd}tjd}t
jd|d|d}|td|z|j
dd|tjd	|dS)
NrVrUz''foo' module incorrectly imported from z. Expected z$. Is this module globally installed?z^%s$rrr)
rr"r#r/r7rreescapeassertRaisesRegexrrr&r)r
r	r)mod_direxpected_dirmsgs      rtest_detect_module_clashz&TestDiscovery.test_detect_module_clashs++--	$&&'//%((wu--ii8?OPP#vX		
	
	
	
!i00000rc|}tjjtjdtjdfd}||fd}|tj_t
j}|dddS)NrVrUc*tj_dSr)r/r7r)rsrrz5TestDiscovery.test_module_symlink_ok.<locals>.cleanups0BGrc|tjdkr tjdS|Sr)r/r7join)r7rrs rrz6TestDiscovery.test_module_symlink_ok.<locals>.realpaths9rw||GX6666w||L(;;;Krrr)	rr/r7rrror"r#r)r
r	rrr)rrrs     @@@rtest_module_symlink_okz$TestDiscovery.test_module_symlink_oks++--	G,'//%((wu--	1	1	1	1	1   						$$&&%:::::rctj}gtjtjtjjd_fd}||_	|
d}j|j
dS)NFcBd_|Sr)wasRunr&)rrZexpectedPathr
rs  rrszBTestDiscovery.test_discovery_from_dotted_path.<locals>._find_testss%DKY555Lrz
unittest.test)r"r#r/r7rrr5rrrsrr2r&_tests)r
r)rsrvrrs`   @@rtest_discovery_from_dotted_pathz-TestDiscovery.test_discovery_from_dotted_paths$&&wrwx}7M'N'NOO							)00$$$u-----rctj}tjdt_tjjtjjdtj_tjddfd}|||	t5}|ddddn#1swxYwY|t|jddS)NcdgS)Nr*rrs rrLzOTestDiscovery.test_discovery_from_dotted_path_builtin_modules.<locals>.<lambda>)s
 =>rcdSrrrs rrLzOTestDiscovery.test_discovery_from_dotted_path_builtin_modules.<locals>.<lambda>,s%rctj_tj_t_t
jdd<dSr)r/r7r8r?r0r)r?r8r0rsrr zNTestDiscovery.test_discovery_from_dotted_path_builtin_modules.<locals>.restore.s/#BGN!BGM BJ'CHQQQKKKrrz2Can not use builtin modules as dotted module names)r"r#r/r0r7r8r?rror'	TypeErrorrr&rrn)r
r)r rqr?r8r0rs    @@@@r/test_discovery_from_dotted_path_builtin_modulesz=TestDiscovery.test_discovery_from_dotted_path_builtin_modules$s8$&&*>>

'

	(	(	(	(	(	(	(	(
	
   


y
)
)	#ROOE"""	#	#	#	#	#	#	#	#	#	#	#	#	#	#	#R\**2	3	3	3	3	3s0CCCc	ddlm}tj}t	jdfd}tjd|5tj	5|
d5|t5}|
ddddn#1swxYwY|t|jddddn#1swxYwYdddn#1swxYwYddddS#1swxYwYdS)Nr)utilpackagec&tj|<Sr)rr)packagenamer[kwargsrs   r_importz>TestDiscovery.test_discovery_failed_discovery.<locals>._importAs'.CK$Nrzbuiltins.__import__z$don't know how to discover from {!r})test.test_importlibrr"r#types
ModuleTypemockpatchr
DirsOnSysPathuncacher'rrr&rrnformat)r
rr)rrqrs     @rtest_discovery_failed_discoveryz-TestDiscovery.test_discovery_failed_discovery;s@,,,,,,$&&"9--					]
 
 !6
@
@		7		7,..
7
7\\),,77**9553	222333333333333333$$S%6%6%L&,fWoo777777777777777777
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7		7		7		7		7		7		7		7		7		7		7		7		7		7		7		7		7		7		7s~D<(D$>D
B;	/D
;B?
?D
B?
>D
D$
DD$DD$D<$D(	(D<+D(	,D<<EEN)rrrr+rxrrrrr
rr!r(r6rArNrRr\r`rfrrrrrrrrrrrrrrrs6661*1*1*f&$&$&$PH2H2H2TE5E5E5NV5V5V5p,/,/,/\+;+;+;Z
!
!
!	;	;	;,,,(444<555.5556
1
1
1
/
/
/
.
.
.	3	3	3AAAH,H,H,T!!!F111;;;(..."333.77777rr__main__)os.pathr/rrrrr<r5rtest.supportrr"
unittest.mock
unittest.testrrTestCaserrmainrrr<module>rs				







&&&&&&	
	
	
	
	
(.	
	
	
s7s7s7s7s7H%s7s7s7lzHMOOOOOr