Resolve oauth2 client placeholders

Closes gh-8453
This commit is contained in:
Evgeniy Cheban
2020-07-26 21:07:29 +03:00
committed by Joe Grandja
parent 4e1fcd3a87
commit 17f1540280
3 changed files with 88 additions and 35 deletions

View File

@@ -41,6 +41,7 @@ import static org.assertj.core.api.Assertions.assertThat;
* Tests for {@link ClientRegistrationsBeanDefinitionParser}.
*
* @author Ruby Hartono
* @author Evgeniy Cheban
*/
public class ClientRegistrationsBeanDefinitionParserTests {
@@ -218,6 +219,20 @@ public class ClientRegistrationsBeanDefinitionParserTests {
assertThat(githubProviderDetails.getUserInfoEndpoint().getUserNameAttributeName()).isEqualTo("id");
}
@Test
public void parseWhenClientPlaceholdersThenResolvePlaceholders() {
System.setProperty("oauth2.client.id", "github-client-id");
System.setProperty("oauth2.client.secret", "github-client-secret");
this.spring.configLocations(xml("ClientPlaceholders")).autowire();
assertThat(this.clientRegistrationRepository).isInstanceOf(InMemoryClientRegistrationRepository.class);
ClientRegistration githubRegistration = this.clientRegistrationRepository.findByRegistrationId("github");
assertThat(githubRegistration.getClientId()).isEqualTo("github-client-id");
assertThat(githubRegistration.getClientSecret()).isEqualTo("github-client-secret");
}
private static MockResponse jsonResponse(String json) {
return new MockResponse().setHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE).setBody(json);
}