package Ġde . r ki . cor on aw arn app . ui . tracing . common Ċ Ċ import Ġandroid . content . Context Ċ import Ġde . r ki . cor on aw arn app . R Ċ import Ġde . r ki . cor on aw arn app . risk . Risk Level Constants Ċ import Ġde . r ki . cor on aw arn app . tracing . General Tracing Status Ċ import Ġde . r ki . cor on aw arn app . tracing . Tracing Progress Ċ import Ġio . kot est . matchers . shouldBe Ċ import Ġio . mock k . Mock K Annotations Ċ import Ġio . mock k . clear All Mocks Ċ import Ġio . mock k . impl . annotations . Mock K Ċ import Ġio . mock k . mock k Ċ import Ġio . mock k . verify Ċ import Ġio . mock k . verify Sequence Ċ import Ġorg . junit . jupiter . api . After Each Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġtest helpers . Base Test Ċ import Ġjava . util . Date Ċ Ċ class ĠBase Tracing State Test Ġ: ĠBaseTest () Ġ{ ĊĊĠĠĠ Ġ@ Mock K ( relax ed Ġ= Ġtrue ) Ġlateinit Ġvar Ġcontext : ĠContext ĊĊĠĠĠ Ġval Ġconstants Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . UNKNOWN _ R IS K _ INITIAL , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . NO _ CAL C UL ATION _ PO SS IBLE _ TR ACING _ OFF , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . LOW _ LEVEL _ R IS K , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . INCRE ASE D _ R IS K , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS _ MAN UAL , ĊĠĠĠĠĠĠĠ ĠR isk Level Constants . UN DE TERMIN ED ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġsetup () Ġ{ ĊĠĠĠĠĠĠĠ ĠMock K Annotations . init ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ After Each ĊĠĠĠ Ġfun Ġteardown () Ġ{ ĊĠĠĠĠĠĠĠ Ġclear All Mocks () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġcreate Instance ( ĊĠĠĠĠĠĠĠ Ġtracing Status : ĠGeneral Tracing Status . Status Ġ= Ġmock k (), ĊĠĠĠĠĠĠĠ Ġrisk Level Score : ĠInt Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġtracing Progress : ĠTr acing Progress Ġ= ĠTr acing Progress . Idle , ĊĠĠĠĠĠĠĠ Ġrisk Level Last Successful Calculation : ĠInt Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġmatched Key Count : ĠInt Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġdays Since Last Exposure : ĠInt Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġactive Tracing Days In Retention Period : ĠLong Ġ= Ġ 0 , ĊĠĠĠĠĠĠĠ Ġlast Time Di agnosis Keys F etched : ĠDate ? Ġ= Ġmock k (), ĊĠĠĠĠĠĠĠ Ġis Background Job Enabled : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġis Manual Key Retrie val Enabled : ĠBoolean Ġ= Ġfalse , ĊĠĠĠĠĠĠĠ Ġmanual Key Retrie val Time : ĠLong Ġ= Ġ 0 L , ĊĠĠĠĠĠĠĠ Ġshow Details : ĠBoolean Ġ= Ġfalse ĊĠĠĠ Ġ) Ġ= Ġobject Ġ: ĠBase Tracing State () Ġ{ ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtracing Status : ĠGeneral Tracing Status . Status Ġ= Ġtracing Status ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġrisk Level Score : ĠInt Ġ= Ġrisk Level Score ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtracing Progress : ĠTr acing Progress Ġ= Ġtracing Progress ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġlast Risk Level Score Calculated : ĠInt Ġ= Ġrisk Level Last Successful Calculation ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġmatched Key Count : ĠInt Ġ= Ġmatched Key Count ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġdays Since Last Exposure : ĠInt Ġ= Ġdays Since Last Exposure ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġactive Tracing Days In Retention Period Ġ= Ġactive Tracing Days In Retention Period ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġlast Time Di agnosis Keys F etched : ĠDate ? Ġ= Ġlast Time Di agnosis Keys F etched ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġis Background Job Enabled : ĠBoolean Ġ= Ġis Background Job Enabled ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġshow Details : ĠBoolean Ġ= Ġshow Details ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġis Manual Key Retrie val Enabled : ĠBoolean Ġ= Ġis Manual Key Retrie val Enabled ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġmanual Key Retrie val Time : ĠLong Ġ= Ġmanual Key Retrie val Time ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` risk Ġcolor `() Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . INCRE ASE D _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Risk Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getColor ( R . color . color Semantic High Risk ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Risk Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getColor ( R . color . color Semantic Unknown Risk ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . NO _ CAL C UL ATION _ PO SS IBLE _ TR ACING _ OFF ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Risk Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getColor ( R . color . color Semantic Unknown Risk ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . LOW _ LEVEL _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Risk Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getColor ( R . color . color Semantic Low Risk ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ INITIAL ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Risk Color ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getColor ( R . color . color Semantic Neutral Risk ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` risk Ġtracing Ġoff Ġlevel `() Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . NO _ CAL C UL ATION _ PO SS IBLE _ TR ACING _ OFF ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ INITIAL ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . LOW _ LEVEL _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . INCRE ASE D _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS _ MAN UAL ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UN DE TERMIN ED ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Tracing Off Risk Level () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` text Ġcolor `() Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . NO _ CAL C UL ATION _ PO SS IBLE _ TR ACING _ OFF ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ INITIAL ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . LOW _ LEVEL _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . INCRE ASE D _ R IS K ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UNKNOWN _ R IS K _ OUT D ATED _ RESULTS _ MAN UAL ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( risk Level Score Ġ= ĠR isk Level Constants . UN DE TERMIN ED ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Stable TextColor ( context ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġverify Sequence Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Text Primary 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Text Primary 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Stable Light ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Stable Light ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Stable Light ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Stable Light ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcontext . getColor ( R . color . color Stable Light ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` update Ġbutton Ġtext `() Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Instance ( manual Key Retrie val Time Ġ= Ġ 0 ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Update ButtonText ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getString ( R . string . risk _ card _ button _ update ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( manual Key Retrie val Time Ġ= Ġ 1 ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġget Update ButtonText ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġverify Ġ{ Ġcontext . getString ( R . string . risk _ card _ button _ co old own ) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` update Ġbutton Ġenabled Ġstate `() Ġ{ ĊĠĠĠĠĠĠĠ Ġcreate Instance ( is Manual Key Retrie val Enabled Ġ= Ġtrue ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Update Button Enabled () ĠshouldBe Ġtrue ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġcreate Instance ( is Manual Key Retrie val Enabled Ġ= Ġfalse ). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Update Button Enabled () ĠshouldBe Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