/* Ċ Ġ* Ġ ĠCopyright Ġ( C ) ĠMR 3 Y Ġ- ĠAll ĠRights ĠReserved Ċ Ġ* ĠĠ ĠUnauthorized Ġcopying Ġof Ġthis Ġfile , Ġvia Ġany Ġmedium Ġis Ġstrictly Ġpro hibited Ċ Ġ* ĠĠ ĠPro pri etary Ġand Ġconf idential Ċ Ġ* ĠĠ ĠWritten Ġby ĠMR 3 Y Ġ< ab don asr 3 7 9 @ gmail . com >, Ġ 2 0 2 0 . Ċ Ġ*/ Ċ Ċ package Ġcom . secret . read it . core . data . utils Ċ Ċ import Ġcom . google . common . truth . Truth . assertThat Ċ import Ġcom . secret . read it . core . TestData Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġkotlin . IllegalArgumentException Ċ Ċ class ĠCustom ID Handler Test Ġ{ ĊĊĠĠĠ Ġ// ĠObject Ġunder Ġtest ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġcustom ID Handler : ĠCustom ID Handler ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġcustom ID Handler Ġ= ĠCustom ID Handler () ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinput Article 2 _ Return Valid Id () Ġ= Ġrun Success Test ({ Ġcustom ID Handler . getID ( TestData . article 2 ) Ġ}, Ġ" 8 9 4 7 9 8 9 2 - 2 pub - art i ") ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinput Article 1 _ Return Valid Id () Ġ= Ġrun Success Test ({ Ġcustom ID Handler . getID ( TestData . article 1 ) Ġ}, Ġ" 4 3 2 5 9 2 5 3 - 1 pub - art i ") ĊĊĠĠĠ Ġ@ Test ( expected Ġ= ĠIllegalArgumentException :: class ) ĊĠĠĠ Ġfun Ġinput Invalid Article _ Throws Exception () Ġ{ Ġcustom ID Handler . getID ( TestData . empty Article ) Ġ/* ĠWhen Ġentering ĠInvalid Ġarticle Ġ*/ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinput Category 1 _ Return Valid Id () Ġ= Ġrun Success Test ({ Ġcustom ID Handler . getID ( TestData . category 1 ) Ġ}, Ġ" p Pt - Programming - ego ") ĊĊĠĠĠ Ġ@ Test ( expected Ġ= ĠIllegalArgumentException :: class ) ĊĠĠĠ Ġfun Ġinput Invalid Category _ Throws Exception () Ġ{ Ġcustom ID Handler . getID ( TestData . empty Category ) Ġ/* ĠWhen Ġentering ĠInvalid Ġcategory Ġ*/ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġinput Comment 1 _ Return Valid Id () Ġ= Ġrun Success Test ({ Ġcustom ID Handler . getID ( TestData . comment 1 ) Ġ}, Ġ" 1 pub - 6 4 3 3 4 ") ĊĊĠĠĠ Ġ@ Test ( expected Ġ= ĠIllegalArgumentException :: class ) ĊĠĠĠ Ġfun Ġinput Invalid Comment _ Throws Exception () Ġ{ Ġcustom ID Handler . getID ( TestData . empty Comment ) Ġ/* When Ġentering ĠInvalid Ġcomment */ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġrun Success Test ( fun UnderTest : ĠCustom ID Handler . () Ġ-> ĠString , Ġexpected : ĠString ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġcustom ID Handler . fun UnderTest () Ġ// ĠWhen Ġentering Ġvalid Ġobject ĊĊĠĠĠĠĠĠĠ ĠassertThat ( result ). isEqualTo ( expected ) Ġ// ĠAssert Ġit Ġmatches Ġour Ġexpectations ĊĠĠĠ Ġ} Ċ } Ċ