package Ġorg . spe k framework . spe k 2 . runtime . scope Ċ Ċ import Ġorg . spe k framework . spe k 2 . dsl . Fixture Ċ Ċ class ĠFix tures Ġ{ ĊĠĠĠ Ġprivate Ġclass ĠGroup Fixture ( val Ġinherit able : ĠBoolean , Ġval Ġfixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuspend Ġoperator Ġfun Ġinvoke () Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfixture () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġval Ġbefore Test Fixtures Ġ= Ġmutable ListOf < Fixture >() ĊĠĠĠ Ġprivate Ġval Ġafter Test Fixtures Ġ= Ġmutable ListOf < Fixture >() ĊĠĠĠ Ġprivate Ġval Ġbefore Group Fixtures Ġ= Ġmutable ListOf < Group Fixture >() ĊĠĠĠ Ġprivate Ġval Ġafter Group Fixtures Ġ= Ġmutable ListOf < Group Fixture >() ĊĊĠĠĠ Ġfun ĠbeforeEach Test ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbefore Test Fixtures . add ( fixture ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠafterEach Test ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġafter Test Fixtures . add ( fixture ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġbefore Group ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbefore Group Fixtures . add ( Group Fixture ( false , Ġfixture )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġafter Group ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġafter Group Fixtures . add ( Group Fixture ( false , Ġfixture )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠbeforeEach Group ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbefore Group Fixtures . add ( Group Fixture ( true , Ġfixture )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun ĠafterEach Group ( fixture : ĠFix ture ) Ġ{ ĊĠĠĠĠĠĠĠ Ġafter Group Fixtures . add ( Group Fixture ( true , Ġfixture )) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġsuspend Ġfun Ġinvoke Before Test Fixtures () Ġ{ ĊĠĠĠĠĠĠĠ Ġbefore Test Fixtures . forEach Ġ{ Ġfixture Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfixture () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġfun Ġinvoke After Test Fixtures () Ġ{ ĊĠĠĠĠĠĠĠ Ġafter Test Fixtures . forEach Ġ{ Ġfixture Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfixture () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġfun Ġinvoke Before Group Fixtures ( inherit able Only : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġbefore Group Fixtures . filter Ġ{ Ġ! inherit able Only Ġ|| Ġit . inherit able Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. forEach Ġ{ Ġfixture Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfixture () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġsuspend Ġfun Ġinvoke After Group Fixtures ( inherit able Only : ĠBoolean ) Ġ{ ĊĠĠĠĠĠĠĠ Ġafter Group Fixtures . filter Ġ{ Ġ! inherit able Only Ġ|| Ġit . inherit able Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. forEach Ġ{ Ġfixture Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfixture () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }