import Ġorg . jetbrains . spe k . api . dsl . Test Body Ċ import Ġorg . jetbrains . spe k . api . dsl . Test Container Ċ import Ġjava . time . Duration Ċ import Ġkotlin . system . measure Nano Time Ċ Ċ fun ĠTest Container . ben ched It ( desc : ĠString , Ġiterations : ĠInt , Ġbody : Ġ() Ġ-> ĠUnit ) Ġ{ ĊĠĠĠ Ġtest (" BENCH Ġit Ġ$ desc Ġ- Ġ$ iterations Ġiterations ") Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdur Ġ= ĠDuration . of Nan os (( 0 Ġuntil Ġiterations ). map Ġ{ Ġmeasure Nano Time ( body ) Ġ}. average (). to Long ()) ĊĠĠĠĠĠĠĠ Ġprintln (" Benchmark Ġaverage Ġover Ġ$ iterations Ġiterations : Ġ Ġ${ dur . to Minutes ()} m Ġ${ dur . seconds } s Ġ${ dur . nano Ġ/ Ġ 1 0 0 0 0 0 0 } ms ") ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun ĠTest Body . read Resource ( name : ĠString ) Ġ: ĠList < String > Ġ= Ġthis :: class . java . class Loader . getResource ( name ). read Text (). split ("\ r \ n ") Ċ Ċ fun ĠTest Container . read Resource ( name : ĠString ) Ġ: ĠList < String > Ġ= Ġthis :: class . java . class Loader . getResource ( name ). read Text (). split ("\ r \ n ")