Skip to content

Commit 47446df

Browse files
JUnit 5 upgrade
1 parent d59b139 commit 47446df

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+330
-469
lines changed

lemon-demo-jpa/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<parent>
1515
<groupId>com.naturalprogrammer</groupId>
1616
<artifactId>spring-lemon</artifactId>
17-
<version>1.0.0.RC4</version>
17+
<version>1.0.0.RC5</version>
1818
</parent>
1919

2020
<dependencies>

lemon-demo-jpa/src/main/resources/config/application-dev.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,8 @@ logging:
3131
org.springframework: INFO
3232
org.springframework.security.oauth2.client: DEBUG
3333
com.naturalprogrammer: DEBUG
34-
#file: D:\\tmp\\dev-log.txt
34+
# file:
35+
# name: D:\\tmp\\dev-log.txt
3536

3637
lemon:
3738

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/AbstractMvcTests.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
import com.naturalprogrammer.spring.lemon.commons.mail.MailSender;
44
import com.naturalprogrammer.spring.lemon.commons.util.LecUtils;
55
import com.naturalprogrammer.spring.lemondemo.repositories.UserRepository;
6-
import org.junit.Before;
7-
import org.junit.runner.RunWith;
6+
import org.junit.jupiter.api.BeforeEach;
87
import org.springframework.beans.factory.annotation.Autowired;
98
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
109
import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase;
@@ -14,7 +13,6 @@
1413
import org.springframework.http.HttpHeaders;
1514
import org.springframework.http.MediaType;
1615
import org.springframework.test.context.jdbc.Sql;
17-
import org.springframework.test.context.junit4.SpringRunner;
1816
import org.springframework.test.web.servlet.MockMvc;
1917
import org.springframework.test.web.servlet.MvcResult;
2018

@@ -26,7 +24,6 @@
2624
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
2725
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
2826

