package Ġcom . ap ex devs . backend . persistence Ċ Ċ import Ġcom . ap ex devs . backend . persistence . database . entity . Run Parameters Ċ import Ġcom . ap ex devs . backend . persistence . database . repository . Run Parameters Repository Ċ import Ġcom . ap ex devs . backend . persistence . exception . Run Parameters NotFoundException Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Ċ import Ġio . mock k . slot Ċ import Ġorg . bson . types . ObjectId Ċ import Ġorg . junit . jupiter . api . DisplayName Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . assert Throws Ċ import Ġjava . util . Optional Ċ Ċ @ DisplayName (" Database ĠRun Parameters Operation Ġtests ") Ċ class ĠRun Parameters Operation Test Ġ{ ĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod : Ġcreate Run Parameters ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Assert Ġcreate Ġrun Ġparameters Ġinserts Ġcorrect Ġvalues `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Repository Ġ= Ġmock k < Run Parameters Repository >() ĊĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġinstance Ġwith Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Operation Ġ= ĠRun Parameters Operation ( run Parameters Repository ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġset Ġmock ing Ġreturns Ġand Ġcaptures ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Slot Ġ= Ġslot < Run Parameters >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġrun Parameters Repository . insert ( capture ( run Parameters Slot )) Ġ} Ġanswers ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ{ Ġrun Parameters Slot . captured Ġ} ĊĊĠĠĠĠĠĠĠ Ġ// Ġperform Ġmethod ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Ġ= ĠRun Parameters () ĊĠĠĠĠĠĠĠ Ġrun Parameters Operation . create Run Parameters ( run Parameters ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġcheck Ġresults ĊĠĠĠĠĠĠĠ Ġassert ( run Parameters Slot . is Capt ured ) ĊĠĠĠĠĠĠĠ Ġassert ( run Parameters Slot . captured Ġ== Ġrun Parameters ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod : Ġget Run Parameters ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Assert Ġget Ġrun Ġparameters Ġreturns Ġcorrect Ġrun Ġparameters `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Repository Ġ= Ġmock k < Run Parameters Repository >() ĊĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġinstance Ġwith Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Operation Ġ= ĠRun Parameters Operation ( run Parameters Repository ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġset Ġmock ing Ġreturns Ġand Ġcaptures ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Ġ= ĠRun Parameters () ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġrun Parameters Repository . findById ( any ()) Ġ} Ġreturns ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOptional . of ( run Parameters ) ĊĊĠĠĠĠĠĠĠ Ġval Ġreturned Ġ= Ġrun Parameters Operation . get Run Parameters ( run Parameters . id ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġcheck Ġresults ĊĠĠĠĠĠĠĠ Ġassert ( returned Ġ== Ġrun Parameters ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod : Ġget Run Parameters ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Assert Ġget Ġrun Ġparameters Ġthrows Ġif Ġnot Ġfound `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Repository Ġ= Ġmock k < Run Parameters Repository >() ĊĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġinstance Ġwith Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Operation Ġ= ĠRun Parameters Operation ( run Parameters Repository ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġset Ġmock ing Ġreturns Ġand Ġcaptures ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Ġ= ĠRun Parameters () ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġrun Parameters Repository . findById ( any ()) Ġ} Ġreturns ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOptional . empty () ĊĊĠĠĠĠĠĠĠ ĠassertThrows < Run Parameters NotFoundException > Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrun Parameters Operation . get Run Parameters ( run Parameters . id ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠMethod : Ġget Global Run Parameters ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` Assert Ġget Ġglobal Ġrun Ġparameters Ġreturns Ġcorrect Ġrun Ġparameters `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Repository Ġ= Ġmock k < Run Parameters Repository >() ĊĊĠĠĠĠĠĠĠ Ġ// Ġcreate Ġinstance Ġwith Ġmocks ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters Operation Ġ= ĠRun Parameters Operation ( run Parameters Repository ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġset Ġmock ing Ġreturns Ġand Ġcaptures ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters 1 Ġ= ĠRun Parameters ( ObjectId . get (), Ġ 1 0 0 , Ġ 1 0 0 , Ġ 6 0 0 0 , Ġ 1 0 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġrun Parameters 2 Ġ= ĠRun Parameters () ĊĠĠĠĠĠĠĠ Ġevery Ġ{ Ġrun Parameters Repository . findAll () Ġ} Ġreturns ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( run Parameters 1 , Ġrun Parameters 2 ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġperform Ġmethod ĊĠĠĠĠĠĠĠ Ġval Ġreturned Ġ= Ġrun Parameters Operation . getGlobal Run Parameters () ĊĊĠĠĠĠĠĠĠ Ġ// Ġcheck Ġresults ĊĠĠĠĠĠĠĠ Ġassert ( returned Ġ== Ġrun Parameters 1 ) ĊĠĠĠĠĠĠĠ Ġassert ( returned Ġ!= Ġrun Parameters 2 ) ĊĠĠĠ Ġ} Ċ } Ċ