Skip to content

Commit d5b8981

Browse files
committed
Polish OAuth 2.0 Samples
- Favor @TestConfiguration so as to not disable Spring Boot's auto-configuration of ClientRegistrationRepository and OAuth2AuthorizedClientRepository
1 parent 8d84bc5 commit d5b8981

File tree

5 files changed

+13
-21
lines changed

5 files changed

+13
-21
lines changed

samples/boot/oauth2login/src/integration-test/java/sample/OAuth2LoginApplicationTests.java

+3-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141
import org.springframework.beans.factory.annotation.Autowired;
4242
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
4343
import org.springframework.boot.test.context.SpringBootTest;
44+
import org.springframework.boot.test.context.TestConfiguration;
4445
import org.springframework.http.HttpStatus;
4546
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
4647
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
@@ -83,7 +84,7 @@
8384
* @since 5.0
8485
*/
8586
@RunWith(SpringRunner.class)
86-
@SpringBootTest(classes={ OAuth2LoginApplication.class, OAuth2LoginApplicationTests.SecurityTestConfig.class })
87+
@SpringBootTest
8788
@AutoConfigureMockMvc
8889
public class OAuth2LoginApplicationTests {
8990
private static final String AUTHORIZATION_BASE_URI = "/oauth2/authorization";
@@ -326,6 +327,7 @@ private WebResponse followLinkDisableRedirects(HtmlAnchor anchorElement) throws
326327
}
327328

