package Ġio . kot lint est Ċ Ċ import Ġio . kot lint est . extensions . TestCase Extension Ċ import Ġio . kot lint est . extensions . TestCase Intercept Context Ċ Ċ interface ĠTestCase Filter Ġ: ĠProject Level Filter Ġ{ ĊĠ Ġfun Ġfilter ( description : ĠDescription ): ĠTest Filter Result ĊĠ Ġfun Ġto Extension () Ġ= Ġobject Ġ: ĠTestCase Extension Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġintercept ( context : ĠTestCase Intercept Context , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtest : Ġ( TestCase Config , Ġ( TestResult ) Ġ-> ĠUnit ) Ġ-> ĠUnit , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcomplete : Ġ( TestResult ) Ġ-> ĠUnit ) Ġ{ ĊĠĠĠĠĠ Ġwhen Ġ( filter ( context . description )) Ġ{ ĊĠĠĠĠĠĠĠ ĠTest Filter Result . Include Ġ-> Ġtest ( context . config , Ġcomplete ) ĊĠĠĠĠĠĠĠ ĠTest Filter Result . Ignore Ġ-> Ġcomplete ( TestResult . Ignored ) ĊĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠ Ġ} Ċ } Ċ interface ĠProject Level Filter Ċ Ċ enum Ġclass ĠTest Filter Result Ġ{ ĊĠ ĠInclude , ĠIgnore Ċ } ĊĊ