package Ġcz . v ut br . fit . k not . entic ing . webserver . controller ĊĊ Ċ import Ġcom . n ha ar man . mock it ok otlin 2 .* Ċ import Ġcz . v ut br . fit . k not . entic ing . api . Management Service Api Ċ import Ġcz . v ut br . fit . k not . entic ing . dto . Cor pus Format Ċ import Ġcz . v ut br . fit . k not . entic ing . dto . Search Query Ċ import Ġcz . v ut br . fit . k not . entic ing . dto . Text Metadata Ċ import Ġcz . v ut br . fit . k not . entic ing . dto . WebServer Ċ import Ġcz . v ut br . fit . k not . entic ing . dto . utils . toJson Ċ import Ġcz . v ut br . fit . k not . entic ing . mx . Server Monitoring Service Ċ import Ġcz . v ut br . fit . k not . entic ing . webserver . service .* Ċ import Ġcz . v ut br . fit . k not . entic ing . webserver . service . mock . dummy Document Ċ import Ġcz . v ut br . fit . k not . entic ing . webserver . service . mock . first Result Ċ import Ġcz . v ut br . fit . k not . entic ing . webserver . service . mock . snippet Extension Ċ import Ġcz . v ut br . fit . k not . entic ing . webserver . test config . Log Service Test Config Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . junit . jupiter . api . extension . Extend With Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġorg . springframework . beans . factory . annotation . Value Ċ import Ġorg . springframework . boot . test . autoconfigure . web . servlet . Web Mvc Test Ċ import Ġorg . springframework . boot . test . mock . mockito . Mock Bean Ċ import Ġorg . springframework . context . annotation . Import Ċ import Ġorg . springframework . http . MediaType Ċ import Ġorg . springframework . mock . web . Mock Http Session Ċ import Ġorg . springframework . test . context . junit . jupiter . Spring Extension Ċ import Ġorg . springframework . test . web . servlet . MockMvc Ċ import Ġorg . springframework . test . web . servlet . request . MockMvc Request Builders Ċ import Ġorg . springframework . test . web . servlet . result . MockMvc Result Matchers Ċ import Ġorg . springframework . test . web . servlet . result . MockMvc Result Matchers . content Ċ Ċ @ Web Mvc Test Ċ @ Extend With ( Spring Extension :: class ) Ċ @ Import ( Log Service Test Config :: class ) Ċ internal Ġclass ĠQuery Controller Test ( ĊĠĠĠĠĠĠĠ Ġ@ Autowired Ġval Ġmock Mvc : ĠMock Mvc , ĊĠĠĠĠĠĠĠ Ġ@ Value ("\ ${ api . base . path }") Ġval Ġapi BasePath : ĠString Ċ ) Ġ{ ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġcompiler Service : ĠE ql Compiler Service ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar ĠuserService : ĠEnt icing UserService ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġuser Holder : ĠCurrent User Holder ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġsearch Settings Service : ĠSearch Settings Service ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġquery Service : ĠQuery Service ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġmonitoring Service : ĠServer Monitoring Service ĊĊĠĠĠ Ġ@ Mock Bean ĊĠĠĠ Ġlateinit Ġvar Ġmanagement Service Api : ĠManagement Service Api ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġquery () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquery Ġ= ĠSearch Query (" aho j Ġc au ") ĊĠĠĠĠĠĠĠ Ġval Ġselected Settings Ġ= Ġ 1 ĊĊĠĠĠĠĠĠĠ Ġval Ġmock Session Ġ= ĠMock Http Session () ĊĊĠĠĠĠĠĠĠ Ġval Ġdummy Result Ġ= ĠWeb Server . Result List ( listOf ( first Result )) ĊĠĠĠĠĠĠĠ Ġwhenever ( query Service . query ( eq ( query ), Ġeq ( 1 ), Ġany ())). thenReturn ( dummy Result ) ĊĊĠĠĠĠĠĠĠ Ġmock Mvc . perform ( MockMvc Request Builders . post ("$ api BasePath / query ? settings =$ selected Settings ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. contentType ( MediaType . APPLICATION _ JSON ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. content ( query . toJson ())) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( MockMvc Result Matchers . status (). is Ok ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( content (). string ( dummy Result . toJson ())) ĊĊĠĠĠĠĠĠĠ Ġverify ( query Service ). query ( eq ( query ), Ġeq ( 1 ), Ġany ()) ĊĠĠĠĠĠĠĠ Ġclear Inv ocations ( query Service ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcontext () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquery Ġ= ĠWeb Server . Context Extension Query (" foo . baz ", Ġ" col 1 ", Ġ 2 , Ġ 2 0 1 , Ġ 4 2 , Ġ 1 0 ) ĊĊĠĠĠĠĠĠĠ Ġwhenever ( query Service . context ( query )). thenReturn ( snippet Extension ) ĊĊĠĠĠĠĠĠĠ Ġmock Mvc . perform ( MockMvc Request Builders . post ("$ api BasePath / query / context ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. contentType ( MediaType . APPLICATION _ JSON ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. content ( query . toJson ())) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( MockMvc Result Matchers . status (). is Ok ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( content (). string ( snippet Extension . toJson ())) ĊĊĊĠĠĠĠĠĠĠ Ġverify ( query Service ). context ( query ) ĊĠĠĠĠĠĠĠ Ġclear Inv ocations ( query Service ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġdocument () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġquery Ġ= ĠWeb Server . Document Query (" google . com ", Ġ" col 1 ", Ġ 1 , ĠText Metadata . Pre defined (" none "), Ġquery Ġ= Ġ" foo ") ĊĊĠĠĠĠĠĠĠ Ġwhenever ( query Service . document ( query )). thenReturn ( dummy Document ) ĊĊĠĠĠĠĠĠĠ Ġmock Mvc . perform ( MockMvc Request Builders . post ("$ api BasePath / query / document ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. contentType ( MediaType . APPLICATION _ JSON ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. content ( query . toJson ())) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( MockMvc Result Matchers . status (). is Ok ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( content (). string ( dummy Document . toJson ())) ĊĊĊĠĠĠĠĠĠĠ Ġverify ( query Service ). document ( query ) ĊĠĠĠĠĠĠĠ Ġclear Inv ocations ( query Service ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġformat () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġurl Ġ= Ġ"$ api BasePath / query / format / 4 2 " ĊĠĠĠĠĠĠĠ Ġval Ġcorpus Format Ġ= ĠCor pus Format (" dummy ", Ġempty Map (), Ġempty Map ()) ĊĠĠĠĠĠĠĠ Ġwhenever ( query Service . format ( 4 2 )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. thenReturn ( corpus Format ) ĊĊĠĠĠĠĠĠĠ Ġmock Mvc . perform ( MockMvc Request Builders . get ( url )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( MockMvc Result Matchers . status (). is Ok ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. andExpect ( content (). json ( corpus Format . toJson ())) ĊĊĠĠĠĠĠĠĠ Ġverify ( query Service ). format ( 4 2 ) ĊĠĠĠĠĠĠĠ Ġclear Inv ocations ( search Settings Service ) ĊĊĠĠĠ Ġ} Ċ }