328329
@EnableWebSecurity
330+
@TestConfiguration
329331
public static class SecurityTestConfig extends WebSecurityConfigurerAdapter {
330332

331333
// @formatter:off

samples/boot/oauth2webclient-webflux/src/test/java/sample/OAuth2WebClientControllerTests.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,13 @@
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
2424
import sample.config.SecurityConfig;
25-
import sample.web.OAuth2WebClientController;
2625

2726
import org.springframework.beans.factory.annotation.Autowired;
2827
import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient;
2928
import org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTest;
29+
import org.springframework.boot.test.context.TestConfiguration;
3030
import org.springframework.boot.test.mock.mockito.MockBean;
3131
import org.springframework.context.annotation.Bean;
32-
import org.springframework.context.annotation.Configuration;
3332
import org.springframework.context.annotation.Import;
3433
import org.springframework.security.oauth2.client.registration.ReactiveClientRegistrationRepository;
3534
import org.springframework.test.context.junit4.SpringRunner;
@@ -40,7 +39,7 @@
4039
import static org.springframework.security.test.web.reactive.server.SecurityMockServerConfigurers.mockOAuth2Login;
4140

4241
@WebFluxTest
43-
@Import({ SecurityConfig.class, OAuth2WebClientController.class })
42+
@Import(SecurityConfig.class)
4443
@AutoConfigureWebTestClient
4544
@RunWith(SpringRunner.class)
4645
public class OAuth2WebClientControllerTests {
@@ -94,7 +93,7 @@ public void publicImplicitWhenAuthenticatedThenUsesDefaultRegistration() throws
9493
.expectStatus().isOk();
9594
}
9695

97-
@Configuration
96+
@TestConfiguration
9897
static class WebClientConfig {
9998
@Bean
10099
WebClient web() {

samples/boot/oauth2webclient-webflux/src/test/java/sample/RegisteredOAuth2AuthorizedClientControllerTests.java

+3-4
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,13 @@
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
2424
import sample.config.SecurityConfig;
25-
import sample.web.RegisteredOAuth2AuthorizedClientController;
2625

2726
import org.springframework.beans.factory.annotation.Autowired;
2827
import org.springframework.boot.test.autoconfigure.web.reactive.AutoConfigureWebTestClient;
2928
import org.springframework.boot.test.autoconfigure.web.reactive.WebFluxTest;
29+
import org.springframework.boot.test.context.TestConfiguration;
3030
import org.springframework.boot.test.mock.mockito.MockBean;
3131
import org.springframework.context.annotation.Bean;
32-
import org.springframework.context.annotation.Configuration;
3332
import org.springframework.context.annotation.Import;
3433
import org.springframework.security.oauth2.client.registration.ReactiveClientRegistrationRepository;
3534
import org.springframework.test.context.junit4.SpringRunner;
@@ -40,7 +39,7 @@
4039
import static org.springframework.security.test.web.reactive.server.SecurityMockServerConfigurers.mockOAuth2Login;
4140

4241
@WebFluxTest
43-
@Import({ SecurityConfig.class, RegisteredOAuth2AuthorizedClientController.class })
42+
@Import(SecurityConfig.class)
4443
@AutoConfigureWebTestClient
4544
@RunWith(SpringRunner.class)
4645
public class RegisteredOAuth2AuthorizedClientControllerTests {
@@ -94,7 +93,7 @@ public void publicAnnotationImplicitWhenAuthenticatedThenUsesDefaultRegistration
9493
.expectStatus().isOk();
9594
}
9695

97-
@Configuration
96+
@TestConfiguration
9897
static class WebClientConfig {
9998
@Bean
10099
WebClient web() {

samples/boot/oauth2webclient/src/test/java/sample/OAuth2WebClientControllerTests.java

+2-6
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,13 @@
2121
import org.junit.AfterClass;
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
24-
import sample.config.SecurityConfig;
25-
import sample.web.OAuth2WebClientController;
2624

2725
import org.springframework.beans.factory.annotation.Autowired;
2826
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
2927
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
28+
import org.springframework.boot.test.context.TestConfiguration;
3029
import org.springframework.boot.test.mock.mockito.MockBean;
3130
import org.springframework.context.annotation.Bean;
32-
import org.springframework.context.annotation.Configuration;
33-
import org.springframework.context.annotation.Import;
3431
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
3532
import org.springframework.test.context.junit4.SpringRunner;
3633
import org.springframework.test.web.servlet.MockMvc;
@@ -42,7 +39,6 @@
4239
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
4340

4441
@WebMvcTest
45-
@Import({ SecurityConfig.class, OAuth2WebClientController.class })
4642
@AutoConfigureMockMvc
4743
@RunWith(SpringRunner.class)
4844
public class OAuth2WebClientControllerTests {
@@ -92,7 +88,7 @@ public void publicImplicitWhenAuthenticatedThenUsesDefaultRegistration() throws
9288
.andExpect(status().isOk());
9389
}
9490

95-
@Configuration
91+
@TestConfiguration
9692
static class WebClientConfig {
9793
@Bean
9894
WebClient web() {

samples/boot/oauth2webclient/src/test/java/sample/RegisteredOAuth2AuthorizedClientControllerTests.java

+2-6
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,13 @@
2121
import org.junit.AfterClass;
2222
import org.junit.Test;
2323
import org.junit.runner.RunWith;
24-
import sample.config.SecurityConfig;
25-
import sample.web.RegisteredOAuth2AuthorizedClientController;
2624

2725
import org.springframework.beans.factory.annotation.Autowired;
2826
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
2927
import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest;
28+
import org.springframework.boot.test.context.TestConfiguration;
3029
import org.springframework.boot.test.mock.mockito.MockBean;
3130
import org.springframework.context.annotation.Bean;
32-
import org.springframework.context.annotation.Configuration;
33-
import org.springframework.context.annotation.Import;
3431
import org.springframework.security.oauth2.client.registration.ClientRegistrationRepository;
3532
import org.springframework.test.context.junit4.SpringRunner;
3633
import org.springframework.test.web.servlet.MockMvc;
@@ -42,7 +39,6 @@
4239
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
4340

4441
@WebMvcTest
45-
@Import({ SecurityConfig.class, RegisteredOAuth2AuthorizedClientController.class })
4642
@AutoConfigureMockMvc
4743
@RunWith(SpringRunner.class)
4844
public class RegisteredOAuth2AuthorizedClientControllerTests {
@@ -92,7 +88,7 @@ public void publicAnnotationImplicitWhenAuthenticatedThenUsesDefaultRegistration
9288
.andExpect(status().isOk());
9389
}
9490

95-
@Configuration
91+
@TestConfiguration
9692
static class WebClientConfig {
9793
@Bean
9894
WebClient web() {

0 commit comments

Comments
 (0)