29-
@RunWith(SpringRunner.class)
3027
@SpringBootTest({
3128
"logging.level.com.naturalprogrammer=ERROR", // logging.level.root=ERROR does not work: https://stackoverflow.com/questions/49048298/springboottest-not-overriding-logging-level
3229
"logging.level.org.springframework=ERROR",
@@ -74,7 +71,7 @@ protected String login(String userName, String password) throws Exception {
7471
return result.getResponse().getHeader(LecUtils.TOKEN_RESPONSE_HEADER_NAME);
7572
}
7673

77-
@Before
74+
@BeforeEach
7875
public void baseSetUp() throws Exception {
7976

8077
tokens.put(ADMIN_ID, login(ADMIN_EMAIL, ADMIN_PASSWORD));

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/BasicMvcTests.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.naturalprogrammer.spring.lemondemo;
22

33
import com.naturalprogrammer.spring.lemon.commons.util.LecUtils;
4-
import org.junit.Test;
4+
import org.junit.jupiter.api.Test;
55
import org.springframework.http.HttpHeaders;
66
import org.springframework.test.context.jdbc.Sql;
77

@@ -10,17 +10,17 @@
1010
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
1111

1212
@Sql({"/test-data/initialize.sql", "/test-data/finalize.sql", })
13-
public class BasicMvcTests extends AbstractMvcTests {
13+
class BasicMvcTests extends AbstractMvcTests {
1414

1515
@Test
16-
public void testPing() throws Exception {
16+
void testPing() throws Exception {
1717

1818
mvc.perform(get("/api/core/ping"))
1919
.andExpect(status().is(204));
2020
}
2121

2222
@Test
23-
public void testGetContextLoggedIn() throws Exception {
23+
void testGetContextLoggedIn() throws Exception {
2424

2525
mvc.perform(get("/api/core/context")
2626
.header(HttpHeaders.AUTHORIZATION, tokens.get(ADMIN_ID)))
@@ -33,7 +33,7 @@ public void testGetContextLoggedIn() throws Exception {
3333
}
3434

3535
@Test
36-
public void testGetContextWithoutLoggedIn() throws Exception {
36+
void testGetContextWithoutLoggedIn() throws Exception {
3737

3838
mvc.perform(get("/api/core/context"))
3939
.andExpect(status().is(200))

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/ChangeEmailMvcTests.java

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,20 @@
33
import com.naturalprogrammer.spring.lemon.commons.security.GreenTokenService;
44
import com.naturalprogrammer.spring.lemon.commons.util.LecUtils;
55
import com.naturalprogrammer.spring.lemondemo.entities.User;
6-
import org.junit.Assert;
7-
import org.junit.Before;
8-
import org.junit.Test;
6+
import org.aspectj.lang.annotation.Before;
7+
import org.junit.jupiter.api.BeforeEach;
8+
import org.junit.jupiter.api.Test;
99
import org.springframework.beans.factory.annotation.Autowired;
1010
import org.springframework.http.HttpHeaders;
1111
import org.springframework.http.MediaType;
1212

1313
import static org.hamcrest.Matchers.containsString;
14+
import static org.junit.jupiter.api.Assertions.assertEquals;
15+
import static org.junit.jupiter.api.Assertions.assertNull;
1416
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
1517
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
1618

17-
public class ChangeEmailMvcTests extends AbstractMvcTests {
19+
class ChangeEmailMvcTests extends AbstractMvcTests {
1820

1921
private static final String NEW_EMAIL = "new.email@example.com";
2022

@@ -23,7 +25,7 @@ public class ChangeEmailMvcTests extends AbstractMvcTests {
2325
@Autowired
2426
private GreenTokenService greenTokenService;
2527

26-
@Before
28+
@BeforeEach
2729
public void setUp() {
2830

2931
User user = userRepository.findById(UNVERIFIED_USER_ID).get();
@@ -37,7 +39,7 @@ public void setUp() {
3739
}
3840

3941
@Test
40-
public void testChangeEmail() throws Exception {
42+
void testChangeEmail() throws Exception {
4143

4244
mvc.perform(post("/api/core/users/{id}/email", UNVERIFIED_USER_ID)
4345
.param("code", changeEmailCode)
@@ -48,8 +50,8 @@ public void testChangeEmail() throws Exception {
4850
.andExpect(jsonPath("$.id").value(UNVERIFIED_USER_ID));
4951

5052
User updatedUser = userRepository.findById(UNVERIFIED_USER_ID).get();
51-
Assert.assertNull(updatedUser.getNewEmail());
52-
Assert.assertEquals(NEW_EMAIL, updatedUser.getEmail());
53+
assertNull(updatedUser.getNewEmail());
54+
assertEquals(NEW_EMAIL, updatedUser.getEmail());
5355

5456
// Shouldn't be able to login with old token
5557
mvc.perform(post("/api/core/users/{id}/email", UNVERIFIED_USER_ID)
@@ -63,7 +65,7 @@ public void testChangeEmail() throws Exception {
6365
* Providing a wrong changeEmailCode shouldn't work.
6466
*/
6567
@Test
66-
public void testChangeEmailWrongCode() throws Exception {
68+
void testChangeEmailWrongCode() throws Exception {
6769

6870
// Blank token
6971
mvc.perform(post("/api/core/users/{id}/email", UNVERIFIED_USER_ID)
@@ -113,12 +115,11 @@ public void testChangeEmailWrongCode() throws Exception {
113115
* Providing an obsolete changeEmailCode shouldn't work.
114116
*/
115117
@Test
116-
public void testChangeEmailObsoleteCode() throws Exception {
118+
void testChangeEmailObsoleteCode() throws Exception {
117119

118120
// credentials updated after the request for email change was made
119-
Thread.sleep(1L);
120121
User user = userRepository.findById(UNVERIFIED_USER_ID).get();
121-
user.setCredentialsUpdatedMillis(System.currentTimeMillis());
122+
user.setCredentialsUpdatedMillis(System.currentTimeMillis() + 1);
122123
userRepository.save(user);
123124

124125
// A new auth token is needed, because old one would be obsolete!
@@ -134,10 +135,9 @@ public void testChangeEmailObsoleteCode() throws Exception {
134135

135136
/**
136137
* Trying without having requested first.
137-
* @throws Exception
138138
*/
139139
@Test
140-
public void testChangeEmailWithoutAnyRequest() throws Exception {
140+
void testChangeEmailWithoutAnyRequest() throws Exception {
141141

142142
mvc.perform(post("/api/core/users/{id}/email", USER_ID)
143143
.param("code", changeEmailCode)
@@ -148,10 +148,9 @@ public void testChangeEmailWithoutAnyRequest() throws Exception {
148148

149149
/**
150150
* Trying after some user registers the newEmail, leaving it non unique.
151-
* @throws Exception
152151
*/
153152
@Test
154-
public void testChangeEmailNonUniqueEmail() throws Exception {
153+
void testChangeEmailNonUniqueEmail() throws Exception {
155154

156155
// Some other user changed to the same email
157156
User user = userRepository.findById(ADMIN_ID).get();

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/ChangePasswordMvcTests.java

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.naturalprogrammer.spring.lemon.commons.domain.ChangePasswordForm;
44
import com.naturalprogrammer.spring.lemon.commons.util.LecUtils;
5-
import org.junit.Test;
5+
import org.junit.jupiter.api.Test;
66
import org.springframework.http.HttpHeaders;
77
import org.springframework.http.MediaType;
88
import org.springframework.test.context.jdbc.Sql;
@@ -12,7 +12,7 @@
1212
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*;
1313

1414
@Sql({"/test-data/initialize.sql", "/test-data/finalize.sql"})
15-
public class ChangePasswordMvcTests extends AbstractMvcTests {
15+
class ChangePasswordMvcTests extends AbstractMvcTests {
1616

1717
private static final String NEW_PASSWORD = "a-new-password";
1818

@@ -30,7 +30,7 @@ private ChangePasswordForm changePasswordForm(String oldPassword) {
3030
* A non-admin user should be able to change his password.
3131
*/
3232
@Test
33-
public void testChangePassword() throws Exception {
33+
void testChangePassword() throws Exception {
3434

3535
mvc.perform(post("/api/core/users/{id}/password", UNVERIFIED_USER_ID)
3636
.header(HttpHeaders.AUTHORIZATION, tokens.get(UNVERIFIED_USER_ID))
@@ -47,7 +47,7 @@ public void testChangePassword() throws Exception {
4747
* An good admin user should be able to change the password of another user.
4848
*/
4949
@Test
50-
public void testAdminChangePasswordAnotherUser() throws Exception {
50+
void testAdminChangePasswordAnotherUser() throws Exception {
5151

5252
mvc.perform(post("/api/core/users/{id}/password", UNVERIFIED_USER_ID)
5353
.header(HttpHeaders.AUTHORIZATION, tokens.get(ADMIN_ID))
@@ -64,7 +64,7 @@ public void testAdminChangePasswordAnotherUser() throws Exception {
6464
* Providing an unknown id should return 404.
6565
*/
6666
@Test
67-
public void testChangePasswordUnknownId() throws Exception {
67+
void testChangePasswordUnknownId() throws Exception {
6868

6969
mvc.perform(post("/api/core/users/99/password")
7070
.header(HttpHeaders.AUTHORIZATION, tokens.get(ADMIN_ID))
@@ -77,7 +77,7 @@ public void testChangePasswordUnknownId() throws Exception {
7777
* A non-admin user should not be able to change others' password.
7878
*/
7979
@Test
80-
public void testChangePasswordAnotherUser() throws Exception {
80+
void testChangePasswordAnotherUser() throws Exception {
8181

8282
mvc.perform(post("/api/core/users/{id}/password", UNVERIFIED_USER_ID)
8383
.header(HttpHeaders.AUTHORIZATION, tokens.get(USER_ID))
@@ -93,7 +93,7 @@ public void testChangePasswordAnotherUser() throws Exception {
9393
* A bad admin user should not be able to change others' password.
9494
*/
9595
@Test
96-
public void testBadAdminChangePasswordAnotherUser() throws Exception {
96+
void testBadAdminChangePasswordAnotherUser() throws Exception {
9797

9898
mvc.perform(post("/api/core/users/{id}/password", UNVERIFIED_USER_ID)
9999
.header(HttpHeaders.AUTHORIZATION, tokens.get(UNVERIFIED_ADMIN_ID))
@@ -106,7 +106,7 @@ public void testBadAdminChangePasswordAnotherUser() throws Exception {
106106
}
107107

108108
@Test
109-
public void testChangePasswordInvalidData() throws Exception {
109+
void testChangePasswordInvalidData() throws Exception {
110110

111111
// All fields null
112112
mvc.perform(post("/api/core/users/{id}/password", UNVERIFIED_USER_ID)

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/FetchNewTokenMvcTests.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.naturalprogrammer.spring.lemondemo;
22

33
import com.naturalprogrammer.spring.lemon.commons.util.LecUtils;
4-
import org.junit.Test;
4+
import org.junit.jupiter.api.Test;
55
import org.springframework.http.HttpHeaders;
66
import org.springframework.http.MediaType;
77
import org.springframework.test.web.servlet.MvcResult;
@@ -12,7 +12,7 @@
1212
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
1313
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
1414

15-
public class FetchNewTokenMvcTests extends AbstractMvcTests {
15+
class FetchNewTokenMvcTests extends AbstractMvcTests {
1616

1717
public static class Response {
1818

@@ -28,7 +28,7 @@ public void setToken(String token) {
2828
}
2929

3030
@Test
31-
public void testFetchNewToken() throws Exception {
31+
void testFetchNewToken() throws Exception {
3232

3333
MvcResult result = mvc.perform(post("/api/core/fetch-new-auth-token")
3434
.header(HttpHeaders.AUTHORIZATION, tokens.get(UNVERIFIED_USER_ID))
@@ -42,7 +42,7 @@ public void testFetchNewToken() throws Exception {
4242
}
4343

4444
@Test
45-
public void testFetchNewTokenExpiration() throws Exception {
45+
void testFetchNewTokenExpiration() throws Exception {
4646

4747
MvcResult result = mvc.perform(post("/api/core/fetch-new-auth-token")
4848
.header(HttpHeaders.AUTHORIZATION, tokens.get(UNVERIFIED_USER_ID))
@@ -54,16 +54,15 @@ public void testFetchNewTokenExpiration() throws Exception {
5454
Response response = LecUtils.fromJson(result.getResponse().getContentAsString(), Response.class);
5555
ensureTokenWorks(response.getToken());
5656

57-
Thread.sleep(1001L);
57+
Thread.sleep(1001L); // Let more then a second pass
5858
mvc.perform(get("/api/core/context")
5959
.header(HttpHeaders.AUTHORIZATION,
6060
LecUtils.TOKEN_PREFIX + response.getToken()))
6161
.andExpect(status().is(401));
62-
6362
}
6463

6564
@Test
66-
public void testFetchNewTokenByAdminForAnotherUser() throws Exception {
65+
void testFetchNewTokenByAdminForAnotherUser() throws Exception {
6766

6867
MvcResult result = mvc.perform(post("/api/core/fetch-new-auth-token")
6968
.header(HttpHeaders.AUTHORIZATION, tokens.get(ADMIN_ID))
@@ -77,7 +76,7 @@ public void testFetchNewTokenByAdminForAnotherUser() throws Exception {
7776
}
7877

7978
@Test
80-
public void testFetchNewTokenByNonAdminForAnotherUser() throws Exception {
79+
void testFetchNewTokenByNonAdminForAnotherUser() throws Exception {
8180

8281
mvc.perform(post("/api/core/fetch-new-auth-token")
8382
.header(HttpHeaders.AUTHORIZATION, tokens.get(UNVERIFIED_USER_ID))

lemon-demo-jpa/src/test/java/com/naturalprogrammer/spring/lemondemo/FetchUserMvcTests.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.naturalprogrammer.spring.lemondemo;
22

3-
import org.junit.Test;
3+
import org.junit.jupiter.api.Test;
44
import org.springframework.http.HttpHeaders;
55
import org.springframework.http.MediaType;
66
import org.springframework.test.context.jdbc.Sql;
@@ -11,10 +11,10 @@
1111
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
1212

1313
@Sql({"/test-data/initialize.sql", "/test-data/finalize.sql"})
14-
public class FetchUserMvcTests extends AbstractMvcTests {
14+
class FetchUserMvcTests extends AbstractMvcTests {
1515

1616
@Test
17-
public void testFetchUserById() throws Exception {
17+
void testFetchUserById() throws Exception {
1818

1919
mvc.perform(get("/api/core/users/{id}", ADMIN_ID))
2020
.andExpect(status().is(200))
@@ -26,7 +26,7 @@ public void testFetchUserById() throws Exception {
2626
}
2727

2828
@Test
29-
public void testFetchUserByIdLoggedIn() throws Exception {
29+
void testFetchUserByIdLoggedIn() throws Exception {
3030

3131
// Same user logged in
3232
mvc.perform(get("/api/core/users/{id}", ADMIN_ID)
@@ -54,14 +54,14 @@ public void testFetchUserByIdLoggedIn() throws Exception {
5454
}
5555

5656
@Test
57-
public void testFetchNonExistingUserById() throws Exception {
57+
void testFetchNonExistingUserById() throws Exception {
5858

5959
mvc.perform(get("/api/core/users/99"))
6060
.andExpect(status().is(404));
6161
}
6262

6363
@Test
64-
public void testFetchUserByEmail() throws Exception {
64+
void testFetchUserByEmail() throws Exception {
6565

6666
mvc.perform(post("/api/core/users/fetch-by-email")
6767
.param("email", ADMIN_EMAIL)
@@ -74,7 +74,7 @@ public void testFetchUserByEmail() throws Exception {
7474
}
7575

7676
@Test
77-
public void testFetchUserByInvalidEmail() throws Exception {
77+
void testFetchUserByInvalidEmail() throws Exception {
7878

7979
// email does not exist
8080
mvc.perform(post("/api/core/users/fetch-by-email")

0 commit comments

Comments
 (0)