2525import java .time .temporal .ChronoUnit ;
2626import java .util .Arrays ;
2727import java .util .Base64 ;
28- import java .util .Collections ;
2928import java .util .HashSet ;
3029import java .util .List ;
3130import java .util .Map ;
7271import org .springframework .security .crypto .password .NoOpPasswordEncoder ;
7372import org .springframework .security .crypto .password .PasswordEncoder ;
7473import org .springframework .security .oauth2 .core .AuthorizationGrantType ;
75- import org .springframework .security .oauth2 .core .ClientAuthenticationMethod ;
7674import org .springframework .security .oauth2 .core .OAuth2RefreshToken ;
7775import org .springframework .security .oauth2 .core .OAuth2Token ;
7876import org .springframework .security .oauth2 .core .endpoint .OAuth2AccessTokenResponse ;
10098import org .springframework .security .oauth2 .server .authorization .authentication .OAuth2AuthorizationConsentAuthenticationContext ;
10199import org .springframework .security .oauth2 .server .authorization .authentication .OAuth2AuthorizationConsentAuthenticationProvider ;
102100import org .springframework .security .oauth2 .server .authorization .authentication .OAuth2AuthorizationConsentAuthenticationToken ;
103- import org .springframework .security .oauth2 .server .authorization .authentication .OAuth2ClientAuthenticationToken ;
104101import org .springframework .security .oauth2 .server .authorization .client .JdbcRegisteredClientRepository ;
105102import org .springframework .security .oauth2 .server .authorization .client .JdbcRegisteredClientRepository .RegisteredClientParametersMapper ;
106103import org .springframework .security .oauth2 .server .authorization .client .RegisteredClient ;
@@ -518,6 +515,7 @@ public void requestWhenPublicClientWithPkceAndCustomRefreshTokenGeneratorThenRet
518515 .isEqualTo (true );
519516 }
520517
518+ // gh-1680
521519 @ Test
522520 public void requestWhenPublicClientWithPkceAndEmptyCodeThenBadRequest () throws Exception {
523521 this .spring .register (AuthorizationServerConfiguration .class ).autowire ();
@@ -526,18 +524,17 @@ public void requestWhenPublicClientWithPkceAndEmptyCodeThenBadRequest() throws E
526524 this .registeredClientRepository .save (registeredClient );
527525
528526 MultiValueMap <String , String > tokenRequestParameters = new LinkedMultiValueMap <>();
529- tokenRequestParameters .set (OAuth2ParameterNames .GRANT_TYPE , AuthorizationGrantType .AUTHORIZATION_CODE .getValue ());
527+ tokenRequestParameters .set (OAuth2ParameterNames .GRANT_TYPE ,
528+ AuthorizationGrantType .AUTHORIZATION_CODE .getValue ());
530529 tokenRequestParameters .set (OAuth2ParameterNames .CODE , "" );
531- tokenRequestParameters .set (OAuth2ParameterNames .REDIRECT_URI , registeredClient .getRedirectUris ().iterator ().next ());
530+ tokenRequestParameters .set (OAuth2ParameterNames .REDIRECT_URI ,
531+ registeredClient .getRedirectUris ().iterator ().next ());
532532
533533 this .mvc
534- .perform (post (DEFAULT_TOKEN_ENDPOINT_URI )
535- .params (tokenRequestParameters )
536- .param (OAuth2ParameterNames .CLIENT_ID , registeredClient .getClientId ())
537- .param (PkceParameterNames .CODE_VERIFIER , S256_CODE_VERIFIER ))
538- .andExpect (header ().string (HttpHeaders .CACHE_CONTROL , containsString ("no-store" )))
539- .andExpect (header ().string (HttpHeaders .PRAGMA , containsString ("no-cache" )))
540- .andExpect (status ().isBadRequest ());
534+ .perform (post (DEFAULT_TOKEN_ENDPOINT_URI ).params (tokenRequestParameters )
535+ .param (OAuth2ParameterNames .CLIENT_ID , registeredClient .getClientId ())
536+ .param (PkceParameterNames .CODE_VERIFIER , S256_CODE_VERIFIER ))
537+ .andExpect (status ().isBadRequest ());
541538 }
542539
543540 @ Test
0 commit comments