package Ġcom . k yle cor ry . trail _ sense . shared . permissions Ċ Ċ import Ġandroid . content . Context Ċ import Ġcom . k yle cor ry . and rome da . core . spec ifications . Specification Ċ import Ġcom . k yle cor ry . trail _ sense . shared . alerts . IA ler ter Ċ import Ġcom . k yle cor ry . trail _ sense . shared . preferences . Flag Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . mockito . kotlin .* Ċ Ċ internal Ġclass ĠRequest Remove Battery Restriction Command Test Ġ{ ĊĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcommand : ĠRequest Remove Battery Restriction Command ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġflag : ĠFlag ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġal er ter : ĠIA ler ter ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġis Required : ĠSpecification < Context > ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠMock Ġcontext ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= Ġmock < Context >() ĊĠĠĠĠĠĠĠ Ġflag Ġ= Ġmock () ĊĠĠĠĠĠĠĠ Ġal er ter Ġ= Ġmock () ĊĠĠĠĠĠĠĠ Ġis Required Ġ= Ġmock () ĊĠĠĠĠĠĠĠ Ġcommand Ġ= ĠRequest Remove Battery Restriction Command ( context , Ġflag , Ġal er ter , Ġis Required ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdoes Not Alert When Not Required () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠMock Ġis Ġrequired ĊĠĠĠĠĠĠĠ Ġwhenever ( isRequired . is Satisf ied By ( any ())). thenReturn ( false ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠExecute ĊĠĠĠĠĠĠĠ Ġcommand . execute () ĊĊĠĠĠĠĠĠĠ Ġ// ĠVerify ĊĠĠĠĠĠĠĠ Ġverify ( aler ter , Ġnever ()). alert () ĊĠĠĠĠĠĠĠ Ġ// ĠVerify Ġflag Ġgets Ġset Ġto Ġfalse ĊĠĠĠĠĠĠĠ Ġverify ( flag ). set ( false ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġalerts When Required () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠMock Ġis Ġrequired ĊĠĠĠĠĠĠĠ Ġwhenever ( isRequired . is Satisf ied By ( any ())). thenReturn ( true ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠExecute ĊĠĠĠĠĠĠĠ Ġcommand . execute () ĊĊĠĠĠĠĠĠĠ Ġ// ĠVerify ĊĠĠĠĠĠĠĠ Ġverify ( aler ter ). alert () ĊĠĠĠĠĠĠĠ Ġ// ĠVerify Ġflag Ġgets Ġset Ġto Ġtrue ĊĠĠĠĠĠĠĠ Ġverify ( flag ). set ( true ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdoes Not Alert When Flag IsTrue () Ġ{ ĊĠĠĠĠĠĠĠ Ġ// ĠMock Ġis Ġrequired ĊĠĠĠĠĠĠĠ Ġwhenever ( isRequired . is Satisf ied By ( any ())). thenReturn ( true ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠMock Ġflag ĊĠĠĠĠĠĠĠ Ġwhenever ( flag . get ()). thenReturn ( true ) ĊĊĠĠĠĠĠĠĠ Ġ// ĠExecute ĊĠĠĠĠĠĠĠ Ġcommand . execute () ĊĊĠĠĠĠĠĠĠ Ġ// ĠVerify ĊĠĠĠĠĠĠĠ Ġverify ( aler ter , Ġnever ()). alert () ĊĠĠĠ Ġ} Ċ }