package Ġio . kot est . engine . intercept ors Ċ Ċ import Ġio . kot est . core . spec . style . scopes . Test Dsl State Ċ import Ġio . kot est . engine . Engine Result Ċ import Ġio . kot est . engine . TestSuite Ċ import Ġio . kot est . engine . listener . Test Engine Listener Ċ import Ġio . kot est . fp . Try Ċ Ċ /** Ċ Ġ* ĠChecks Ġthat Ġwe Ġdidn 't Ġhave Ġany Ġpartially Ġconstructed Ġtests . Ċ Ġ*/ Ċ internal Ġobject ĠTest Dsl State Interceptor Ġ: ĠEngine Interceptor Ġ{ ĊĠĠ Ġoverride Ġsuspend Ġfun Ġintercept ( ĊĠĠĠĠĠ Ġsuite : ĠTest Suite , ĊĠĠĠĠĠ Ġlistener : ĠTest Engine Listener , ĊĠĠĠĠĠ Ġexecute : Ġsuspend Ġ( TestSuite , ĠTest Engine Listener ) Ġ-> ĠEngine Result ĊĠĠ Ġ): ĠEngine Result Ġ{ ĊĠĠĠĠĠ Ġval Ġresult Ġ= Ġexecute ( suite , Ġlistener ) ĊĠĠĠĠĠ Ġreturn ĠTry Ġ{ ĠTest Dsl State . check State () Ġ}. fold ( ĊĠĠĠĠĠĠĠĠ Ġ{ ĠEngine Result ( listOf ( it ) Ġ+ Ġresult . errors ) Ġ}, ĊĠĠĠĠĠĠĠĠ Ġ{ Ġresult Ġ} ĊĠĠĠĠĠ Ġ) ĊĠĠ Ġ} Ċ } Ċ