a  zew@@sFddlZddlZddlZddZGdddejZedkrBedS)NcGstSN)unittestZ TestResult)_rM/opt/bitninja-python-dojo/embedded/lib/python3.9/unittest/test/test_setups.py resultFactorysrc@seZdZddZddZddZddZd d Zd d Zd dZ ddZ ddZ ddZ ddZ ddZddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'S)( TestSetupscCstjttdS)N)Z resultclassstream)rZTextTestRunnerrioStringIOselfrrr getRunner szTestSetups.getRunnercGsht}|D]}tj|}||q |}t}|||t|t||Sr)r TestSuitedefaultTestLoaderloadTestsFromTestCaseZaddTestsrZaddTestrun)r ZcasessuiteZcaseZtestsrunnerZ realSuiterrrrunTestss   zTestSetups.runTestscsRGfdddtj|}|jd||jd|t|jddS)Ncs0eZdZdZefddZddZddZdS) z)TestSetups.test_setup_class..Testrcsjd7_tjdSN) setUpCalledrTestCase setUpClassclsTestrrr#sz4TestSetups.test_setup_class..Test.setUpClasscSsdSrrr rrrtest_one'sz2TestSetups.test_setup_class..Test.test_onecSsdSrrr rrrtest_two)sz2TestSetups.test_setup_class..Test.test_twoN)__name__ __module__ __qualname__r classmethodrrr rrrrr!s rrr)rrr assertEqualrtestsRunlenerrorsr resultrrrtest_setup_class s  zTestSetups.test_setup_classcsRGfdddtj|}|jd||jd|t|jddS)Ncs0eZdZdZefddZddZddZdS) z,TestSetups.test_teardown_class..Testrcsjd7_tjdSrtearDownCalledrr tearDownClassrrrrr/5sz:TestSetups.test_teardown_class..Test.tearDownClasscSsdSrrr rrrr9sz5TestSetups.test_teardown_class..Test.test_onecSsdSrrr rrrr ;sz5TestSetups.test_teardown_class..Test.test_twoNr!r"r#r.r$r/rr rrrrr3s rrr%rrrrr&r.r'r(r)r*rrrtest_teardown_class2s  zTestSetups.test_teardown_classcsxGfdddtjGfdddtj|}|jd|jd||jd|t|jddS)Ncs0eZdZdZefddZddZddZdS) z8TestSetups.test_teardown_class_two_classes..Testrcsjd7_tjdSrr-rrrrr/GszFTestSetups.test_teardown_class_two_classes..Test.tearDownClasscSsdSrrr rrrrKszATestSetups.test_teardown_class_two_classes..Test.test_onecSsdSrrr rrrr MszATestSetups.test_teardown_class_two_classes..Test.test_twoNr0rrrrrEs rcs0eZdZdZefddZddZddZdS) z9TestSetups.test_teardown_class_two_classes..Test2rcsjd7_tjdSrr-rTest2rrr/RszGTestSetups.test_teardown_class_two_classes..Test2.tearDownClasscSsdSrrr rrrrVszBTestSetups.test_teardown_class_two_classes..Test2.test_onecSsdSrrr rrrr XszBTestSetups.test_teardown_class_two_classes..Test2.test_twoNr0rr3rrr4Ps r4rrr1r*rrr4rtest_teardown_class_two_classesDs  z*TestSetups.test_teardown_class_two_classescCshGdddtj}||}||jd|t|jd|jd\}}|t|dt|j fdS)Nc@s(eZdZeddZddZddZdS)z7TestSetups.test_error_in_setupclass..BrokenTestcSs tddSNfoo TypeErrorrrrrrdszBTestSetups.test_error_in_setupclass..BrokenTest.setUpClasscSsdSrrr rrrrgsz@TestSetups.test_error_in_setupclass..BrokenTest.test_onecSsdSrrr rrrr isz@TestSetups.test_error_in_setupclass..BrokenTest.test_twoNr!r"r#r$rrr rrrr BrokenTestcs r=rrsetUpClass (%s.%s)) rrrr&r'r(r)strr!r#)r r=r+errorrrrrtest_error_in_setupclassbs   z#TestSetups.test_error_in_setupclasscsGfdddtjGfdddtj|}||jd|t|jd|jd|jd|jd\}}|t|d t j fdS) Ncs0eZdZdZefddZddZddZdS) z5TestSetups.test_error_in_teardown_class..Testrcsjd7_tddSNrr9tornDownr;rrrrr/wszCTestSetups.test_error_in_teardown_class..Test.tearDownClasscSsdSrrr rrrr{sz>TestSetups.test_error_in_teardown_class..Test.test_onecSsdSrrr rrrr }sz>TestSetups.test_error_in_teardown_class..Test.test_twoNr!r"r#rDr$r/rr rrrrrus rcs0eZdZdZefddZddZddZdS) z6TestSetups.test_error_in_teardown_class..Test2rcsjd7_tddSrBrCrr3rrr/szDTestSetups.test_error_in_teardown_class..Test2.tearDownClasscSsdSrrr rrrrsz?TestSetups.test_error_in_teardown_class..Test2.test_onecSsdSrrr rrrr sz?TestSetups.test_error_in_teardown_class..Test2.test_twoNrErr3rrr4s r4r5r%rrztearDownClass (%s.%s)) rrrr&r'r(r)rDr?r!r#)r r+r@rrr6rtest_error_in_teardown_classts    z'TestSetups.test_error_in_teardown_classcs0Gfdddtj||jdS)Ncs4eZdZdZeddZefddZddZdS) zATestSetups.test_class_not_torndown_when_setup_fails..TestFcSstdSrr:rrrrrszLTestSetups.test_class_not_torndown_when_setup_fails..Test.setUpClasscsd_tddS)NTr9rCrrrrr/szOTestSetups.test_class_not_torndown_when_setup_fails..Test.tearDownClasscSsdSrrr rrrrszJTestSetups.test_class_not_torndown_when_setup_fails..Test.test_oneN)r!r"r#rDr$rr/rrrrrrs  r)rrr assertFalserDr rrr(test_class_not_torndown_when_setup_failss z3TestSetups.test_class_not_torndown_when_setup_failscsJGfdddtjtd||j|jdS)Ncs<eZdZdZdZefddZefddZddZdS) zFTestSetups.test_class_not_setup_or_torndown_when_skipped..TestFcs d_dSNT classSetUprrrrrszQTestSetups.test_class_not_setup_or_torndown_when_skipped..Test.setUpClasscs d_dSrI)rDrrrrr/szTTestSetups.test_class_not_setup_or_torndown_when_skipped..Test.tearDownClasscSsdSrrr rrrrszOTestSetups.test_class_not_setup_or_torndown_when_skipped..Test.test_oneN) r!r"r#rKrDr$rr/rrrrrrsrZhop)rrskiprrGrKrDr rrr-test_class_not_setup_or_torndown_when_skippeds    z8TestSetups.test_class_not_setup_or_torndown_when_skippedcsPgGfdddt}Gfdddt}Gfdddtj}Gfdddtj}Gfd d d tj}d |_|_d|_|tjd <|tjd<t|d f}t|d f}t|d f}t|d f} t|d f} t|d f} t|||| | | f} |} | | }| |j d| t |j d| gddS)Ncs,eZdZefddZefddZdS)zMTestSetups.test_setup_teardown_order_with_pathological_suite..Module1csddS)NModule1.setUpModuleappendrresultsrr setUpModuleszYTestSetups.test_setup_teardown_order_with_pathological_suite..Module1.setUpModulecsddS)NModule1.tearDownModulerOrrQrrtearDownModulesz\TestSetups.test_setup_teardown_order_with_pathological_suite..Module1.tearDownModuleNr!r"r# staticmethodrSrUrrQrrModule1srXcs,eZdZefddZefddZdS)zMTestSetups.test_setup_teardown_order_with_pathological_suite..Module2csddS)NModule2.setUpModulerOrrQrrrSszYTestSetups.test_setup_teardown_order_with_pathological_suite..Module2.setUpModulecsddS)NModule2.tearDownModulerOrrQrrrUsz\TestSetups.test_setup_teardown_order_with_pathological_suite..Module2.tearDownModuleNrVrrQrrModule2sr[csDeZdZefddZefddZfddZfddZd S) zKTestSetups.test_setup_teardown_order_with_pathological_suite..Test1csddS)Nsetup 1rOrrQrrrszVTestSetups.test_setup_teardown_order_with_pathological_suite..Test1.setUpClasscsddS)N teardown 1rOrrQrrr/szYTestSetups.test_setup_teardown_order_with_pathological_suite..Test1.tearDownClasscsddS)N Test1.testOnerOr rQrrtestOneszSTestSetups.test_setup_teardown_order_with_pathological_suite..Test1.testOnecsddS)N Test1.testTworOr rQrrtestTwoszSTestSetups.test_setup_teardown_order_with_pathological_suite..Test1.testTwoNr!r"r#r$rr/r_rarrQrrTest1s  rccsDeZdZefddZefddZfddZfddZd S) zKTestSetups.test_setup_teardown_order_with_pathological_suite..Test2csddS)Nsetup 2rOrrQrrrszVTestSetups.test_setup_teardown_order_with_pathological_suite..Test2.setUpClasscsddS)N teardown 2rOrrQrrr/szYTestSetups.test_setup_teardown_order_with_pathological_suite..Test2.tearDownClasscsddS)N Test2.testOnerOr rQrrr_szSTestSetups.test_setup_teardown_order_with_pathological_suite..Test2.testOnecsddS)N Test2.testTworOr rQrrraszSTestSetups.test_setup_teardown_order_with_pathological_suite..Test2.testTwoNrbrrQrrr4s  r4csDeZdZefddZefddZfddZfddZd S) zKTestSetups.test_setup_teardown_order_with_pathological_suite..Test3csddS)Nsetup 3rOrrQrrrszVTestSetups.test_setup_teardown_order_with_pathological_suite..Test3.setUpClasscsddS)N teardown 3rOrrQrrr/szYTestSetups.test_setup_teardown_order_with_pathological_suite..Test3.tearDownClasscsddS)N Test3.testOnerOr rQrrr_szSTestSetups.test_setup_teardown_order_with_pathological_suite..Test3.testOnecsddS)N Test3.testTworOr rQrrraszSTestSetups.test_setup_teardown_order_with_pathological_suite..Test3.testTwoNrbrrQrrTest3s  rlModuler_rar)rNr\r^r`r]rdrfrgrerTrYrhrjrkrirZ) objectrrr"sysmodulesrrrr&r'r(r))r rXr[rcr4rlfirstsecondthirdZfourthZfifthZsixthrrr+rrQr1test_setup_teardown_order_with_pathological_suites0      z.Modulercsjd7_dSr) moduleSetuprrmrrrS sz8TestSetups.test_setup_module..Module.setUpModuleN)r!r"r#rvrWrSrrwrrrm srmc@seZdZddZddZdS)z*TestSetups.test_setup_module..TestcSsdSrrr rrrrsz3TestSetups.test_setup_module..Test.test_onecSsdSrrr rrrr sz3TestSetups.test_setup_module..Test.test_twoNr!r"r#rr rrrrrsrrr%r) rorrr"rprqrr&rvr'r(r)r rr+rrwrtest_setup_module s  zTestSetups.test_setup_modulecsGfdddtGfdddtjGdddtj}d_d|_tjd<||}|jd|j d||j d| j | j |t|jd|jd\}}|t|d dS) Ncs4eZdZdZdZefddZefddZdS)z5TestSetups.test_error_in_setup_module..Modulercsjd7_tddSrB)rvr;rrwrrrS!szATestSetups.test_error_in_setup_module..Module.setUpModulecsjd7_dSrmoduleTornDownrrwrrrU%szDTestSetups.test_error_in_setup_module..Module.tearDownModuleN)r!r"r#rvr|rWrSrUrrwrrrms rmcsDeZdZdZdZefddZefddZddZdd Z d S) z3TestSetups.test_error_in_setup_module..TestFcs d_dSrIrJrrrrr,sz>TestSetups.test_error_in_setup_module..Test.setUpClasscs d_dSrI classTornDownrrrrr//szATestSetups.test_error_in_setup_module..Test.tearDownClasscSsdSrrr rrrr2sz.Test.test_onecSsdSrrr rrrr 4sz.Test.test_twoN r!r"r#rKr~r$rr/rr rrrrr)src@seZdZddZddZdS)z4TestSetups.test_error_in_setup_module..Test2cSsdSrrr rrrr8sz=TestSetups.test_error_in_setup_module..Test2.test_onecSsdSrrr rrrr :sz=TestSetups.test_error_in_setup_module..Test2.test_twoNrxrrrrr47sr4rrsetUpModule (Module))rorrr"rprqrr&rvr|r'rGrKr~r(r)r?r r4r+r@rrrmrrtest_error_in_setup_modules     z%TestSetups.test_error_in_setup_modulecCsBGdddtj}d|_tjdd||}||jddS)Nc@seZdZddZddZdS)z:TestSetups.test_testcase_with_missing_module..TestcSsdSrrr rrrrLszCTestSetups.test_testcase_with_missing_module..Test.test_onecSsdSrrr rrrr NszCTestSetups.test_testcase_with_missing_module..Test.test_twoNrxrrrrrKsrrmr%) rrr"rprqpoprr&r'ryrrr!test_testcase_with_missing_moduleJs  z,TestSetups.test_testcase_with_missing_modulecsrGfdddtGdddtj}d|_tjd<||}|jd||j d|t |j ddS)Ncs eZdZdZefddZdS)z/TestSetups.test_teardown_module..Modulercsjd7_dSrr{rrwrrrUYsz>TestSetups.test_teardown_module..Module.tearDownModuleNr!r"r#r|rWrUrrwrrrmWsrmc@seZdZddZddZdS)z-TestSetups.test_teardown_module..TestcSsdSrrr rrrr^sz6TestSetups.test_teardown_module..Test.test_onecSsdSrrr rrrr `sz6TestSetups.test_teardown_module..Test.test_twoNrxrrrrr]srrr%r) rorrr"rprqrr&r|r'r(r)ryrrwrtest_teardown_moduleVs  zTestSetups.test_teardown_modulecsGfdddtGfdddtjGdddtj}d_d|_tjd<||}|jd||j d| j | j |t |jd|jd \}}|t|d dS) Ncs eZdZdZefddZdS)z8TestSetups.test_error_in_teardown_module..Modulercsjd7_tddSrB)r|r;rrwrrrUmszGTestSetups.test_error_in_teardown_module..Module.tearDownModuleNrrrwrrrmksrmcsDeZdZdZdZefddZefddZddZdd Z d S) z6TestSetups.test_error_in_teardown_module..TestFcs d_dSrIrJrrrrruszATestSetups.test_error_in_teardown_module..Test.setUpClasscs d_dSrIr}rrrrr/xszDTestSetups.test_error_in_teardown_module..Test.tearDownClasscSsdSrrr rrrr{sz?TestSetups.test_error_in_teardown_module..Test.test_onecSsdSrrr rrrr }sz?TestSetups.test_error_in_teardown_module..Test.test_twoNrrrrrrrsrc@seZdZddZddZdS)z7TestSetups.test_error_in_teardown_module..Test2cSsdSrrr rrrrsz@TestSetups.test_error_in_teardown_module..Test2.test_onecSsdSrrr rrrr sz@TestSetups.test_error_in_teardown_module..Test2.test_twoNrxrrrrr4sr4rr5rztearDownModule (Module))rorrr"rprqrr&r|r'Z assertTruerKr~r(r)r?rrrrtest_error_in_teardown_modulejs    z(TestSetups.test_error_in_teardown_modulecCszGdddtj}||}||jd|t|jd|t|jd|jdd}|t|dt |j fdS)Nc@s(eZdZeddZddZddZdS)z4TestSetups.test_skiptest_in_setupclass..TestcSstddSr8rZSkipTestrrrrrsz?TestSetups.test_skiptest_in_setupclass..Test.setUpClasscSsdSrrr rrrrsz=TestSetups.test_skiptest_in_setupclass..Test.test_onecSsdSrrr rrrr sz=TestSetups.test_skiptest_in_setupclass..Test.test_twoNr<rrrrrs rrrr>) rrrr&r'r(r)skippedr?r!r#)r rr+rrrrtest_skiptest_in_setupclasss   z&TestSetups.test_skiptest_in_setupclasscCsGdddtj}Gdddt}d|_|tjd<||}||jd|t |j d|t |j d|j dd}|t |ddS)Nc@seZdZddZddZdS)z5TestSetups.test_skiptest_in_setupmodule..TestcSsdSrrr rrrrsz>TestSetups.test_skiptest_in_setupmodule..Test.test_onecSsdSrrr rrrr sz>TestSetups.test_skiptest_in_setupmodule..Test.test_twoNrxrrrrrsrc@seZdZeddZdS)z7TestSetups.test_skiptest_in_setupmodule..ModulecSstddSr8rrrrrrSszCTestSetups.test_skiptest_in_setupmodule..Module.setUpModuleN)r!r"r#rWrSrrrrrmsrmrrr) rrror"rprqrr&r'r(r)rr?)r rrmr+rrrrtest_skiptest_in_setupmodules  z'TestSetups.test_skiptest_in_setupmodulecsjgGfdddt}Gfdddtj}d|_|tjd<tj|}|gd}| |dS)Ncs,eZdZefddZefddZdS)zITestSetups.test_suite_debug_executes_setups_and_teardowns..ModulecsddS)NrSrOrZorderingrrrSszUTestSetups.test_suite_debug_executes_setups_and_teardowns..Module.setUpModulecsddS)NrUrOrrrrrUszXTestSetups.test_suite_debug_executes_setups_and_teardowns..Module.tearDownModuleNrVrrrrrmsrmcs8eZdZefddZefddZfddZdS)zGTestSetups.test_suite_debug_executes_setups_and_teardowns..TestcsddS)NrrOrrrrrszRTestSetups.test_suite_debug_executes_setups_and_teardowns..Test.setUpClasscsddS)Nr/rOrrrrr/szUTestSetups.test_suite_debug_executes_setups_and_teardowns..Test.tearDownClasscsddS)Ntest_somethingrOr rrrrszVTestSetups.test_suite_debug_executes_setups_and_teardowns..Test.test_somethingNr!r"r#r$rr/rrrrrrs r)rSrrr/rU) rorrr"rprqrrdebugr&)r rmrrZ expectedOrderrrr.test_suite_debug_executes_setups_and_teardownss   z9TestSetups.test_suite_debug_executes_setups_and_teardownsc sGfdddt}Gfdddtj}d|_|tjd<d}t|D]T\}tj|}t |g}| t || WdqF1s0YqFdS)Ncs,eZdZefddZefddZdS)zATestSetups.test_suite_debug_propagates_exceptions..ModulecsdkrtddS)NrrS ExceptionrZphaserrrSszMTestSetups.test_suite_debug_propagates_exceptions..Module.setUpModulecsdkrtddS)NrrUrrrrrrUszPTestSetups.test_suite_debug_propagates_exceptions..Module.tearDownModuleNrVrrrrrmsrmcs8eZdZefddZefddZfddZdS)z?TestSetups.test_suite_debug_propagates_exceptions..TestcsdkrtddS)Nr%rrrrrrrszJTestSetups.test_suite_debug_propagates_exceptions..Test.setUpClasscsdkrtddS)Nr/rrrrrr/szMTestSetups.test_suite_debug_propagates_exceptions..Test.tearDownClasscsdkrtddS)Nr5rrr rrrrszNTestSetups.test_suite_debug_propagates_exceptions..Test.test_somethingNrrrrrrs r)rSrUrr/r) rorrr"rprq enumeraterrrZassertRaisesRegexrr)r rmrmessagesmsgZ_suiterrrr&test_suite_debug_propagates_exceptionss     z1TestSetups.test_suite_debug_propagates_exceptionsN)r!r"r#rrr,r2r7rArFrHrMrurzrrrrrrrrrrrrr s&!R- (r__main__)r rprrrrr!mainrrrrsr