package Ġno . nav Ċ Ċ import Ġorg . junit . platform . engine . Test Descriptor Ċ import Ġorg . junit . platform . engine . Test Source Ċ import Ġorg . junit . platform . engine . UniqueId Ċ import Ġorg . junit . platform . engine . reporting . Report Entry Ċ import Ġorg . junit . platform . engine . support . descriptor . Abstract Test Descriptor Ċ import Ġorg . junit . platform . engine . support . hierarchical . Node Ċ Ċ class ĠTest Suite Descriptor ( ĊĠĠĠ Ġid : ĠUnique Id , ĊĠĠĠ Ġprivate Ġval Ġspec : ĠSpecification , ĊĠĠĠ Ġsource : ĠTest Source Ċ ) Ġ: ĠAbstract Test Descriptor ( id , Ġspec . title , Ġsource ), ĠNode < Fhir Validator ExecutionContext > Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠgetType () Ġ= ĠTest Descriptor . Type . CONTAINER ĊĠĠĠ Ġoverride Ġfun Ġexecute ( ĊĠĠĠĠĠĠĠ Ġcontext : ĠF hir Validator ExecutionContext , ĊĠĠĠĠĠĠĠ Ġdynamic Test Executor : ĠNode . Dynamic Test Executor ĊĠĠĠ Ġ) Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln ( Color . TITLE . paint ("# ĠSU ITE : Ġ$ displayName ")) ĊĠĠĠĠĠĠĠ Ġcontext . copy ( validator Ġ= ĠF hir Validator . create ( spec . validator )) ĊĠĠĠ Ġ} Ġcatch Ġ( ex : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġcontext . listener . reporting Entry Published ( this , Ġcreate Report Entry ( spec . validator )) ĊĠĠĠĠĠĠĠ Ġprintln () ĊĠĠĠĠĠĠĠ Ġthrow Ġex ĊĠĠĠ Ġ} Ġfinally Ġ{ ĊĠĠĠĠĠĠĠ Ġprintln () ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġcreate Report Entry ( spec : ĠSpecification . Validator ) Ġ= ĊĠĠĠ Ġspec . run Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġvalues Ġ= Ġmap Of ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" version ", Ġversion ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" tx ", Ġtx ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" tx Log ", Ġtx Log ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" s ct ", Ġs ct ), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠPair (" ig ", Ġig . join ToString ()) ĊĠĠĠĠĠĠĠ Ġ). filter Values Ġ{ Ġ! it . isNull OrEmpty () Ġ} ĊĊĠĠĠĠĠĠĠ ĠReport Entry . from ( values ) ĊĠĠĠ Ġ} Ċ