package Ġde . s amb alm ues lie . event org . cl an ĊĊ Ċ import Ġde . s amb alm ues lie . event org . cl an . api . Cl an Ċ import Ġde . s amb alm ues lie . event org . cl an . api . Cl an Change Request Ċ import Ġde . s amb alm ues lie . event org . common . Base IntegrationTest Ċ import Ġio . mic ronaut . test . extensions . junit 5 . annotation . Mic ronaut Test Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ @ Mic ronaut Test Ċ class ĠCl an IntegrationTest Ġ: ĠBase IntegrationTest < Cl an >() Ġ{ ĊĊĠĠĠ Ġoverride Ġfun ĠgetDefault Type () Ġ= ĠCl an :: class . java ĊĠĠĠ Ġprivate Ġval ĠbaseUrl Ġ= Ġ"/ api / cl an " ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` crud Ġtest Ġfor Ġcl an Ġand Ġplayer `() Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġrequest Ġ= ĠCl an Change Request (" Cl an Name ", Ġ"[ CN ]", Ġ"") ĊĠĠĠĠĠĠĠ Ġvar Ġcl an Ġ= Ġcall Post ( baseUrl , Ġrequest ) ĊĠĠĠĠĠĠĠ Ġval Ġreference Ġ= ĠCl an ( cl an !!. id , Ġrequest . name , Ġrequest . tag , Ġrequest . discord Id ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( reference , Ġcl an ) ĊĊĠĠĠĠĠĠĠ Ġcl an Ġ= Ġcall Get ("${ baseUrl }/${ cl an . id }") ĊĠĠĠĠĠĠĠ ĠassertEquals ( reference , Ġcl an ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( listOf ( reference ), Ġcall Get Page ( baseUrl ). content ) ĊĊĊĠĠĠĠĠĠĠ Ġval Ġupdate Ġ= ĠCl an Change Request (" New Name ", Ġ"[ NT ]", Ġ" asdf ") ĊĠĠĠĠĠĠĠ Ġcl an Ġ= Ġcall Put ("${ baseUrl }/${ cl an . id }", Ġupdate ) ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( Cl an ( cl an !!. id , Ġupdate . name , Ġupdate . tag , Ġupdate . discord Id ), Ġcl an ) ĊĊĠĠĠĠĠĠĠ Ġdo Delete ("${ baseUrl }/${ cl an . id }") ĊĊĠĠĠĠĠĠĠ ĠassertEquals ( emptyList < Cl an >(), Ġcall Get Page ( baseUrl ). content ) ĊĠĠĠ Ġ} Ċ Ċ } Ċ