package Ġedu . kit . out wait . server . client Ċ Ċ import Ġedu . kit . out wait . server . management . Management Details Ċ import Ġedu . kit . out wait . server . management . Slot Management Information Ċ import Ġedu . kit . out wait . server . slot . Slot Code Ċ import Ġio . mock k .* Ċ import Ġjava . time . Duration Ċ import Ġjava . util .* Ċ import Ġkotlin . test . assertEquals Ċ Ċ /** ĠUnit - Tests Ġfor ĠSlot Information Receiver Ġ*/ Ċ class ĠSlot Information Receiver Test Ġ{ ĊĠĠĠ Ġvar Ġclient Mock Ġ= Ġmock k < Client >( relax ed Ġ= Ġtrue ) ĊĠĠĠ Ġvar Ġslot Code Mock Ġ= Ġmock k < Slot Code >( relax ed Ġ= Ġtrue ) ĊĠĠĠ Ġvar Ġtest Obj Ġ= ĠSlot Information Receiver ( client Mock , Ġslot Code Mock ) ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠCreates Ġmock - objects Ġfor ĠClient Ġand ĠSlot C de Ġwith Ġrelax ed Ġmode Ġon Ġsince Ġthey 're Ġneeded Ġto ĊĠĠĠĠ Ġ* Ġinstantiate Ġnew ĠSlot Information Receiver Ġobject ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ org . junit . jupiter . api . BeforeEach ĊĠĠĠ Ġfun ĠsetUp () Ġ{ ĊĠĠĠĠĠĠĠ Ġclient Mock Ġ= Ġmock k < Client >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġslot Code Mock Ġ= Ġmock k < Slot Code >( relax ed Ġ= Ġtrue ) ĊĠĠĠĠĠĠĠ Ġtest Obj Ġ= ĠSlot Information Receiver ( client Mock , Ġslot Code Mock ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠChecks Ġif Ġsend Slot Data Ġis Ġcalled Ġwith Ġcorrect Ġparameters Ġon Ġclient Ġ*/ ĊĠĠĠ Ġ@ org . junit . jupiter . api . Test ĊĠĠĠ Ġfun Ġtest Set Slot Data Changed () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġslot Management Information Mock Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSlot Management Information ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠManagement Details (" test ", Ġ" test @ test "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDuration . ZERO , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠDuration . ZERO ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġslot Approx Mock Ġ= ĠDate ( 1 2 3 4 ) ĊĠĠĠĠĠĠĠ Ġval Ġslot Code Capt urer Ġ= ĠCapt uring Slot < Slot Code >() ĊĠĠĠĠĠĠĠ Ġval Ġslot Approx Capt urer Ġ= ĠCapt uring Slot < Date >() ĊĠĠĠĠĠĠĠ Ġval Ġslot Management Information Capt urer Ġ= ĠCapt uring Slot < Slot Management Information >() ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient Mock . send Slot Data ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcapture ( slot Code Capt urer ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcapture ( slot Approx Capt urer ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcapture ( slot Management Information Capt urer ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ} Ġjust Ġruns ĊĠĠĠĠĠĠĠ Ġtest Obj . set Slot Data ( slot Approx Mock , Ġslot Management Information Mock ) ĊĠĠĠĠĠĠĠ Ġverify Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġclient Mock . send Slot Data ( slot Code Mock , Ġslot Approx Mock , Ġslot Management Information Mock ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠassertEquals ( slot Approx Capt urer . captured , Ġslot Approx Mock ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( slot Code Capt urer . captured , Ġslot Code Mock ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( slot Management Information Capt urer . captured , Ġslot Management Information Mock ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠChecks Ġif Ġsend Slot Data Ġis ĠNOT Ġcalled Ġwith Ġcorrect Ġparameters Ġon Ġclient Ġ*/ ĊĠĠĠ Ġ@ org . junit . jupiter . api . Test ĊĠĠĠ Ġfun Ġtest Set Slot Data Not Changed () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġslot Management Information Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠSlot Management Information ( Management Details ("", Ġ""), ĠDuration . ZERO , ĠDuration . ZERO ) ĊĠĠĠĠĠĠĠ Ġval Ġslot Approx Ġ= ĠDate ( 0 ) ĊĊĠĠĠĠĠĠĠ Ġtest Obj . set Slot Data ( slot Approx , Ġslot Management Information ) ĊĠĠĠĠĠĠĠ Ġverify ( exact ly Ġ= Ġ 0 ) Ġ{ Ġclient Mock . send Slot Data ( any (), Ġany (), Ġany ()) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠChecks Ġif Ġend Slot Ġis Ġcalled Ġwith Ġcorrect Ġparameters Ġon Ġclient Ġ*/ ĊĠĠĠ Ġ@ org . junit . jupiter . api . Test ĊĠĠĠ Ġfun Ġtest End Slot () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Obj . end () ĊĠĠĠĠĠĠĠ Ġverify Ġ{ Ġclient Mock . end Slot ( slot Code Mock ) Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĠChecks Ġif Ġdelete Slot Ġis Ġcalled Ġwith Ġcorrect Ġparameters Ġon Ġclient Ġ*/ ĊĠĠĠ Ġ@ org . junit . jupiter . api . Test ĊĠĠĠ Ġfun Ġtest Delete Slot () Ġ{ ĊĠĠĠĠĠĠĠ Ġtest Obj . delete () ĊĠĠĠĠĠĠĠ Ġverify Ġ{ Ġclient Mock . delete Slot ( slot Code Mock ) Ġ} ĊĠĠĠ Ġ} Ċ } Ċ