1+ package il .org .osm .israelhiking ;
2+
3+ import org .junit .jupiter .api .BeforeEach ;
4+ import org .junit .jupiter .api .Tag ;
5+ import org .junit .jupiter .api .Test ;
6+ import org .junit .jupiter .api .extension .ExtendWith ;
7+ import org .mockito .ArgumentMatchers ;
8+ import org .mockito .Mock ;
9+ import org .mockito .junit .jupiter .MockitoExtension ;
10+ import co .elastic .clients .elasticsearch .ElasticsearchClient ;
11+ import co .elastic .clients .elasticsearch .indices .DeleteIndexRequest ;
12+ import co .elastic .clients .elasticsearch .indices .ElasticsearchIndicesClient ;
13+ import co .elastic .clients .elasticsearch .indices .ExistsAliasRequest ;
14+ import co .elastic .clients .elasticsearch .indices .ExistsRequest ;
15+ import co .elastic .clients .transport .endpoints .BooleanResponse ;
16+ import co .elastic .clients .util .ObjectBuilder ;
17+
18+ import java .util .function .Function ;
19+ import static org .mockito .Mockito .*;
20+
21+ @ Tag ("unit" )
22+ @ ExtendWith (MockitoExtension .class )
23+ class ElasticsearchServiceTest {
24+ @ Mock
25+ private ElasticsearchClient esClient ;
26+ @ Mock
27+ private ElasticsearchIndicesClient indicesClient ;
28+ private final String [] supportedLanguages = {"en" , "es" };
29+ private final String indexAlias = "test-index" ;
30+ @ BeforeEach
31+ void setUp () throws Exception {
32+ when (esClient .indices ()).thenReturn (indicesClient );
33+ }
34+ @ Test
35+ void testCreateElasticsearchClient () throws Exception {
36+ when (indicesClient .existsAlias (ArgumentMatchers .<Function <ExistsAliasRequest .Builder , ObjectBuilder <ExistsAliasRequest >>>any ())).thenReturn (new BooleanResponse (false ));
37+ when (indicesClient .exists (ArgumentMatchers .<Function <ExistsRequest .Builder , ObjectBuilder <ExistsRequest >>>any ())).thenReturn (new BooleanResponse (true ));
38+
39+ ElasticsearchHelper .createPointsIndex (esClient , indexAlias , supportedLanguages );
40+
41+ verify (indicesClient ).delete (ArgumentMatchers .<Function <DeleteIndexRequest .Builder , ObjectBuilder <DeleteIndexRequest >>>any ());
42+ }
43+ }
0 commit comments