Skip to content

Commit a438b38

Browse files
authored
DATAES-675 - Migrate tests to JUnit5.
Original PR: #336
1 parent 4e7f1cc commit a438b38

26 files changed

+142
-151
lines changed

src/test/java/org/springframework/data/elasticsearch/DocumentUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020
import java.util.Arrays;
2121
import java.util.Collections;
2222

23-
import org.junit.Test;
23+
import org.junit.jupiter.api.Test;
2424
import org.springframework.data.elasticsearch.core.document.Document;
2525

2626
/**

src/test/java/org/springframework/data/elasticsearch/NestedObjectTests.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,8 @@
3434
import org.apache.lucene.search.join.ScoreMode;
3535
import org.elasticsearch.index.query.BoolQueryBuilder;
3636
import org.elasticsearch.index.query.QueryBuilder;
37-
import org.junit.Before;
38-
import org.junit.Test;
39-
import org.junit.runner.RunWith;
37+
import org.junit.jupiter.api.BeforeEach;
38+
import org.junit.jupiter.api.Test;
4039
import org.springframework.beans.factory.annotation.Autowired;
4140
import org.springframework.data.annotation.Id;
4241
import org.springframework.data.domain.Page;
@@ -50,9 +49,10 @@
5049
import org.springframework.data.elasticsearch.core.query.IndexQuery;
5150
import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
5251
import org.springframework.data.elasticsearch.core.query.SearchQuery;
52+
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchTemplateConfiguration;
53+
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
5354
import org.springframework.data.elasticsearch.utils.IndexInitializer;
5455
import org.springframework.test.context.ContextConfiguration;
55-
import org.springframework.test.context.junit4.SpringRunner;
5656

5757
/**
5858
* @author Rizwan Idrees
@@ -61,13 +61,13 @@
6161
* @author Peter-Josef Meisch
6262
* @author Mark Paluch
6363
*/
64-
@RunWith(SpringRunner.class)
65-
@ContextConfiguration("classpath:/elasticsearch-template-test.xml")
64+
@SpringIntegrationTest
65+
@ContextConfiguration(classes = { ElasticsearchTemplateConfiguration.class })
6666
public class NestedObjectTests {
6767

6868
@Autowired private ElasticsearchTemplate elasticsearchTemplate;
6969

70-
@Before
70+
@BeforeEach
7171
public void before() {
7272

7373
IndexInitializer.init(elasticsearchTemplate, Book.class);

src/test/java/org/springframework/data/elasticsearch/client/ClientConfigurationUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
import javax.net.ssl.SSLContext;
2525

2626
import org.apache.http.conn.ssl.NoopHostnameVerifier;
27-
import org.junit.Test;
27+
import org.junit.jupiter.api.Test;
2828
import org.springframework.http.HttpHeaders;
2929

3030
/**

src/test/java/org/springframework/data/elasticsearch/client/ClusterNodesUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
import static org.assertj.core.api.Assertions.*;
1919

20-
import org.junit.Test;
20+
import org.junit.jupiter.api.Test;
2121

2222
/**
2323
* Unit tests for {@link ClusterNodes}.

src/test/java/org/springframework/data/elasticsearch/client/InetSocketAddressParserUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
import java.net.InetSocketAddress;
2121

22-
import org.junit.Test;
22+
import org.junit.jupiter.api.Test;
2323

2424
/**
2525
* Unit tests for {@link InetSocketAddressParser}.

src/test/java/org/springframework/data/elasticsearch/client/reactive/DefaultWebClientProviderUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
import java.net.InetSocketAddress;
2121

22-
import org.junit.Test;
22+
import org.junit.jupiter.api.Test;
2323
import org.springframework.web.reactive.function.client.WebClient;
2424

2525
/**

src/test/java/org/springframework/data/elasticsearch/client/reactive/MultiNodeHostProviderUnitTests.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@
2121
import reactor.core.publisher.Mono;
2222
import reactor.test.StepVerifier;
2323

24-
import org.junit.Before;
25-
import org.junit.Test;
24+
import org.junit.jupiter.api.BeforeEach;
25+
import org.junit.jupiter.api.Test;
2626
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
2727
import org.springframework.data.elasticsearch.client.ElasticsearchHost.State;
2828
import org.springframework.data.elasticsearch.client.reactive.HostProvider.Verification;
@@ -32,7 +32,6 @@
3232

3333
/**
3434
* @author Christoph Strobl
35-
* @currentRead Golden Fool - Robin Hobb
3635
*/
3736
public class MultiNodeHostProviderUnitTests {
3837

@@ -43,7 +42,7 @@ public class MultiNodeHostProviderUnitTests {
4342
MockDelegatingElasticsearchHostProvider<MultiNodeHostProvider> mock;
4443
MultiNodeHostProvider provider;
4544

46-
@Before
45+
@BeforeEach
4746
public void setUp() {
4847

4948
mock = ReactiveMockClientTestsUtils.multi(HOST_1, HOST_2, HOST_3);

src/test/java/org/springframework/data/elasticsearch/client/reactive/ReactiveElasticsearchClientUnitTests.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,8 @@
3838
import org.elasticsearch.common.unit.TimeValue;
3939
import org.elasticsearch.common.xcontent.XContentType;
4040
import org.elasticsearch.index.VersionType;
41-
import org.junit.Before;
42-
import org.junit.Test;
41+
import org.junit.jupiter.api.BeforeEach;
42+
import org.junit.jupiter.api.Test;
4343
import org.mockito.Mockito;
4444
import org.reactivestreams.Publisher;
4545
import org.springframework.data.elasticsearch.client.reactive.ReactiveMockClientTestsUtils.MockDelegatingElasticsearchHostProvider;
@@ -51,7 +51,6 @@
5151

5252
/**
5353
* @author Christoph Strobl
54-
* @currentRead Golden Fool - Robin Hobb
5554
*/
5655
public class ReactiveElasticsearchClientUnitTests {
5756

@@ -60,7 +59,7 @@ public class ReactiveElasticsearchClientUnitTests {
6059
MockDelegatingElasticsearchHostProvider<HostProvider> hostProvider;
6160
ReactiveElasticsearchClient client;
6261

63-
@Before
62+
@BeforeEach
6463
public void setUp() {
6564

6665
hostProvider = ReactiveMockClientTestsUtils.provider(HOST).withActiveDefaultHost(HOST);

src/test/java/org/springframework/data/elasticsearch/client/reactive/SingleNodeHostProviderUnitTests.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020

2121
import reactor.test.StepVerifier;
2222

23-
import org.junit.Before;
24-
import org.junit.Test;
23+
import org.junit.jupiter.api.BeforeEach;
24+
import org.junit.jupiter.api.Test;
2525
import org.springframework.data.elasticsearch.client.ElasticsearchHost;
2626
import org.springframework.data.elasticsearch.client.ElasticsearchHost.State;
2727
import org.springframework.data.elasticsearch.client.NoReachableHostException;
@@ -30,7 +30,6 @@
3030

3131
/**
3232
* @author Christoph Strobl
33-
* @currentRead Golden Fool - Robin Hobb
3433
*/
3534
public class SingleNodeHostProviderUnitTests {
3635

@@ -39,7 +38,7 @@ public class SingleNodeHostProviderUnitTests {
3938
MockDelegatingElasticsearchHostProvider<SingleNodeHostProvider> mock;
4039
SingleNodeHostProvider provider;
4140

42-
@Before
41+
@BeforeEach
4342
public void setUp() {
4443

4544
mock = ReactiveMockClientTestsUtils.single(HOST_1);

src/test/java/org/springframework/data/elasticsearch/client/util/RequestConvertersTest.java

+6-9
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,14 @@
1515
*/
1616
package org.springframework.data.elasticsearch.client.util;
1717

18+
import static org.assertj.core.api.Assertions.*;
19+
1820
import java.util.Collections;
1921

2022
import org.elasticsearch.action.delete.DeleteRequest;
2123
import org.elasticsearch.action.index.IndexRequest;
2224
import org.elasticsearch.client.Request;
23-
import org.junit.Test;
24-
25-
import static org.assertj.core.api.Assertions.*;
25+
import org.junit.jupiter.api.Test;
2626

2727
/**
2828
* Unit tests for {@link RequestConverters}.
@@ -38,8 +38,7 @@ public void shouldNotAddIfSeqNoAndIfPrimaryTermToResultIfInputDoesNotcontainThem
3838

3939
Request result = RequestConverters.index(request);
4040

41-
assertThat(result.getParameters())
42-
.doesNotContainKeys("if_seq_no", "if_primary_term");
41+
assertThat(result.getParameters()).doesNotContainKeys("if_seq_no", "if_primary_term");
4342
}
4443

4544
private IndexRequest createMinimalIndexRequest() {
@@ -58,8 +57,7 @@ public void shouldAddIfSeqNoAndIfPrimaryTermToResultIfInputcontainsThemWhenConve
5857

5958
Request result = RequestConverters.index(request);
6059

61-
assertThat(result.getParameters()).containsEntry("if_seq_no", "3")
62-
.containsEntry("if_primary_term", "4");
60+
assertThat(result.getParameters()).containsEntry("if_seq_no", "3").containsEntry("if_primary_term", "4");
6361
}
6462

6563
@Test // DATAES-652
@@ -69,8 +67,7 @@ public void shouldNotAddIfSeqNoAndIfPrimaryTermToResultIfInputDoesNotcontainThem
6967

7068
Request result = RequestConverters.delete(request);
7169

72-
assertThat(result.getParameters())
73-
.doesNotContainKeys("if_seq_no", "if_primary_term");
70+
assertThat(result.getParameters()).doesNotContainKeys("if_seq_no", "if_primary_term");
7471
}
7572

7673
private DeleteRequest createMinimalDeleteRequest() {

src/test/java/org/springframework/data/elasticsearch/core/DocumentAdaptersUnitTests.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
import org.elasticsearch.common.text.Text;
2929
import org.elasticsearch.index.get.GetResult;
3030
import org.elasticsearch.search.SearchHit;
31-
import org.junit.Test;
31+
import org.junit.jupiter.api.Test;
3232
import org.springframework.data.elasticsearch.core.document.Document;
3333
import org.springframework.data.elasticsearch.core.document.DocumentAdapters;
3434
import org.springframework.data.elasticsearch.core.document.SearchDocument;

src/test/java/org/springframework/data/elasticsearch/core/ElasticsearchRestTemplateTests.java

+9-7
Original file line numberDiff line numberDiff line change
@@ -31,15 +31,15 @@
3131
import org.elasticsearch.action.index.IndexRequest;
3232
import org.elasticsearch.action.update.UpdateRequest;
3333
import org.elasticsearch.common.xcontent.XContentType;
34-
import org.junit.Test;
35-
import org.junit.runner.RunWith;
34+
import org.junit.jupiter.api.Test;
3635
import org.springframework.data.annotation.Id;
3736
import org.springframework.data.elasticsearch.annotations.Document;
3837
import org.springframework.data.elasticsearch.annotations.Field;
3938
import org.springframework.data.elasticsearch.core.query.UpdateQuery;
4039
import org.springframework.data.elasticsearch.core.query.UpdateQueryBuilder;
40+
import org.springframework.data.elasticsearch.junit.jupiter.ElasticsearchRestTemplateConfiguration;
41+
import org.springframework.data.elasticsearch.junit.jupiter.SpringIntegrationTest;
4142
import org.springframework.test.context.ContextConfiguration;
42-
import org.springframework.test.context.junit4.SpringRunner;
4343
import org.springframework.test.util.ReflectionTestUtils;
4444

4545
/**
@@ -56,19 +56,21 @@
5656
* @author Don Wellington
5757
* @author Peter-Josef Meisch
5858
*/
59-
@RunWith(SpringRunner.class)
60-
@ContextConfiguration("classpath:elasticsearch-rest-template-test.xml")
59+
@SpringIntegrationTest
60+
@ContextConfiguration(classes = { ElasticsearchRestTemplateConfiguration.class })
6161
public class ElasticsearchRestTemplateTests extends ElasticsearchTemplateTests {
6262

63-
@Test(expected = ElasticsearchStatusException.class)
63+
@Test
6464
public void shouldThrowExceptionIfDocumentDoesNotExistWhileDoingPartialUpdate() {
6565

6666
// when
6767
IndexRequest indexRequest = new IndexRequest();
6868
indexRequest.source("{}", XContentType.JSON);
6969
UpdateQuery updateQuery = new UpdateQueryBuilder().withId(randomNumeric(5)).withClass(SampleEntity.class)
7070
.withIndexRequest(indexRequest).build();
71-
elasticsearchTemplate.update(updateQuery);
71+
assertThatThrownBy(() -> {
72+
elasticsearchTemplate.update(updateQuery);
73+
}).isInstanceOf(ElasticsearchStatusException.class);
7274
}
7375

7476
@Test // DATAES-227

src/test/java/org/springframework/data/elasticsearch/core/ElasticsearchTemplateTests.java

+20-20
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@
5353
import org.elasticsearch.search.sort.FieldSortBuilder;
5454
import org.elasticsearch.search.sort.SortBuilders;
5555
import org.elasticsearch.search.sort.SortOrder;
56-
import org.junit.After;
57-
import org.junit.Before;
58-
import org.junit.Test;
56+
import org.junit.jupiter.api.AfterEach;
57+
import org.junit.jupiter.api.BeforeEach;
58+
import org.junit.jupiter.api.Test;
5959
import org.springframework.beans.factory.annotation.Autowired;
6060
import org.springframework.data.annotation.Id;
6161
import org.springframework.data.annotation.Version;
@@ -110,7 +110,7 @@ public abstract class ElasticsearchTemplateTests {
110110

111111
@Autowired protected ElasticsearchOperations elasticsearchTemplate;
112112

113-
@Before
113+
@BeforeEach
114114
public void before() {
115115

116116
deleteIndices();
@@ -122,7 +122,7 @@ public void before() {
122122
elasticsearchTemplate.putMapping(SampleEntityUUIDKeyed.class);
123123
}
124124

125-
@After
125+
@AfterEach
126126
public void after() {
127127

128128
deleteIndices();
@@ -306,7 +306,7 @@ public void shouldReturnPageUsingLocalPreferenceForGivenSearchQuery() {
306306
assertThat(sampleEntities.getTotalElements()).isGreaterThanOrEqualTo(1);
307307
}
308308

309-
@Test(expected = Exception.class) // DATAES-595
309+
@Test // DATAES-595
310310
public void shouldThrowExceptionWhenInvalidPreferenceForSearchQuery() {
311311

312312
// given
@@ -323,10 +323,9 @@ public void shouldThrowExceptionWhenInvalidPreferenceForSearchQuery() {
323323
.withPreference("_only_nodes:oops").build();
324324

325325
// when
326-
elasticsearchTemplate.queryForPage(searchQueryWithInvalidPreference, SampleEntity.class);
327-
328-
// then Throw IllegalArgumentException in case of ElasticsearchTemplate and ElasticsearchStatusException in case of
329-
// ElasticsearchRestTemplate
326+
assertThatThrownBy(() -> {
327+
elasticsearchTemplate.queryForPage(searchQueryWithInvalidPreference, SampleEntity.class);
328+
}).isInstanceOf(Exception.class);
330329
}
331330

332331
@Test // DATAES-422 - Add support for IndicesOptions in search queries
@@ -1639,17 +1638,17 @@ public void shouldIndexDocumentForSpecifiedSource() {
16391638
assertThat(page.getContent().get(0).getId()).isEqualTo(indexQuery.getId());
16401639
}
16411640

1642-
@Test(expected = ElasticsearchException.class)
1641+
@Test
16431642
public void shouldThrowElasticsearchExceptionWhenNoDocumentSpecified() {
16441643

16451644
// given
1646-
IndexQuery indexQuery = new IndexQuery();
1645+
final IndexQuery indexQuery = new IndexQuery();
16471646
indexQuery.setId("2333343434");
16481647
indexQuery.setIndexName(INDEX_NAME_SAMPLE_ENTITY);
16491648
indexQuery.setType(TYPE_NAME);
16501649

16511650
// when
1652-
elasticsearchTemplate.index(indexQuery);
1651+
assertThatThrownBy(() -> elasticsearchTemplate.index(indexQuery)).isInstanceOf(ElasticsearchException.class);
16531652
}
16541653

16551654
@Test
@@ -2136,7 +2135,7 @@ public void shouldReturnCountForGivenSearchQueryWithGivenIndexNameForSpecificInd
21362135
assertThat(count).isEqualTo(1);
21372136
}
21382137

2139-
@Test(expected = IllegalArgumentException.class)
2138+
@Test
21402139
public void shouldThrowAnExceptionForGivenCriteriaQueryWhenNoIndexSpecifiedForCountQuery() {
21412140

21422141
// given
@@ -2150,13 +2149,12 @@ public void shouldThrowAnExceptionForGivenCriteriaQueryWhenNoIndexSpecifiedForCo
21502149
CriteriaQuery criteriaQuery = new CriteriaQuery(new Criteria());
21512150

21522151
// when
2153-
long count = elasticsearchTemplate.count(criteriaQuery);
2154-
2155-
// then
2156-
assertThat(count).isEqualTo(1);
2152+
assertThatThrownBy(() -> {
2153+
long count = elasticsearchTemplate.count(criteriaQuery);
2154+
}).isInstanceOf(IllegalArgumentException.class);
21572155
}
21582156

2159-
@Test(expected = IllegalArgumentException.class) // DATAES-67
2157+
@Test // DATAES-67
21602158
public void shouldThrowAnExceptionForGivenSearchQueryWhenNoIndexSpecifiedForCountQuery() {
21612159

21622160
// given
@@ -2170,7 +2168,9 @@ public void shouldThrowAnExceptionForGivenSearchQueryWhenNoIndexSpecifiedForCoun
21702168
SearchQuery searchQuery = new NativeSearchQueryBuilder().withQuery(matchAllQuery()).build();
21712169

21722170
// when
2173-
elasticsearchTemplate.count(searchQuery);
2171+
assertThatThrownBy(() -> {
2172+
elasticsearchTemplate.count(searchQuery);
2173+
}).isInstanceOf(IllegalArgumentException.class);
21742174
}
21752175

21762176
@Test // DATAES-71

0 commit comments

Comments
 (0)