package Ġru . gl itch less . s anta . routing . auth . test Ċ Ċ import Ġio . ktor . application .* Ċ import Ġio . ktor . routing .* Ċ import Ġru . gl itch less . s anta . model . api . ApiResponse Ċ import Ġru . gl itch less . s anta . model . exception . throw ables . Auth Exception Ċ import Ġru . gl itch less . s anta . repository . auth . test . Test Auth Repository Ċ import Ġru . gl itch less . s anta . routing . auth . I Auth Type Ċ import Ġru . gl itch less . s anta . routing . to Full Api Object Ċ import Ġru . gl itch less . s anta . utils . Config Ċ import Ġru . gl itch less . s anta . utils . Config Key Ċ import Ġru . gl itch less . s anta . utils . create Session Ċ import Ġru . gl itch less . s anta . utils . respond With Code Ċ Ċ class ĠTest Auth Ġ: ĠI Auth Type Ġ{ ĊĠĠĠ Ġoverride Ġfun ĠgetKey () Ġ= Ġ" test " ĊĊĠĠĠ Ġoverride Ġfun Ġinit Routes ( route : ĠRoute ) Ġ= Ġroute . invoke Ġ{ ĊĠĠĠĠĠĠĠ Ġget Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ(! Config . get ( Config Key . ENVIRONMENT _ DEBUG ). to Boolean ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠAuth Exception () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpair UserId Ġ= Ġcall . request . query Parameters [" pair _ user "] ?. toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠisActive Ġ= Ġcall . request . query Parameters [" is _ active "] ?. to Boolean () Ġ?: Ġfalse ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġid Ġ= Ġcall . request . query Parameters [" id "] ?. toInt () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( id Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcall . create Session (). userId Ġ= Ġid ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn @ get ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġuser Ġ= ĠTest Auth Repository . register Test User ( pair UserId , ĠisActive ) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġcall . create Session (). userId Ġ= Ġuser . id . value ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġcall . respond With Code ( ApiResponse ( user . to Full Api Object ())) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