Use parenthesis with single-arg lambdas
Use regular expression search/replace to ensure all single-arg lambdas have parenthesis. This aligns with the style used in Spring Boot and ensure that single-arg and multi-arg lambdas are consistent. Issue gh-8945
This commit is contained in:
+11
-11
@@ -110,7 +110,7 @@ public final class SecurityMockServerConfigurers {
|
||||
return new MockServerConfigurer() {
|
||||
@Override
|
||||
public void beforeServerCreated(WebHttpHandlerBuilder builder) {
|
||||
builder.filters(filters -> filters.add(0, new MutatorFilter()));
|
||||
builder.filters((filters) -> filters.add(0, new MutatorFilter()));
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -253,8 +253,8 @@ public final class SecurityMockServerConfigurers {
|
||||
public void afterConfigurerAdded(WebTestClient.Builder builder,
|
||||
@Nullable WebHttpHandlerBuilder httpHandlerBuilder, @Nullable ClientHttpConnector connector) {
|
||||
CsrfWebFilter filter = new CsrfWebFilter();
|
||||
filter.setRequireCsrfProtectionMatcher(e -> ServerWebExchangeMatcher.MatchResult.notMatch());
|
||||
httpHandlerBuilder.filters(filters -> filters.add(0, filter));
|
||||
filter.setRequireCsrfProtectionMatcher((e) -> ServerWebExchangeMatcher.MatchResult.notMatch());
|
||||
httpHandlerBuilder.filters((filters) -> filters.add(0, filter));
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -399,7 +399,7 @@ public final class SecurityMockServerConfigurers {
|
||||
}
|
||||
|
||||
private Consumer<List<WebFilter>> addSetupMutatorFilter() {
|
||||
return filters -> filters.add(0, new SetupMutatorFilter(this.context));
|
||||
return (filters) -> filters.add(0, new SetupMutatorFilter(this.context));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -414,7 +414,7 @@ public final class SecurityMockServerConfigurers {
|
||||
|
||||
@Override
|
||||
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain webFilterChain) {
|
||||
exchange.getAttributes().computeIfAbsent(MutatorFilter.ATTRIBUTE_NAME, key -> this.context);
|
||||
exchange.getAttributes().computeIfAbsent(MutatorFilter.ATTRIBUTE_NAME, (key) -> this.context);
|
||||
return webFilterChain.filter(exchange);
|
||||
}
|
||||
|
||||
@@ -494,7 +494,7 @@ public final class SecurityMockServerConfigurers {
|
||||
*/
|
||||
public JwtMutator authorities(Collection<GrantedAuthority> authorities) {
|
||||
Assert.notNull(authorities, "authorities cannot be null");
|
||||
this.authoritiesConverter = jwt -> authorities;
|
||||
this.authoritiesConverter = (jwt) -> authorities;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -505,7 +505,7 @@ public final class SecurityMockServerConfigurers {
|
||||
*/
|
||||
public JwtMutator authorities(GrantedAuthority... authorities) {
|
||||
Assert.notNull(authorities, "authorities cannot be null");
|
||||
this.authoritiesConverter = jwt -> Arrays.asList(authorities);
|
||||
this.authoritiesConverter = (jwt) -> Arrays.asList(authorities);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -672,7 +672,7 @@ public final class SecurityMockServerConfigurers {
|
||||
}
|
||||
|
||||
private Collection<GrantedAuthority> getAuthorities(Collection<?> scopes) {
|
||||
return scopes.stream().map(scope -> new SimpleGrantedAuthority("SCOPE_" + scope))
|
||||
return scopes.stream().map((scope) -> new SimpleGrantedAuthority("SCOPE_" + scope))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@@ -1046,7 +1046,7 @@ public final class SecurityMockServerConfigurers {
|
||||
|
||||
private OAuth2ClientMutator(String registrationId) {
|
||||
this.registrationId = registrationId;
|
||||
clientRegistration(c -> {
|
||||
clientRegistration((c) -> {
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1119,7 +1119,7 @@ public final class SecurityMockServerConfigurers {
|
||||
|
||||
private Consumer<List<WebFilter>> addAuthorizedClientFilter() {
|
||||
OAuth2AuthorizedClient client = getClient();
|
||||
return filters -> filters.add(0, (exchange, chain) -> {
|
||||
return (filters) -> filters.add(0, (exchange, chain) -> {
|
||||
ReactiveOAuth2AuthorizedClientManager authorizationClientManager = OAuth2ClientServerTestUtils
|
||||
.getOAuth2AuthorizedClientManager(exchange);
|
||||
if (!(authorizationClientManager instanceof TestReactiveOAuth2AuthorizedClientManager)) {
|
||||
@@ -1209,7 +1209,7 @@ public final class SecurityMockServerConfigurers {
|
||||
OAuth2AuthorizedClientArgumentResolver resolver = findResolver(exchange,
|
||||
OAuth2AuthorizedClientArgumentResolver.class);
|
||||
if (resolver == null) {
|
||||
return authorizeRequest -> DEFAULT_CLIENT_REPO.loadAuthorizedClient(
|
||||
return (authorizeRequest) -> DEFAULT_CLIENT_REPO.loadAuthorizedClient(
|
||||
authorizeRequest.getClientRegistrationId(), authorizeRequest.getPrincipal(), exchange);
|
||||
}
|
||||
return (ReactiveOAuth2AuthorizedClientManager) ReflectionTestUtils.getField(resolver,
|
||||
|
||||
+5
-5
@@ -1094,7 +1094,7 @@ public final class SecurityMockMvcRequestPostProcessors {
|
||||
*/
|
||||
public JwtRequestPostProcessor authorities(Collection<GrantedAuthority> authorities) {
|
||||
Assert.notNull(authorities, "authorities cannot be null");
|
||||
this.authoritiesConverter = jwt -> authorities;
|
||||
this.authoritiesConverter = (jwt) -> authorities;
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -1105,7 +1105,7 @@ public final class SecurityMockMvcRequestPostProcessors {
|
||||
*/
|
||||
public JwtRequestPostProcessor authorities(GrantedAuthority... authorities) {
|
||||
Assert.notNull(authorities, "authorities cannot be null");
|
||||
this.authoritiesConverter = jwt -> Arrays.asList(authorities);
|
||||
this.authoritiesConverter = (jwt) -> Arrays.asList(authorities);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -1237,7 +1237,7 @@ public final class SecurityMockMvcRequestPostProcessors {
|
||||
}
|
||||
|
||||
private Collection<GrantedAuthority> getAuthorities(Collection<?> scopes) {
|
||||
return scopes.stream().map(scope -> new SimpleGrantedAuthority("SCOPE_" + scope))
|
||||
return scopes.stream().map((scope) -> new SimpleGrantedAuthority("SCOPE_" + scope))
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
@@ -1556,7 +1556,7 @@ public final class SecurityMockMvcRequestPostProcessors {
|
||||
|
||||
private OAuth2ClientRequestPostProcessor(String registrationId) {
|
||||
this.registrationId = registrationId;
|
||||
clientRegistration(c -> {
|
||||
clientRegistration((c) -> {
|
||||
});
|
||||
}
|
||||
|
||||
@@ -1686,7 +1686,7 @@ public final class SecurityMockMvcRequestPostProcessors {
|
||||
OAuth2AuthorizedClientArgumentResolver resolver = findResolver(request,
|
||||
OAuth2AuthorizedClientArgumentResolver.class);
|
||||
if (resolver == null) {
|
||||
return authorizeRequest -> DEFAULT_CLIENT_REPO.loadAuthorizedClient(
|
||||
return (authorizeRequest) -> DEFAULT_CLIENT_REPO.loadAuthorizedClient(
|
||||
authorizeRequest.getClientRegistrationId(), authorizeRequest.getPrincipal(), request);
|
||||
}
|
||||
return (OAuth2AuthorizedClientManager) ReflectionTestUtils.getField(resolver,
|
||||
|
||||
+3
-3
@@ -112,7 +112,7 @@ public class ReactorContextTestExecutionListenerTests {
|
||||
this.listener.beforeTestMethod(this.testContext);
|
||||
|
||||
Mono<Authentication> authentication = Mono.just("any")
|
||||
.flatMap(s -> ReactiveSecurityContextHolder.getContext().map(SecurityContext::getAuthentication))
|
||||
.flatMap((s) -> ReactiveSecurityContextHolder.getContext().map(SecurityContext::getAuthentication))
|
||||
.subscriberContext(ReactiveSecurityContextHolder.withAuthentication(expectedAuthentication));
|
||||
|
||||
StepVerifier.create(authentication).expectNext(expectedAuthentication).verifyComplete();
|
||||
@@ -129,7 +129,7 @@ public class ReactorContextTestExecutionListenerTests {
|
||||
this.listener.beforeTestMethod(this.testContext);
|
||||
|
||||
Mono<Authentication> authentication = Mono.just("any")
|
||||
.flatMap(s -> ReactiveSecurityContextHolder.getContext().map(SecurityContext::getAuthentication))
|
||||
.flatMap((s) -> ReactiveSecurityContextHolder.getContext().map(SecurityContext::getAuthentication))
|
||||
.subscriberContext(ReactiveSecurityContextHolder.clearContext());
|
||||
|
||||
StepVerifier.create(authentication).verifyComplete();
|
||||
@@ -155,7 +155,7 @@ public class ReactorContextTestExecutionListenerTests {
|
||||
public void afterTestMethodWhenDifferentHookIsRegistered() throws Exception {
|
||||
Object obj = new Object();
|
||||
|
||||
Hooks.onLastOperator("CUSTOM_HOOK", p -> Mono.just(obj));
|
||||
Hooks.onLastOperator("CUSTOM_HOOK", (p) -> Mono.just(obj));
|
||||
this.listener.afterTestMethod(this.testContext);
|
||||
|
||||
Object result = Mono.subscriberContext().block();
|
||||
|
||||
+6
-5
@@ -51,7 +51,7 @@ public class SecurityMockServerConfigurerOpaqueTokenTests extends AbstractMockSe
|
||||
|
||||
private WebTestClient client = WebTestClient.bindToController(this.securityContextController)
|
||||
.webFilter(new SecurityContextServerWebExchangeWebFilter())
|
||||
.argumentResolvers(resolvers -> resolvers
|
||||
.argumentResolvers((resolvers) -> resolvers
|
||||
.addCustomResolver(new CurrentSecurityContextArgumentResolver(new ReactiveAdapterRegistry())))
|
||||
.apply(SecurityMockServerConfigurers.springSecurity()).configureClient()
|
||||
.defaultHeader(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON_VALUE).build();
|
||||
@@ -85,7 +85,7 @@ public class SecurityMockServerConfigurerOpaqueTokenTests extends AbstractMockSe
|
||||
String sub = new String("my-subject");
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOpaqueToken()
|
||||
.attributes(attributes -> attributes.put(OAuth2IntrospectionClaimNames.SUBJECT, sub)))
|
||||
.attributes((attributes) -> attributes.put(OAuth2IntrospectionClaimNames.SUBJECT, sub)))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
@@ -108,11 +108,12 @@ public class SecurityMockServerConfigurerOpaqueTokenTests extends AbstractMockSe
|
||||
|
||||
@Test
|
||||
public void mockOpaqueTokenWhenPrincipalSpecifiedThenLastCalledTakesPrecedence() {
|
||||
OAuth2AuthenticatedPrincipal principal = TestOAuth2AuthenticatedPrincipals.active(a -> a.put("scope", "user"));
|
||||
OAuth2AuthenticatedPrincipal principal = TestOAuth2AuthenticatedPrincipals
|
||||
.active((a) -> a.put("scope", "user"));
|
||||
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOpaqueToken()
|
||||
.attributes(a -> a.put(OAuth2IntrospectionClaimNames.SUBJECT, "foo")).principal(principal))
|
||||
.attributes((a) -> a.put(OAuth2IntrospectionClaimNames.SUBJECT, "foo")).principal(principal))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
@@ -124,7 +125,7 @@ public class SecurityMockServerConfigurerOpaqueTokenTests extends AbstractMockSe
|
||||
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOpaqueToken().principal(principal)
|
||||
.attributes(a -> a.put(OAuth2IntrospectionClaimNames.SUBJECT, "bar")))
|
||||
.attributes((a) -> a.put(OAuth2IntrospectionClaimNames.SUBJECT, "bar")))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
context = this.securityContextController.removeSecurityContext();
|
||||
|
||||
+3
-3
@@ -50,7 +50,7 @@ public class SecurityMockServerConfigurersClassAnnotatedTests extends AbstractMo
|
||||
@Test
|
||||
public void wheMockUserWhenClassAnnotatedThenSuccess() {
|
||||
this.client.get().exchange().expectStatus().isOk().expectBody(String.class)
|
||||
.consumeWith(response -> assertThat(response.getResponseBody()).contains("\"username\":\"user\""));
|
||||
.consumeWith((response) -> assertThat(response.getResponseBody()).contains("\"username\":\"user\""));
|
||||
|
||||
Authentication authentication = TestSecurityContextHolder.getContext().getAuthentication();
|
||||
this.controller.assertPrincipalIsEqualTo(authentication);
|
||||
@@ -60,7 +60,7 @@ public class SecurityMockServerConfigurersClassAnnotatedTests extends AbstractMo
|
||||
@WithMockUser("method-user")
|
||||
public void withMockUserWhenClassAndMethodAnnotationThenMethodOverrides() {
|
||||
this.client.get().exchange().expectStatus().isOk().expectBody(String.class).consumeWith(
|
||||
response -> assertThat(response.getResponseBody()).contains("\"username\":\"method-user\""));
|
||||
(response) -> assertThat(response.getResponseBody()).contains("\"username\":\"method-user\""));
|
||||
|
||||
Authentication authentication = TestSecurityContextHolder.getContext().getAuthentication();
|
||||
this.controller.assertPrincipalIsEqualTo(authentication);
|
||||
@@ -70,7 +70,7 @@ public class SecurityMockServerConfigurersClassAnnotatedTests extends AbstractMo
|
||||
public void withMockUserWhenMutateWithThenMustateWithOverrides() {
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockUser("mutateWith-mockUser")).get().exchange()
|
||||
.expectStatus().isOk().expectBody(String.class)
|
||||
.consumeWith(response -> assertThat(response.getResponseBody())
|
||||
.consumeWith((response) -> assertThat(response.getResponseBody())
|
||||
.contains("\"username\":\"mutateWith-mockUser\""));
|
||||
|
||||
Principal principal = this.controller.removePrincipal();
|
||||
|
||||
+6
-6
@@ -55,7 +55,7 @@ public class SecurityMockServerConfigurersJwtTests extends AbstractMockServerCon
|
||||
|
||||
WebTestClient client = WebTestClient.bindToController(this.securityContextController)
|
||||
.webFilter(new SecurityContextServerWebExchangeWebFilter())
|
||||
.argumentResolvers(resolvers -> resolvers
|
||||
.argumentResolvers((resolvers) -> resolvers
|
||||
.addCustomResolver(new CurrentSecurityContextArgumentResolver(new ReactiveAdapterRegistry())))
|
||||
.apply(SecurityMockServerConfigurers.springSecurity()).configureClient()
|
||||
.defaultHeader(HttpHeaders.ACCEPT, MediaType.APPLICATION_JSON_VALUE).build();
|
||||
@@ -76,7 +76,7 @@ public class SecurityMockServerConfigurersJwtTests extends AbstractMockServerCon
|
||||
@Test
|
||||
public void mockJwtWhenProvidingBuilderConsumerThenProducesJwtAuthentication() {
|
||||
String name = new String("user");
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockJwt().jwt(jwt -> jwt.subject(name))).get().exchange()
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockJwt().jwt((jwt) -> jwt.subject(name))).get().exchange()
|
||||
.expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
@@ -88,7 +88,7 @@ public class SecurityMockServerConfigurersJwtTests extends AbstractMockServerCon
|
||||
@Test
|
||||
public void mockJwtWhenProvidingCustomAuthoritiesThenProducesJwtAuthentication() {
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockJwt()
|
||||
.jwt(jwt -> jwt.claim("scope", "ignored authorities")).authorities(this.authority1, this.authority2))
|
||||
.jwt((jwt) -> jwt.claim("scope", "ignored authorities")).authorities(this.authority1, this.authority2))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
@@ -100,7 +100,7 @@ public class SecurityMockServerConfigurersJwtTests extends AbstractMockServerCon
|
||||
public void mockJwtWhenProvidingScopedAuthoritiesThenProducesJwtAuthentication() {
|
||||
this.client
|
||||
.mutateWith(
|
||||
SecurityMockServerConfigurers.mockJwt().jwt(jwt -> jwt.claim("scope", "scoped authorities")))
|
||||
SecurityMockServerConfigurers.mockJwt().jwt((jwt) -> jwt.claim("scope", "scoped authorities")))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
@@ -112,8 +112,8 @@ public class SecurityMockServerConfigurersJwtTests extends AbstractMockServerCon
|
||||
public void mockJwtWhenProvidingGrantedAuthoritiesThenProducesJwtAuthentication() {
|
||||
this.client
|
||||
.mutateWith(
|
||||
SecurityMockServerConfigurers.mockJwt().jwt(jwt -> jwt.claim("scope", "ignored authorities"))
|
||||
.authorities(jwt -> Arrays.asList(this.authority1)))
|
||||
SecurityMockServerConfigurers.mockJwt().jwt((jwt) -> jwt.claim("scope", "ignored authorities"))
|
||||
.authorities((jwt) -> Arrays.asList(this.authority1)))
|
||||
.get().exchange().expectStatus().isOk();
|
||||
|
||||
SecurityContext context = this.securityContextController.removeSecurityContext();
|
||||
|
||||
+2
-2
@@ -66,7 +66,7 @@ public class SecurityMockServerConfigurersOAuth2ClientTests extends AbstractMock
|
||||
@Before
|
||||
public void setup() {
|
||||
this.client = WebTestClient.bindToController(this.controller)
|
||||
.argumentResolvers(c -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
.argumentResolvers((c) -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
this.clientRegistrationRepository, this.authorizedClientRepository)))
|
||||
.webFilter(new SecurityContextServerWebExchangeWebFilter())
|
||||
.apply(SecurityMockServerConfigurers.springSecurity()).configureClient()
|
||||
@@ -114,7 +114,7 @@ public class SecurityMockServerConfigurersOAuth2ClientTests extends AbstractMock
|
||||
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOAuth2Client("registration-id")
|
||||
.clientRegistration(c -> c.clientId("client-id")))
|
||||
.clientRegistration((c) -> c.clientId("client-id")))
|
||||
.get().uri("/client").exchange().expectStatus().isOk();
|
||||
|
||||
OAuth2AuthorizedClient client = this.controller.authorizedClient;
|
||||
|
||||
+6
-5
@@ -61,7 +61,7 @@ public class SecurityMockServerConfigurersOAuth2LoginTests extends AbstractMockS
|
||||
@Before
|
||||
public void setup() {
|
||||
this.client = WebTestClient.bindToController(this.controller)
|
||||
.argumentResolvers(c -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
.argumentResolvers((c) -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
this.clientRegistrationRepository, this.authorizedClientRepository)))
|
||||
.webFilter(new SecurityContextServerWebExchangeWebFilter())
|
||||
.apply(SecurityMockServerConfigurers.springSecurity()).configureClient()
|
||||
@@ -110,7 +110,7 @@ public class SecurityMockServerConfigurersOAuth2LoginTests extends AbstractMockS
|
||||
public void oauth2LoginWhenAttributeSpecifiedThenUserHasAttribute() {
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOAuth2Login()
|
||||
.attributes(a -> a.put("iss", "https://idp.example.org")))
|
||||
.attributes((a) -> a.put("iss", "https://idp.example.org")))
|
||||
.get().uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
OAuth2AuthenticationToken token = this.controller.token;
|
||||
@@ -140,14 +140,15 @@ public class SecurityMockServerConfigurersOAuth2LoginTests extends AbstractMockS
|
||||
OAuth2User oauth2User = new DefaultOAuth2User(AuthorityUtils.createAuthorityList("SCOPE_read"),
|
||||
Collections.singletonMap("sub", "subject"), "sub");
|
||||
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockOAuth2Login().attributes(a -> a.put("subject", "foo"))
|
||||
.oauth2User(oauth2User)).get().uri("/token").exchange().expectStatus().isOk();
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockOAuth2Login()
|
||||
.attributes((a) -> a.put("subject", "foo")).oauth2User(oauth2User)).get().uri("/token").exchange()
|
||||
.expectStatus().isOk();
|
||||
|
||||
OAuth2AuthenticationToken token = this.controller.token;
|
||||
assertThat(token.getPrincipal().getAttributes()).containsEntry("sub", "subject");
|
||||
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockOAuth2Login().oauth2User(oauth2User)
|
||||
.attributes(a -> a.put("sub", "bar"))).get().uri("/token").exchange().expectStatus().isOk();
|
||||
.attributes((a) -> a.put("sub", "bar"))).get().uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
token = this.controller.token;
|
||||
assertThat(token.getPrincipal().getAttributes()).containsEntry("sub", "bar");
|
||||
|
||||
+11
-12
@@ -62,7 +62,7 @@ public class SecurityMockServerConfigurersOidcLoginTests extends AbstractMockSer
|
||||
@Before
|
||||
public void setup() {
|
||||
this.client = WebTestClient.bindToController(this.controller)
|
||||
.argumentResolvers(c -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
.argumentResolvers((c) -> c.addCustomResolver(new OAuth2AuthorizedClientArgumentResolver(
|
||||
this.clientRegistrationRepository, this.authorizedClientRepository)))
|
||||
.webFilter(new SecurityContextServerWebExchangeWebFilter())
|
||||
.apply(SecurityMockServerConfigurers.springSecurity()).configureClient()
|
||||
@@ -111,8 +111,8 @@ public class SecurityMockServerConfigurersOidcLoginTests extends AbstractMockSer
|
||||
@Test
|
||||
public void oidcLoginWhenIdTokenSpecifiedThenUserHasClaims() {
|
||||
this.client
|
||||
.mutateWith(
|
||||
SecurityMockServerConfigurers.mockOidcLogin().idToken(i -> i.issuer("https://idp.example.org")))
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOidcLogin()
|
||||
.idToken((i) -> i.issuer("https://idp.example.org")))
|
||||
.get().uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
OAuth2AuthenticationToken token = this.controller.token;
|
||||
@@ -121,7 +121,8 @@ public class SecurityMockServerConfigurersOidcLoginTests extends AbstractMockSer
|
||||
|
||||
@Test
|
||||
public void oidcLoginWhenUserInfoSpecifiedThenUserHasClaims() throws Exception {
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.mockOidcLogin().userInfoToken(u -> u.email("email@email")))
|
||||
this.client
|
||||
.mutateWith(SecurityMockServerConfigurers.mockOidcLogin().userInfoToken((u) -> u.email("email@email")))
|
||||
.get().uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
OAuth2AuthenticationToken token = this.controller.token;
|
||||
@@ -153,18 +154,16 @@ public class SecurityMockServerConfigurersOidcLoginTests extends AbstractMockSer
|
||||
OidcUser oidcUser = new DefaultOidcUser(AuthorityUtils.createAuthorityList("SCOPE_read"),
|
||||
TestOidcIdTokens.idToken().build());
|
||||
|
||||
this.client
|
||||
.mutateWith(
|
||||
SecurityMockServerConfigurers.mockOidcLogin().idToken(i -> i.subject("foo")).oidcUser(oidcUser))
|
||||
.get().uri("/token").exchange().expectStatus().isOk();
|
||||
this.client.mutateWith(
|
||||
SecurityMockServerConfigurers.mockOidcLogin().idToken((i) -> i.subject("foo")).oidcUser(oidcUser)).get()
|
||||
.uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
OAuth2AuthenticationToken token = this.controller.token;
|
||||
assertThat(token.getPrincipal().getAttributes()).containsEntry("sub", "subject");
|
||||
|
||||
this.client
|
||||
.mutateWith(
|
||||
SecurityMockServerConfigurers.mockOidcLogin().oidcUser(oidcUser).idToken(i -> i.subject("bar")))
|
||||
.get().uri("/token").exchange().expectStatus().isOk();
|
||||
this.client.mutateWith(
|
||||
SecurityMockServerConfigurers.mockOidcLogin().oidcUser(oidcUser).idToken((i) -> i.subject("bar"))).get()
|
||||
.uri("/token").exchange().expectStatus().isOk();
|
||||
|
||||
token = this.controller.token;
|
||||
assertThat(token.getPrincipal().getAttributes()).containsEntry("sub", "bar");
|
||||
|
||||
+1
-1
@@ -123,7 +123,7 @@ public class SecurityMockServerConfigurersTests extends AbstractMockServerConfig
|
||||
@Test
|
||||
public void csrfWhenMutateWithThenDisablesCsrf() {
|
||||
this.client.post().exchange().expectStatus().isEqualTo(HttpStatus.FORBIDDEN).expectBody()
|
||||
.consumeWith(b -> assertThat(new String(b.getResponseBody())).contains("CSRF"));
|
||||
.consumeWith((b) -> assertThat(new String(b.getResponseBody())).contains("CSRF"));
|
||||
|
||||
this.client.mutateWith(SecurityMockServerConfigurers.csrf()).post().exchange().expectStatus().isOk();
|
||||
|
||||
|
||||
+1
-1
@@ -101,7 +101,7 @@ public class SecurityMockMvcRequestBuildersFormLoginTests {
|
||||
@Test
|
||||
public void postProcessorsAreMergedDuringMockMvcPerform() throws Exception {
|
||||
RequestPostProcessor postProcessor = mock(RequestPostProcessor.class);
|
||||
given(postProcessor.postProcessRequest(any())).willAnswer(i -> i.getArgument(0));
|
||||
given(postProcessor.postProcessRequest(any())).willAnswer((i) -> i.getArgument(0));
|
||||
MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new Object())
|
||||
.defaultRequest(MockMvcRequestBuilders.get("/").with(postProcessor)).build();
|
||||
|
||||
|
||||
+1
-1
@@ -94,7 +94,7 @@ public class SecurityMockMvcRequestBuildersFormLogoutTests {
|
||||
@Test
|
||||
public void postProcessorsAreMergedDuringMockMvcPerform() throws Exception {
|
||||
RequestPostProcessor postProcessor = mock(RequestPostProcessor.class);
|
||||
given(postProcessor.postProcessRequest(any())).willAnswer(i -> i.getArgument(0));
|
||||
given(postProcessor.postProcessRequest(any())).willAnswer((i) -> i.getArgument(0));
|
||||
MockMvc mockMvc = MockMvcBuilders.standaloneSetup(new Object())
|
||||
.defaultRequest(MockMvcRequestBuilders.get("/").with(postProcessor)).build();
|
||||
|
||||
|
||||
+1
-1
@@ -61,7 +61,7 @@ public class SecurityMockMvcRequestPostProcessorsDigestTests {
|
||||
this.entryPoint.setRealmName("Spring Security");
|
||||
this.filter = new DigestAuthenticationFilter();
|
||||
this.filter.setUserDetailsService(
|
||||
username -> new User(username, this.password, AuthorityUtils.createAuthorityList("ROLE_USER")));
|
||||
(username) -> new User(username, this.password, AuthorityUtils.createAuthorityList("ROLE_USER")));
|
||||
this.filter.setAuthenticationEntryPoint(this.entryPoint);
|
||||
this.filter.afterPropertiesSet();
|
||||
}
|
||||
|
||||
+5
-5
@@ -110,7 +110,7 @@ public class SecurityMockMvcRequestPostProcessorsJwtTests {
|
||||
@Test
|
||||
public void jwtWhenProvidingBuilderConsumerThenProducesJwtAuthentication() {
|
||||
String name = new String("user");
|
||||
jwt().jwt(jwt -> jwt.subject(name)).postProcessRequest(this.request);
|
||||
jwt().jwt((jwt) -> jwt.subject(name)).postProcessRequest(this.request);
|
||||
|
||||
verify(this.repository).saveContext(this.contextCaptor.capture(), eq(this.request),
|
||||
any(HttpServletResponse.class));
|
||||
@@ -122,7 +122,7 @@ public class SecurityMockMvcRequestPostProcessorsJwtTests {
|
||||
|
||||
@Test
|
||||
public void jwtWhenProvidingCustomAuthoritiesThenProducesJwtAuthentication() {
|
||||
jwt().jwt(jwt -> jwt.claim("scope", "ignored authorities")).authorities(this.authority1, this.authority2)
|
||||
jwt().jwt((jwt) -> jwt.claim("scope", "ignored authorities")).authorities(this.authority1, this.authority2)
|
||||
.postProcessRequest(this.request);
|
||||
|
||||
verify(this.repository).saveContext(this.contextCaptor.capture(), eq(this.request),
|
||||
@@ -134,7 +134,7 @@ public class SecurityMockMvcRequestPostProcessorsJwtTests {
|
||||
|
||||
@Test
|
||||
public void jwtWhenProvidingScopedAuthoritiesThenProducesJwtAuthentication() {
|
||||
jwt().jwt(jwt -> jwt.claim("scope", "scoped authorities")).postProcessRequest(this.request);
|
||||
jwt().jwt((jwt) -> jwt.claim("scope", "scoped authorities")).postProcessRequest(this.request);
|
||||
|
||||
verify(this.repository).saveContext(this.contextCaptor.capture(), eq(this.request),
|
||||
any(HttpServletResponse.class));
|
||||
@@ -145,8 +145,8 @@ public class SecurityMockMvcRequestPostProcessorsJwtTests {
|
||||
|
||||
@Test
|
||||
public void jwtWhenProvidingGrantedAuthoritiesThenProducesJwtAuthentication() {
|
||||
jwt().jwt(jwt -> jwt.claim("scope", "ignored authorities")).authorities(jwt -> Arrays.asList(this.authority1))
|
||||
.postProcessRequest(this.request);
|
||||
jwt().jwt((jwt) -> jwt.claim("scope", "ignored authorities"))
|
||||
.authorities((jwt) -> Arrays.asList(this.authority1)).postProcessRequest(this.request);
|
||||
|
||||
verify(this.repository).saveContext(this.contextCaptor.capture(), eq(this.request),
|
||||
any(HttpServletResponse.class));
|
||||
|
||||
+2
-2
@@ -120,7 +120,7 @@ public class SecurityMockMvcRequestPostProcessorsOAuth2ClientTests {
|
||||
public void oauth2ClientWhenClientRegistrationConsumerThenUses() throws Exception {
|
||||
|
||||
this.mvc.perform(get("/client-id")
|
||||
.with(oauth2Client("registration-id").clientRegistration(c -> c.clientId("client-id"))))
|
||||
.with(oauth2Client("registration-id").clientRegistration((c) -> c.clientId("client-id"))))
|
||||
.andExpect(content().string("client-id"));
|
||||
}
|
||||
|
||||
@@ -160,7 +160,7 @@ public class SecurityMockMvcRequestPostProcessorsOAuth2ClientTests {
|
||||
protected void configure(HttpSecurity http) throws Exception {
|
||||
// @formatter:off
|
||||
http
|
||||
.authorizeRequests(authz -> authz
|
||||
.authorizeRequests((authz) -> authz
|
||||
.anyRequest().permitAll()
|
||||
)
|
||||
.oauth2Client();
|
||||
|
||||
+6
-6
@@ -109,7 +109,7 @@ public class SecurityMockMvcRequestPostProcessorsOAuth2LoginTests {
|
||||
@Test
|
||||
public void oauth2LoginWhenAttributeSpecifiedThenUserHasAttribute() throws Exception {
|
||||
this.mvc.perform(
|
||||
get("/attributes/iss").with(oauth2Login().attributes(a -> a.put("iss", "https://idp.example.org"))))
|
||||
get("/attributes/iss").with(oauth2Login().attributes((a) -> a.put("iss", "https://idp.example.org"))))
|
||||
.andExpect(content().string("https://idp.example.org"));
|
||||
}
|
||||
|
||||
@@ -139,11 +139,11 @@ public class SecurityMockMvcRequestPostProcessorsOAuth2LoginTests {
|
||||
OAuth2User oauth2User = new DefaultOAuth2User(AuthorityUtils.createAuthorityList("SCOPE_read"),
|
||||
Collections.singletonMap("username", "user"), "username");
|
||||
|
||||
this.mvc.perform(
|
||||
get("/attributes/sub").with(oauth2Login().attributes(a -> a.put("sub", "bar")).oauth2User(oauth2User)))
|
||||
this.mvc.perform(get("/attributes/sub")
|
||||
.with(oauth2Login().attributes((a) -> a.put("sub", "bar")).oauth2User(oauth2User)))
|
||||
.andExpect(status().isOk()).andExpect(content().string("no-attribute"));
|
||||
this.mvc.perform(
|
||||
get("/attributes/sub").with(oauth2Login().oauth2User(oauth2User).attributes(a -> a.put("sub", "bar"))))
|
||||
this.mvc.perform(get("/attributes/sub")
|
||||
.with(oauth2Login().oauth2User(oauth2User).attributes((a) -> a.put("sub", "bar"))))
|
||||
.andExpect(content().string("bar"));
|
||||
}
|
||||
|
||||
@@ -155,7 +155,7 @@ public class SecurityMockMvcRequestPostProcessorsOAuth2LoginTests {
|
||||
protected void configure(HttpSecurity http) throws Exception {
|
||||
// @formatter:off
|
||||
http
|
||||
.authorizeRequests(authorize -> authorize
|
||||
.authorizeRequests((authorize) -> authorize
|
||||
.mvcMatchers("/admin/**").hasAuthority("SCOPE_admin")
|
||||
.anyRequest().hasAuthority("SCOPE_read")
|
||||
).oauth2Login();
|
||||
|
||||
+4
-4
@@ -113,13 +113,13 @@ public class SecurityMockMvcRequestPostProcessorsOidcLoginTests {
|
||||
|
||||
@Test
|
||||
public void oidcLoginWhenIdTokenSpecifiedThenUserHasClaims() throws Exception {
|
||||
this.mvc.perform(get("/id-token/iss").with(oidcLogin().idToken(i -> i.issuer("https://idp.example.org"))))
|
||||
this.mvc.perform(get("/id-token/iss").with(oidcLogin().idToken((i) -> i.issuer("https://idp.example.org"))))
|
||||
.andExpect(content().string("https://idp.example.org"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void oidcLoginWhenUserInfoSpecifiedThenUserHasClaims() throws Exception {
|
||||
this.mvc.perform(get("/user-info/email").with(oidcLogin().userInfoToken(u -> u.email("email@email"))))
|
||||
this.mvc.perform(get("/user-info/email").with(oidcLogin().userInfoToken((u) -> u.email("email@email"))))
|
||||
.andExpect(content().string("email@email"));
|
||||
}
|
||||
|
||||
@@ -144,9 +144,9 @@ public class SecurityMockMvcRequestPostProcessorsOidcLoginTests {
|
||||
OidcUser oidcUser = new DefaultOidcUser(AuthorityUtils.createAuthorityList("SCOPE_read"),
|
||||
TestOidcIdTokens.idToken().build());
|
||||
|
||||
this.mvc.perform(get("/id-token/sub").with(oidcLogin().idToken(i -> i.subject("foo")).oidcUser(oidcUser)))
|
||||
this.mvc.perform(get("/id-token/sub").with(oidcLogin().idToken((i) -> i.subject("foo")).oidcUser(oidcUser)))
|
||||
.andExpect(status().isOk()).andExpect(content().string("subject"));
|
||||
this.mvc.perform(get("/id-token/sub").with(oidcLogin().oidcUser(oidcUser).idToken(i -> i.subject("bar"))))
|
||||
this.mvc.perform(get("/id-token/sub").with(oidcLogin().oidcUser(oidcUser).idToken((i) -> i.subject("bar"))))
|
||||
.andExpect(content().string("bar"));
|
||||
}
|
||||
|
||||
|
||||
+7
-6
@@ -90,7 +90,7 @@ public class SecurityMockMvcRequestPostProcessorsOpaqueTokenTests {
|
||||
@Test
|
||||
public void opaqueTokenWhenAttributeSpecifiedThenUserHasAttribute() throws Exception {
|
||||
this.mvc.perform(
|
||||
get("/opaque-token/iss").with(opaqueToken().attributes(a -> a.put("iss", "https://idp.example.org"))))
|
||||
get("/opaque-token/iss").with(opaqueToken().attributes((a) -> a.put("iss", "https://idp.example.org"))))
|
||||
.andExpect(content().string("https://idp.example.org"));
|
||||
}
|
||||
|
||||
@@ -107,13 +107,14 @@ public class SecurityMockMvcRequestPostProcessorsOpaqueTokenTests {
|
||||
// gh-7800
|
||||
@Test
|
||||
public void opaqueTokenWhenPrincipalSpecifiedThenLastCalledTakesPrecedence() throws Exception {
|
||||
OAuth2AuthenticatedPrincipal principal = TestOAuth2AuthenticatedPrincipals.active(a -> a.put("scope", "user"));
|
||||
OAuth2AuthenticatedPrincipal principal = TestOAuth2AuthenticatedPrincipals
|
||||
.active((a) -> a.put("scope", "user"));
|
||||
|
||||
this.mvc.perform(
|
||||
get("/opaque-token/sub").with(opaqueToken().attributes(a -> a.put("sub", "foo")).principal(principal)))
|
||||
this.mvc.perform(get("/opaque-token/sub")
|
||||
.with(opaqueToken().attributes((a) -> a.put("sub", "foo")).principal(principal)))
|
||||
.andExpect(status().isOk()).andExpect(content().string((String) principal.getAttribute("sub")));
|
||||
this.mvc.perform(
|
||||
get("/opaque-token/sub").with(opaqueToken().principal(principal).attributes(a -> a.put("sub", "bar"))))
|
||||
this.mvc.perform(get("/opaque-token/sub")
|
||||
.with(opaqueToken().principal(principal).attributes((a) -> a.put("sub", "bar"))))
|
||||
.andExpect(content().string("bar"));
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -66,14 +66,14 @@ public class SecurityMockMvcResultMatchersTests {
|
||||
|
||||
@Test
|
||||
public void withAuthenticationWhenMatchesThenSuccess() throws Exception {
|
||||
this.mockMvc.perform(formLogin()).andExpect(authenticated()
|
||||
.withAuthentication(auth -> assertThat(auth).isInstanceOf(UsernamePasswordAuthenticationToken.class)));
|
||||
this.mockMvc.perform(formLogin()).andExpect(authenticated().withAuthentication(
|
||||
(auth) -> assertThat(auth).isInstanceOf(UsernamePasswordAuthenticationToken.class)));
|
||||
}
|
||||
|
||||
@Test(expected = AssertionError.class)
|
||||
public void withAuthenticationWhenNotMatchesThenFails() throws Exception {
|
||||
this.mockMvc.perform(formLogin()).andExpect(
|
||||
authenticated().withAuthentication(auth -> assertThat(auth.getName()).isEqualTo("notmatch")));
|
||||
authenticated().withAuthentication((auth) -> assertThat(auth.getName()).isEqualTo("notmatch")));
|
||||
}
|
||||
|
||||
// SEC-2719
|
||||
|
||||
Reference in New Issue
Block a user