From 9db9632c4ba18f5c34dac837fde3e30577f3e57e Mon Sep 17 00:00:00 2001 From: divya_jnu08 Date: Tue, 26 Jan 2021 23:13:46 +0530 Subject: [PATCH] Migrates web examples to JUnit 5. Original pull request #602 Related tickest #583 --- pom.xml | 7 ++++++- .../example/users/AbstractIntegrationTests.java | 6 +++--- .../users/UserManagementIntegrationTests.java | 4 ++-- .../users/UserRepositoryIntegrationTests.java | 9 ++++++--- .../example/users/UserControllerClientTests.java | 10 +++++----- .../users/UserControllerIntegrationTests.java | 15 +++++++-------- .../test/java/example/users/ApplicationTests.java | 9 +++++---- 7 files changed, 34 insertions(+), 26 deletions(-) diff --git a/pom.xml b/pom.xml index 0720a7d2..f226f645 100644 --- a/pom.xml +++ b/pom.xml @@ -273,14 +273,19 @@ junit junit test + + + org.junit.jupiter + junit-jupiter-engine + test - org.junit.vintage junit-vintage-engine test + diff --git a/web/example/src/test/java/example/users/AbstractIntegrationTests.java b/web/example/src/test/java/example/users/AbstractIntegrationTests.java index 8236be53..cd9a7f24 100644 --- a/web/example/src/test/java/example/users/AbstractIntegrationTests.java +++ b/web/example/src/test/java/example/users/AbstractIntegrationTests.java @@ -15,15 +15,15 @@ */ package example.users; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; /** * Integration tests to bootstrap the application. * * @author Oliver Gierke */ -@RunWith(SpringRunner.class) +@ExtendWith(SpringExtension.class) @SpringBootTest public abstract class AbstractIntegrationTests {} diff --git a/web/example/src/test/java/example/users/UserManagementIntegrationTests.java b/web/example/src/test/java/example/users/UserManagementIntegrationTests.java index 60dd3579..e72a1591 100644 --- a/web/example/src/test/java/example/users/UserManagementIntegrationTests.java +++ b/web/example/src/test/java/example/users/UserManagementIntegrationTests.java @@ -16,9 +16,9 @@ package example.users; import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.hamcrest.MatcherAssert.*; -import org.junit.Test; +import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; /** diff --git a/web/example/src/test/java/example/users/UserRepositoryIntegrationTests.java b/web/example/src/test/java/example/users/UserRepositoryIntegrationTests.java index d261c148..447d380e 100644 --- a/web/example/src/test/java/example/users/UserRepositoryIntegrationTests.java +++ b/web/example/src/test/java/example/users/UserRepositoryIntegrationTests.java @@ -15,7 +15,8 @@ */ package example.users; -import org.junit.Test; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.dao.InvalidDataAccessApiUsageException; @@ -31,8 +32,10 @@ public class UserRepositoryIntegrationTests extends AbstractIntegrationTests { /** * @see #65 */ - @Test(expected = InvalidDataAccessApiUsageException.class) + @Test public void repositoryRejectsUnencryptedPassword() { - users.save(new User(new Username("olivergierke"), Password.raw("foobar"))); + Assertions.assertThrows(InvalidDataAccessApiUsageException.class, () -> { + users.save(new User(new Username("olivergierke"), Password.raw("foobar"))); + }); } } diff --git a/web/projection/src/test/java/example/users/UserControllerClientTests.java b/web/projection/src/test/java/example/users/UserControllerClientTests.java index 8e2e2a90..d54d6dda 100644 --- a/web/projection/src/test/java/example/users/UserControllerClientTests.java +++ b/web/projection/src/test/java/example/users/UserControllerClientTests.java @@ -16,12 +16,12 @@ package example.users; import static org.hamcrest.CoreMatchers.*; -import static org.junit.Assert.*; +import static org.hamcrest.MatcherAssert.*; import example.users.UserController.UserPayload; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest.WebEnvironment; @@ -37,7 +37,7 @@ import org.springframework.http.HttpHeaders; import org.springframework.http.HttpMethod; import org.springframework.http.MediaType; import org.springframework.http.converter.HttpMessageConverter; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; /** * Integration tests for {@link UserController} to demonstrate client-side resilience of the payload type against @@ -45,7 +45,7 @@ import org.springframework.test.context.junit4.SpringRunner; * * @author Oliver Gierke */ -@RunWith(SpringRunner.class) +@ExtendWith(SpringExtension.class) @SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) public class UserControllerClientTests { diff --git a/web/projection/src/test/java/example/users/UserControllerIntegrationTests.java b/web/projection/src/test/java/example/users/UserControllerIntegrationTests.java index 2474f85e..edea5f93 100644 --- a/web/projection/src/test/java/example/users/UserControllerIntegrationTests.java +++ b/web/projection/src/test/java/example/users/UserControllerIntegrationTests.java @@ -19,14 +19,14 @@ import static org.hamcrest.CoreMatchers.*; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; -import org.junit.Test; -import org.junit.runner.RunWith; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; import org.springframework.boot.test.autoconfigure.web.servlet.MockMvcPrint; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.http.MediaType; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.ResultActions; @@ -35,7 +35,7 @@ import org.springframework.test.web.servlet.ResultActions; * * @author Oliver Gierke */ -@RunWith(SpringRunner.class) +@ExtendWith(SpringExtension.class) @SpringBootTest @AutoConfigureMockMvc(print = MockMvcPrint.NONE) public class UserControllerIntegrationTests { @@ -61,10 +61,9 @@ public class UserControllerIntegrationTests { private void postAndExpect(String payload, MediaType mediaType) throws Exception { - ResultActions actions = mvc - .perform(post("/")// - .content(payload)// - .contentType(mediaType))// + ResultActions actions = mvc.perform(post("/")// + .content(payload)// + .contentType(mediaType))// .andExpect(status().isOk()); actions.andExpect(content().string(containsString("Dave"))); diff --git a/web/querydsl/src/test/java/example/users/ApplicationTests.java b/web/querydsl/src/test/java/example/users/ApplicationTests.java index f32aaba5..7946e270 100644 --- a/web/querydsl/src/test/java/example/users/ApplicationTests.java +++ b/web/querydsl/src/test/java/example/users/ApplicationTests.java @@ -15,15 +15,16 @@ */ package example.users; -import org.junit.Test; -import org.junit.runner.RunWith; + +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; import org.springframework.boot.test.context.SpringBootTest; -import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.context.junit.jupiter.SpringExtension; /** * @author Oliver Gierke */ -@RunWith(SpringRunner.class) +@ExtendWith(SpringExtension.class) @SpringBootTest public class ApplicationTests {