package Ġcom . pack t . chapter 1 1 Ċ Ċ import Ġio . kot lint est . Spec Ċ import Ġio . kot lint est . TestCase Context Ċ import Ġio . kot lint est . specs . String Spec Ċ Ċ class ĠSpec Interceptor Test Ġ: ĠString Spec () Ġ{ ĊĊĠ Ġval Ġmy Spec Interceptor : Ġ( Spec , Ġ() Ġ-> ĠUnit ) Ġ-> ĠUnit Ġ= Ġ{ Ġspec , Ġtests Ġ-> ĊĠĠĠ Ġval Ġstart Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠ Ġval Ġend Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠ Ġtests () ĊĠĠĠ Ġval Ġduration Ġ= Ġend Ġ- Ġstart ĊĠĠĠ Ġprintln (" The Ġspec Ġtook Ġ$ duration Ġmillis ") ĊĠ Ġ} ĊĊĠ Ġoverride Ġval Ġspec Intercept ors : ĠList <( Spec , Ġ() Ġ-> ĠUnit ) Ġ-> ĠUnit > Ġ= ĠlistOf ( my Spec Interceptor ) ĊĊĠ Ġinit Ġ{ ĊĊĠĠĠ Ġval Ġmy interceptor : Ġ( TestCase Context , Ġ() Ġ-> ĠUnit ) Ġ-> ĠUnit Ġ= Ġ{ Ġcontext , Ġtest Ġ-> ĊĠĠĠĠĠ Ġval Ġstart Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠ Ġtest () ĊĠĠĠĠĠ Ġval Ġend Ġ= ĠSystem . currentTimeMillis () ĊĠĠĠĠĠ Ġval Ġduration Ġ= Ġend Ġ- Ġstart ĊĠĠĠĠĠ Ġprintln (" This Ġtest Ġtook Ġ$ duration Ġmillis ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ" this Ġtest Ġhas Ġan Ġinterceptor " Ġ{ ĊĠĠĠĠĠ Ġ// Ġtest Ġlogic Ġhere ĊĠĠĠ Ġ}. config ( intercept ors Ġ= ĠlistOf ( my interceptor )) ĊĊĠĠĠ Ġ" so Ġdoes Ġthis Ġtest " Ġ{ ĊĠĠĠĠĠ Ġ// Ġtest Ġlogic Ġhere ĊĠĠĠ Ġ}. config ( intercept ors Ġ= ĠlistOf ( my interceptor )) ĊĠ Ġ} Ċ }