JFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3RbrJFIFxxC      C  " }!1AQa"q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz w!1AQaq"2B #3Rbra XC?h@sRddlZddlZddlmZedddgZGdddejZGd d d eZdS) N)_BaseTestCaseContext_LoggingWatcherrecordsoutputc@s(eZdZdZddZddZddZdS) _CapturingHandlerzM A logging handler capturing all (raw and formatted) logging output. cCstj|tgg|_dSN)loggingHandler__init__rwatcherselfr2/opt/alt/python39/lib64/python3.9/unittest/_log.pyr s z_CapturingHandler.__init__cCsdSrrr rrrflushsz_CapturingHandler.flushcCs*|jj|||}|jj|dSr)r rappendformatr)rrecordmsgrrremits z_CapturingHandler.emitN)__name__ __module__ __qualname____doc__r rrrrrrr src@s,eZdZdZdZddZddZddZd S) _AssertLogsContextz:A context manager used to implement TestCase.assertLogs().z"%(levelname)s:%(name)s:%(message)scCs:t||||_|r(tj|||_ntj|_d|_dSr) rr logger_namer Z _nameToLevelgetlevelINFOr)rZ test_caserrrrrr !s  z_AssertLogsContext.__init__cCst|jtjr|j}|_nt|j}|_t|j}t}| ||j |_ |j dd|_ |j |_|j|_|g|_ ||j d|_|j S)NF) isinstancerr ZLoggerloggerZ getLoggerZ FormatterLOGGING_FORMATrZ setFormatterr handlers old_handlersr old_level propagate old_propagatesetLevel)rr!Z formatterZhandlerrrr __enter__*s   z_AssertLogsContext.__enter__cCs`|j|j_|j|j_|j|j|dur.dSt|jj dkr\| d t |j|jjdS)NFrz-no logs of level {} or higher triggered on {})r$r!r#r'r&r(r%lenr rZ _raiseFailurerr Z getLevelNamername)rexc_type exc_valuetbrrr__exit__;s  z_AssertLogsContext.__exit__N)rrrrr"r r)r/rrrrrs  r) r collectionsZcaser namedtuplerr rrrrrrs