package Ġru . ot us . ot us kotlin . reminder calendar . mapper Ċ Ċ import Ġio . mock k . every Ċ import Ġio . mock k . mock k Static Ċ import Ġio . mock k . un mock k Static Ċ import Ġorg . assertj . core . api . Assertions . assertThat Ċ import Ġorg . junit . jupiter . api . After Each Ċ import Ġorg . junit . jupiter . api . BeforeEach Ċ import Ġru . ot us . ot us kotlin . reminder calendar . common . backend . context . Context Ċ import Ġru . ot us . ot us kotlin . reminder calendar . common . backend . model .* Ċ import Ġru . ot us . ot us kotlin . reminder calendar . transport . model . common .* Ċ import Ġru . ot us . ot us kotlin . reminder calendar . transport . model . event .* Ċ import Ġjava . time . LocalDateTime Ċ import Ġjava . time . format . DateTime Formatter Ċ import Ġjava . util .* Ċ import Ġkotlin . test . Test Ċ Ċ class ĠEvent Mapper Test Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġguid Ġ= Ġ" 2 b 5 edf 5 c - 0 3 8 8 - 4 f 5 5 - 9 b 0 5 - 6 7 5 4 6 0 e 0 4 6 2 d " ĊĊĠĠĠ Ġ@ BeforeEach ĊĠĠĠ Ġfun Ġmock Init () Ġ{ ĊĠĠĠĠĠĠĠ Ġmock k Static ( LocalDateTime :: class ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĠLocalDateTime . now () Ġ} Ġreturns ĠLocalDateTime . of ( 2 0 2 0 , Ġ 1 , Ġ 1 , Ġ 1 0 , Ġ 2 0 ) ĊĠĠĠĠĠĠĠ Ġmock k Static ( UUID :: class ) ĊĠĠĠĠĠĠĠ Ġevery Ġ{ ĠUUID . randomUUID () Ġ} Ġreturns ĠUUID . fromString ( guid ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ After Each ĊĠĠĠ Ġfun Ġdestroy () Ġ{ ĊĠĠĠĠĠĠĠ Ġun mock k Static ( LocalDateTime :: class ) ĊĠĠĠĠĠĠĠ Ġun mock k Static ( UUID :: class ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` set Ġrequest Ġcreate Ġevent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Event Create Ġ= ĠRequest Event Create ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrequestId Ġ= Ġ" create - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdebug Ġ= ĠDebug ( mode Ġ= ĠWork Mode Dto . PRO D ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Create Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġcontext . request ( request Event Create ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( context . request EventId ). isEqualTo ( EventId Model (" create - id ")) ĊĠĠĠĠĠĠĠ ĠassertThat ( context . request Event ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model . NONE , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` set Ġrequest Ġupdate Ġevent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Event Update Ġ= ĠRequest Event Update ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrequestId Ġ= Ġ" create - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdebug Ġ= ĠDebug ( mode Ġ= ĠWork Mode Dto . PRO D ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Update Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext () ĊĊĠĠĠĠĠĠĠ Ġcontext . request ( request Event Update ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( context . request EventId ). isEqualTo ( EventId Model (" create - id ")) ĊĠĠĠĠĠĠĠ ĠassertThat ( context . request Event ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` set Ġrequest Ġread Ġevent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Event Read Ġ= ĠRequest Event Read ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdebug Ġ= ĠDebug ( mode Ġ= ĠWork Mode Dto . PRO D ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Id Ġ= Ġ" event - id " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext () ĊĊĠĠĠĠĠĠĠ Ġcontext . request ( request Event Read ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( context . request EventId ). isEqualTo ( EventId Model (" event - id ")) ĊĠĠĠĠĠĠĠ ĠassertThat ( context . request Event ). isEqualTo ( Event Model . NONE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` set Ġrequest Ġdelete Ġevent `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Event Delete Ġ= ĠRequest Event Delete ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdebug Ġ= ĠDebug ( mode Ġ= ĠWork Mode Dto . PRO D ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevent Id Ġ= Ġ" event - id " ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext () ĊĊĠĠĠĠĠĠĠ Ġcontext . request ( request Event Delete ) ĊĊĠĠĠĠĠĠĠ ĠassertThat ( context . request EventId ). isEqualTo ( EventId Model (" event - id ")) ĊĠĠĠĠĠĠĠ ĠassertThat ( context . request Event ). isEqualTo ( Event Model . NONE ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` set Ġrequest Ġevent Ġfilter `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Event Filter Ġ= ĠRequest Event Filter ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠrequestId Ġ= Ġ" create - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdebug Ġ= ĠDebug ( mode Ġ= ĠWork Mode Dto . PRO D ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfilter Ġ= ĠEvent Filter Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . DA IL Y , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Ġ= Ġ 2 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= Ġ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext () ĊĊĠĠĠĠĠĠĠ Ġcontext . request Filter ( request Event Filter ) ĊĠĠĠĠĠĠĠ ĠassertThat ( context . request Event Filter ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFilter Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Ġ= Ġ 2 1 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= Ġ 2 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Model Ġ= ĠFrequency Model . DA IL Y ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġcreate Ġevent Ġwhen Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . errors Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Create Dto Ġ= Ġcontext . to Response Event Create () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Create Dto ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . ERROR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġcreate Ġevent Ġwithout Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . response Event Ġ= ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Create Dto Ġ= Ġcontext . to Response Event Create () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Create Dto ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Create ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . SUCCESS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġupdate Ġevent Ġwhen Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . errors Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Update Ġ= Ġcontext . to Response Event Update () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Update ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Update ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . ERROR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġupdate Ġevent Ġwithout Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . response Event Ġ= ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Update Ġ= Ġcontext . to Response Event Update () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Update ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Update ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . SUCCESS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġread Ġevent Ġwhen Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . errors Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Read Ġ= Ġcontext . to Response Event Read () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Read ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Read ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . ERROR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġread Ġevent Ġwithout Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . response Event Ġ= ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Read Ġ= Ġcontext . to Response Event Read () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Read ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Read ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . SUCCESS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġdelete Ġevent Ġwhen Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . errors Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Delete Ġ= Ġcontext . to Response Event Delete () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Delete ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Delete ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . ERROR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeleted Ġ= Ġfalse , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġdelete Ġevent Ġwithout Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . response Event Ġ= ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Delete Ġ= Ġcontext . to Response Event Delete () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Delete ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Delete ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . SUCCESS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevent Ġ= ĠEvent Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdeleted Ġ= Ġtrue , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġevent Ġfilter Ġwhen Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . errors Ġ= Ġmutable ListOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Filter Ġ= Ġcontext . to Response Event Filter () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Filter ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Filter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . ERROR , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠError Value Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Ġ= Ġ" code ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfield Ġ= Ġ" field ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmessage Ġ= Ġ" message ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` convert Ġto Ġresponse Ġevent Ġfilter Ġwithout Ġerror `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġcontext Ġ= ĠContext ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrequest EventId Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= ĠLocalDateTime . now (). minus Minutes ( 1 ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġevents Count Ġ= Ġ 1 0 3 , ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġcontext . response Event Filter Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠEvent Model ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= ĠEvent Id Model (" event - id "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= ĠLocalDateTime . parse (" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĠDateTime Formatter . ISO _ DATE _ TIME ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Model . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠUserId (" user - id "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠĠĠĠĠ Ġval Ġresponse Event Filter Ġ= Ġcontext . to Response Event Filter () ĊĊĠĠĠĠĠĠĠ ĠassertThat ( response Event Filter ). isEqualTo ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠResponse Event Filter ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġon RequestId Ġ= Ġ" request - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresponse Id Ġ= Ġguid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠstartTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 1 9 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠendTime Ġ= Ġ" 2 0 2 0 - 0 1 - 0 1 T 1 0 : 2 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstatus Ġ= ĠResponse Status Dto . SUCCESS , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġevents Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠEvent Dto ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" event - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" ÐĶ ÐµÐ½ÑĮ ĠÑĢ Ð¾Ð¶ Ð´ ÐµÐ½Ð¸Ñı ĠÐ¶ ÐµÐ½ Ñĭ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdescription Ġ= Ġ" ÐŃ ÑĤ Ð¾ÑĤ ĠÐ´ ÐµÐ½ÑĮ ĠÑģ Ð°Ð¼ ÑĭÐ¹ ĠÐ³ Ð» Ð°Ð² Ð½ÑĭÐ¹ ĠÐ¿ÑĢ Ð°Ð· Ð´ Ð½Ð¸Ðº ĠÐ² ĠÐ³ Ð¾Ð´ Ñĥ . ĠÐŁ ÑĢÐ¾ ĠÐ½ ÐµÐ³Ð¾ ĠÐ½ Ð¸Ðº Ð°Ðº ĠÐ½ ÐµÐ»ÑĮ Ð· Ñı ĠÐ· Ð°Ð± Ñĭ ÑĤÑĮ ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstart Schedule Ġ= Ġ" 2 0 2 1 - 0 2 - 2 5 T 1 3 : 4 0 : 0 0 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ" user - id ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrequency Ġ= ĠFrequency Dto . YEAR LY , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmobile Ġ= Ġ"+ 7 1 2 3 4 5 6 7 8 9 ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġerrors Ġ= ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcount Ġ= Ġ 1 0 3 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }