package Ġspace . yar os lav . family bot . infrastructure Ċ Ċ import Ġorg . mockito . kotlin . any Ċ import Ġorg . mockito . kotlin . eq Ċ import Ġorg . mockito . kotlin . mock Ċ import Ġorg . telegram . telegram bots . meta . api . objects . Chat Ċ import Ġorg . telegram . telegram bots . meta . api . objects . Message Ċ import Ġorg . telegram . telegram bots . meta . api . objects . Message Entity Ċ import Ġorg . telegram . telegram bots . meta . api . objects . Update Ċ import Ġorg . telegram . telegram bots . meta . api . objects . User Ċ import Ġspace . yar os lav . family bot . common . extensions . context Ċ import Ġspace . yar os lav . family bot . models . router . Executor Context Ċ import Ġspace . yar os lav . family bot . models . telegram . Command Ċ import Ġspace . yar os lav . family bot . models . telegram . stick ers . St icker Ċ import Ġspace . yar os lav . family bot . services . settings . Easy KeyValue Service Ċ import Ġspace . yar os lav . family bot . services . settings . U kr ain ian Language Ċ import Ġspace . yar os lav . family bot . services . talk ing . Dictionary Ċ import Ġspace . yar os lav . family bot . services . talk ing . Dictionary Reader Ċ import Ġspace . yar os lav . family bot . telegram . Bot Config Ċ import Ġorg . telegram . telegram bots . meta . api . objects . stick ers . St icker Ġas ĠTelegram St icker Ċ Ċ private Ġval Ġkey Value Service Ġ= Ġmock < Easy KeyValue Service > Ġ{ ĊĠĠĠ Ġon Ġ{ Ġget ( eq ( U kr ain ian Language ), Ġany ()) Ġ}. thenReturn ( false ) Ċ } Ċ private Ġval Ġdictionary Ġ= ĠDictionary ( key Value Service , ĠDictionary Reader ()) Ċ Ċ private Ġval Ġbot Config Ġ= ĠBot Config ( ĊĠĠĠ Ġbot Token Ġ= Ġ" 1 2 3 ", ĊĠĠĠ Ġbot Name Ġ= Ġ" Integration Tests ", ĊĠĠĠ Ġdeveloper Ġ= Ġ" Integration Tests Developer ", ĊĠĠĠ Ġdeveloper Id Ġ= Ġ" 1 2 3 ", ĊĠĠĠ Ġbot Name Aliases Ġ= ĠlistOf (" Integration Tests "), ĊĠĠĠ Ġy an dex Key Ġ= Ġnull , ĊĠĠĠ Ġpayment Token Ġ= Ġnull , ĊĠĠĠ Ġtest Environment Ġ= Ġtrue Ċ ) Ċ Ċ fun Ġcreate Simple Context ( text : ĠString ? Ġ= Ġnull ): ĠExecutor Context Ġ{ ĊĊĠĠĠ Ġreturn Ġupdate ( text ). context ( bot Config , Ġdictionary ) Ċ } Ċ Ċ fun ĠUpdate . create Context () Ġ= Ġthis . context ( bot Config , Ġdictionary ) Ċ Ċ fun Ġcreate Simple Command Context ( command : ĠCommand , Ġprefix : ĠString ? Ġ= Ġnull , Ġpostfix : ĠString ? Ġ= Ġnull ): ĠExecutor Context Ġ{ ĊĠĠĠ Ġreturn Ġcreate Simple Command ( command , Ġprefix , Ġpostfix ). context ( bot Config , Ġdictionary ) Ċ } Ċ Ċ fun Ġcreate Simple Update ( text : ĠString ? Ġ= Ġnull ): ĠUpdate Ġ{ ĊĠĠĠ Ġreturn Ġupdate ( text ) Ċ } Ċ Ċ fun Ġcreate Simple Message ( text : ĠString ? Ġ= Ġnull , Ġchat : ĠChat Ġ= Ġchat ()): ĠMessage Ġ{ ĊĠĠĠ Ġreturn Ġmessage ( text , Ġchat ) Ċ } Ċ Ċ fun Ġcreate Simple Command ( command : ĠCommand , Ġprefix : ĠString ? Ġ= Ġnull , Ġpostfix : ĠString ? Ġ= Ġnull ): ĠUpdate Ġ{ ĊĠĠĠ Ġval Ġentire Message Ġ= Ġ( prefix Ġ?: Ġ"") Ġ+ Ġcommand . command Ġ+ Ġ( postfix Ġ?: Ġ"") ĊĠĠĠ Ġreturn Ġupdate ( ent ire Message ). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġelement Ġ= ĠMessage Entity ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" bot _ command ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprefix ?. length Ġ?: Ġ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcommand . command . length Ġ+ Ġ( postfix ?. length Ġ?: Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. apply Ġ{ Ġtext Ġ= Ġcommand . command Ġ} ĊĠĠĠĠĠĠĠ Ġthis . message . entities Ġ= Ġmutable ListOf () ĊĠĠĠĠĠĠĠ Ġthis . message . entities . add ( element ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġcreate Simple User ( is Bot : ĠBoolean Ġ= Ġfalse , Ġbot Name : ĠString ? Ġ= Ġnull ): ĠUser Ġ{ ĊĠĠĠ Ġval Ġuser Ġ= Ġuser () ĊĠĠĠ Ġif Ġ( is Bot ) Ġ{ ĊĠĠĠĠĠĠĠ Ġuser . is Bot Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġuser . userName Ġ= Ġbot Name ĊĠĠĠ Ġ} ĊĠĠĠ Ġreturn Ġuser Ċ } Ċ Ċ fun Ġsingle St icker Context ( st icker : ĠSt icker ): ĠExecutor Context Ġ{ ĊĠĠĠ Ġreturn Ġupdate () ĊĠĠĠĠĠĠĠ Ġ. apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmessage . st icker Ġ= ĠTelegram St icker (). apply Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemoji Ġ= Ġst icker . st icker Emoji ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsetName Ġ= Ġst icker . pack . pack Name ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfile Id Ġ= Ġrandom String () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}. context ( bot Config , Ġdictionary ) Ċ } Ċ Ċ private Ġfun Ġupdate ( text : ĠString ? Ġ= Ġnull ): ĠUpdate Ġ{ ĊĠĠĠ Ġreturn ĠUpdate (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġmessage Ġ= Ġmessage ( text , Ġchat ()) ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġmessage ( text : ĠString ?, Ġchat : ĠChat ): ĠMessage Ġ{ ĊĠĠĠ Ġreturn ĠMessage (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( text Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġthis . text Ġ= Ġtext ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġthis . chat Ġ= Ġchat ĊĠĠĠĠĠĠĠ Ġfrom Ġ= Ġuser () ĊĠĠĠĠĠĠĠ ĠmessageId Ġ= Ġrandom Int () ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġuser (): ĠUser Ġ{ ĊĠĠĠ Ġval ĠuserId Ġ= Ġrandom UserId () ĊĠĠĠ Ġreturn ĠUser (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġid Ġ= ĠuserId ĊĠĠĠĠĠĠĠ ĠuserName Ġ= Ġ" user $ userId " ĊĠĠĠĠĠĠĠ ĠfirstName Ġ= Ġ" Test Ġuser " ĊĠĠĠĠĠĠĠ ĠlastName Ġ= Ġ"# $ userId " ĊĠĠĠĠĠĠĠ Ġis Bot Ġ= Ġfalse ĊĠĠĠ Ġ} Ċ } Ċ Ċ private Ġfun Ġchat (): ĠChat Ġ{ ĊĠĠĠ Ġval Ġchat Id Ġ= Ġrandom Chat Id () ĊĠĠĠ Ġreturn ĠChat (). apply Ġ{ ĊĠĠĠĠĠĠĠ Ġid Ġ= Ġchat Id ĊĠĠĠĠĠĠĠ Ġtitle Ġ= Ġ" Test Ġchat Ġ#$ chat Id " ĊĠĠĠĠĠĠĠ Ġtype Ġ= Ġ" super group " ĊĠĠĠ Ġ} Ċ } Ċ