package Ġcom . thought works . arch guard . scanner . domain . scanner . java ext . bs Ċ Ċ import Ġcom . thought works . arch guard . scanner . domain . system . Build Tool Ċ import Ġcom . thought works . arch guard . scanner . infrastructure . command . InMemory Consumer Ċ import Ġorg . j db i . v 3 . core . Handle Ċ import Ġorg . j db i . v 3 . core . J db i Ċ import Ġorg . junit . jupiter . api . Assertions Ċ import Ġorg . junit . jupiter . api . Disabled Ċ import Ġorg . junit . jupiter . api . Test Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġorg . springframework . boot . test . context . SpringBootTest Ċ import Ġorg . springframework . test . context . Active Profiles Ċ import Ġjava . io . File Ċ Ċ @ SpringBootTest ( web Environment Ġ= ĠSpring Boot Test . Web Environment . RANDOM _ PORT ) Ċ @ Active Profiles (" test ") Ċ @ Disabled Ċ internal Ġclass ĠBad S mell Scanner Test (@ Autowired Ġval Ġbad S mell Scanner : ĠBad S mell Scanner , Ġ@ Autowired Ġval Ġj db i : ĠJ db i ) Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġshould _ get _ bad _ s mell _ report () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġscan Context Ġ= ĠScan Context ( ĊĠĠĠĠĠĠĠĠĠĠĠĠ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" repo ", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBuild Tool . GRAD LE , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠFile ( java Class . class Loader . getResource (" Test Project "). to URI ()), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠArrayList (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" jvm ", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"", ĊĠĠĠĠĠĠĠĠĠĠĠ ĠIn Memory Consumer (), ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"" ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġbad S mell Scanner . scan ( scan Context ) ĊĊĠĠĠĠĠĠĠ Ġval Ġbad S mell s Ġ= Ġj db i . with Handle < List < Bad S mell >, ĠRuntimeException > Ġ{ Ġhandle : ĠHandle Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ Ġhandle . createQuery (" select Ġ* Ġfrom Ġmetric _ code _ bad _ s mell ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. map To ( Bad S mell :: class . java ). list () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( bad S mell s . size , Ġ 2 ) ĊĠĠĠĠĠĠĠ ĠAssertions . assertEquals ( bad S mell s [ 0 ]. system Id , Ġ 1 ) ĊĠĠĠ Ġ} Ċ } Ċ