package Ġorg . ev om aster . core . search . algorithms Ċ Ċ import Ġcom . google . inject . Injector Ċ import Ġcom . google . inject . Key Ċ import Ġcom . google . inject . Module Ċ import Ġcom . google . inject . Type Literal Ċ import Ġcom . netflix . g overn ator . gu ice . Lifecycle Injector Ċ import Ġorg . ev om aster . core . Base Module Ċ import Ġorg . ev om aster . core . EM Config Ċ import Ġorg . ev om aster . core . TestUtils Ċ import Ġorg . ev om aster . core . search . algorithms . on em ax . One Max Individual Ċ import Ġorg . ev om aster . core . search . algorithms . on em ax . One Max Module Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Assertions . assertTrue Ċ import Ġorg . junit . jupiter . api . Test ĊĊ Ċ class ĠRandom Search Test Ġ{ ĊĊĠĠĠ Ġval Ġinjector : ĠInject or Ġ= ĠLifecycle Injector . builder () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Modules (* ĠarrayOf < Module >( One Max Module (), ĠBase Module ())) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build (). create Injector () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Random Search (){ ĊĊĠĠĠĠĠĠĠ ĠTestUtils . handle Fl aky Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġrs Ġ= Ġinjector . getInstance ( Key . get ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġobject Ġ: ĠType Literal < Random Algorithm < One Max Individual >>() Ġ{} )) ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġconfig Ġ= Ġinjector . getInstance ( EM Config :: class . java ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . max Action Evalu ations Ġ= Ġ 3 0 0 0 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġconfig . stopping Criterion Ġ= ĠEM Config . Stopping Criterion . FITNESS _ EVAL U ATIONS ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsolution Ġ= Ġrs . search () ĊĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertEquals ( 3 . 0 , Ġsolution . overall . compute Fitness Score (), Ġ 0 . 0 0 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠassertTrue ( solution . individual s . size Ġ<= Ġ 2 ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }