package Ġcom . ju ul . tu ul box . logging Ċ Ċ import Ġjava . io . ByteArray OutputStream Ċ import Ġjava . io . Print Stream Ċ import Ġjava . nio . charset . StandardCharsets Ċ import Ġkotlin . test . After Test Ċ import Ġkotlin . test . Before Test Ċ import Ġkotlin . test . Test Ċ import Ġkotlin . test . assertTrue Ċ Ċ private Ġval ĠUTF 8 Ġ= ĠStandard Charsets . UTF _ 8 . name () Ċ private Ġconst Ġval ĠTAG Ġ= Ġ" sample - tag " Ċ private Ġconst Ġval ĠMESSAGE Ġ= Ġ" A Ġlonger Ġsample Ġmessage " Ċ Ċ class ĠConsole Logger Tests Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġsystem Out Ġ= ĠSystem . out ĊĠĠĠ Ġprivate Ġval Ġsystem Err Ġ= ĠSystem . err ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtest Out Buffer : ĠByteArrayOutputStream ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtest Err Buffer : ĠByteArrayOutputStream ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtest Out : ĠPrint Stream ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtest Err : ĠPrint Stream ĊĊĠĠĠ Ġ@ Before Test ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Out Buffer Ġ= ĠByteArrayOutputStream () ĊĠĠĠĠĠĠĠ Ġtest Err Buffer Ġ= ĠByteArrayOutputStream () ĊĠĠĠĠĠĠĠ Ġtest Out Ġ= ĠPrint Stream ( test Out Buffer , Ġtrue , ĠUTF 8 ) ĊĠĠĠĠĠĠĠ Ġtest Err Ġ= ĠPrint Stream ( test Err Buffer , Ġtrue , ĠUTF 8 ) ĊĠĠĠĠĠĠĠ ĠSystem . set Out ( test Out ) ĊĠĠĠĠĠĠĠ ĠSystem . set Err ( test Err ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ After Test ĊĠĠĠ Ġfun Ġteardown () Ġ{ ĊĠĠĠĠĠĠĠ ĠSystem . set Out ( system Out ) ĊĠĠĠĠĠĠĠ ĠSystem . set Err ( system Err ) ĊĠĠĠĠĠĠĠ Ġtest Out . close () ĊĠĠĠĠĠĠĠ Ġtest Err . close () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Verbose Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . verbose ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Verbose With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . verbose ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Debug Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . debug ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Debug With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . debug ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Info Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . info ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Info With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . info ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Warn Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . warn ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Warn With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . warn ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Out Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Error Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . error ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Err Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Error With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . error ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Err Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Assert Without Throwable () Ġ{ ĊĠĠĠĠĠĠĠ ĠConsole Logger . assert ( TAG , ĠMESSAGE , ĠMetadata (), Ġnull ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Err Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcheck Assert With Throwable () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġthrowable Ġ= ĠThrowable () ĊĠĠĠĠĠĠĠ ĠConsole Logger . assert ( TAG , ĠMESSAGE , ĠMetadata (), Ġthrowable ) ĊĠĠĠĠĠĠĠ Ġval Ġlog String Ġ= Ġtest Err Buffer . toString ( UTF 8 ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( TAG Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( MESSAGE Ġin Ġlog String ) ĊĠĠĠĠĠĠĠ ĠassertTrue ( throwable . stack Trace ToString () Ġin Ġlog String ) ĊĠĠĠ Ġ} Ċ } Ċ