package Ġcom . d md irc . kt irc . messages . processors čĊč Ċ import Ġcom . d md irc . kt irc . Test Constants č Ċ import Ġcom . d md irc . kt irc . events . Authentication Message č Ċ import Ġcom . d md irc . kt irc . events . S asl Finished č Ċ import Ġcom . d md irc . kt irc . events . S asl Me chanism Not Available Error č Ċ import Ġcom . d md irc . kt irc . model . I rc Message č Ċ import Ġcom . d md irc . kt irc . params č Ċ import Ġcom . d md irc . kt irc . util . currentTime Provider č Ċ import Ġorg . junit . jupiter . api . Assertions .* č Ċ import Ġorg . junit . jupiter . api . BeforeEach č Ċ import Ġorg . junit . jupiter . api . Test čĊč Ċ internal Ġclass ĠAuthentication Processor Test Ġ{ čĊčĊĠĠĠ Ġprivate Ġvar Ġprocessor Ġ= ĠAuthentication Processor () čĊčĊĠĠĠ Ġ@ BeforeEach čĊĠĠĠ Ġfun ĠsetUp () Ġ{ čĊĠĠĠĠĠĠĠ ĠcurrentTime Provider Ġ= Ġ{ ĠTest Constants . time Ġ} čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġauthentication Ġmessage Ġwith Ġnull Ġargument Ġif Ġno Ġparams Ġspecified `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġnull , Ġ" AUTHENT ICATE ", Ġempty List ())) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠAuthentication Message čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertNull ( event . argument ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġauthentication Ġmessage Ġwith Ġnull Ġargument Ġif Ġ+ Ġspecified `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġnull , Ġ" AUTHENT ICATE ", Ġparams ("+ "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠAuthentication Message čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertNull ( event . argument ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġauthentication Ġmessage Ġwith Ġargument `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġnull , Ġ" AUTHENT ICATE ", Ġparams (" Hack The Planet "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠAuthentication Message čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertEquals (" Hack The Planet ", Ġevent . argument ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġs asl Ġfinished Ġon Ġsuccess `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġ": the . g ib son ". toByteArray (), Ġ" 9 0 3 ", Ġparams ("* ", Ġ" SAS L Ġauthentication Ġsuccessful "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠS asl Finished čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertTrue ( event . success ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġs asl Ġfinished Ġon Ġgeneric Ġfailure `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġ": the . g ib son ". toByteArray (), Ġ" 9 0 4 ", Ġparams ("* ", Ġ" SAS L Ġauthentication Ġfailed "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠS asl Finished čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertFalse ( event . success ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġnot Ġavailable Ġerror Ġon Ġme chs Ġnumeric `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġ": the . g ib son ". toByteArray (), Ġ" 9 0 8 ", Ġparams ("* ", Ġ" PLAIN , EXTERNAL , MAGIC ", Ġ" are Ġsupported Ġby Ġthis Ġserver "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠS asl Me chanism Not Available Error čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertEquals ( listOf (" PLAIN ", Ġ" EXTERNAL ", Ġ" MAGIC "), Ġevent . me chan isms ) čĊĠĠĠ Ġ} čĊčĊĠĠĠ Ġ@ Test čĊĠĠĠ Ġfun Ġ` raises Ġempty Ġnot Ġavailable Ġerror Ġon Ġmalformed Ġme chs Ġnumeric `() Ġ{ čĊĠĠĠĠĠĠĠ Ġval Ġevents Ġ= Ġprocessor . process ( I rc Message ( empty Map (), Ġ": the . g ib son ". toByteArray (), Ġ" 9 0 8 ", Ġparams ("* "))) čĊčĊĠĠĠĠĠĠĠ ĠassertEquals ( 1 , Ġevents . size ) čĊĠĠĠĠĠĠĠ Ġval Ġevent Ġ= Ġevents [ 0 ] Ġas ĠS asl Me chanism Not Available Error čĊĠĠĠĠĠĠĠ ĠassertEquals ( Test Constants . time , Ġevent . metadata . time ) čĊĠĠĠĠĠĠĠ ĠassertTrue ( event . me chan isms . isEmpty ()) čĊĠĠĠ Ġ} čĊč Ċ } čĊ