package Ġcom . hus k iel abs . ba ac . domain . use case Ċ Ċ import Ġcom . hus k iel abs . ba ac . domain . datasource . Emoji DataSource Ċ import Ġcom . hus k iel abs . ba ac . domain . use case . Get Random Emoji UseCase Ċ import Ġcom . hus k iel abs . ba ac . domain . use case . shared . No Params Ċ import Ġio . mock k . co Every Ċ import Ġio . mock k . co Verify Ċ import Ġio . mock k . confirm Verified Ċ import Ġio . mock k . mock k Ċ import Ġkotlinx . coroutines . run Blocking Ċ import Ġorg . junit . Assert Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ Ċ class ĠGet Random Emoji UseCase Test Ġ{ ĊĊĠ Ġprivate Ġval Ġemoji DataSource Ġ= Ġmock k < Emoji DataSource >() ĊĊĠ Ġprivate Ġlateinit Ġvar Ġuse Case : ĠGet Random Emoji UseCase ĊĊĠ Ġ@ Before ĊĠ Ġfun Ġ` set Ġup `() Ġ{ ĊĠĠĠ Ġuse Case Ġ= ĠGet Random Emoji UseCase ( emoji DataSource ) ĊĠ Ġ} ĊĊĠ Ġ@ Test ĊĠ Ġfun Ġ` should Ġget Ġrandom Ġemoji `() Ġ{ ĊĠĠĠ Ġval ĠdataSource Response Ġ= Ġ" emoji Url " ĊĠĠĠ Ġval Ġexpected Ġ= Ġ" emoji Url " ĊĊĠĠĠ Ġco Every Ġ{ Ġemoji DataSource . getRandom Emoji () Ġ} Ġreturns ĠdataSource Response ĊĊĠĠĠ Ġval Ġactual Ġ= Ġrun Blocking Ġ{ Ġuse Case ( No Params ) Ġ} ĊĠĠĠ ĠAssert . assertEquals ( expected , Ġactual ) ĊĊĠĠĠ Ġco Verify ( exact ly Ġ= Ġ 1 ) Ġ{ Ġemoji DataSource . getRandom Emoji () Ġ} ĊĊĠĠĠ Ġconfirm Verified ( emoji DataSource ) ĊĠ Ġ} Ċ Ċ } Ċ