### Question:
JwtWebSecurityConfigurer { @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) public static JwtWebSecurityConfigurer forRS256(String audience, String issuer) { return forRS256(audience, new String[]{issuer}); } private  JwtWebSecurityConfigurer(String audience, String[] issuers, AuthenticationProvider authenticationProvider); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forRS256(String audience, String issuer); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forRS256(String audience, String issuer, AuthenticationProvider provider); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forRS256(String audience, String[] issuers); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forRS256(String audience, String[] issuers, AuthenticationProvider provider); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256WithBase64Secret(String audience, String issuer, String secret); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256(String audience, String issuer, byte[] secret); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256(String audience, String issuer, AuthenticationProvider provider); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256WithBase64Secret(String audience, String[] issuers, String secret); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256(String audience, String[] issuers, byte[] secret); @SuppressWarnings({"WeakerAccess", "SameParameterValue"}) static JwtWebSecurityConfigurer forHS256(String audience, String[] issuers, AuthenticationProvider provider); @SuppressWarnings("unused") HttpSecurity configure(HttpSecurity http);  }### Answer:
@Test public void shouldCreateRS256Configurer() throws Exception { JwtWebSecurityConfigurer configurer = JwtWebSecurityConfigurer.forRS256("audience", "issuer"); assertThat(configurer, is(notNullValue())); assertThat(configurer.audience, is("audience")); assertThat(configurer.issuers, arrayWithSize(1)); assertThat(configurer.issuers, arrayContaining("issuer")); assertThat(configurer.provider, is(notNullValue())); assertThat(configurer.provider, is(instanceOf(JwtAuthenticationProvider.class))); }
@Test public void shouldCreateRS256ConfigurerWithCustomAuthenticationProvider() throws Exception { AuthenticationProvider provider = mock(AuthenticationProvider.class); JwtWebSecurityConfigurer configurer = JwtWebSecurityConfigurer.forRS256("audience", "issuer", provider); assertThat(configurer, is(notNullValue())); assertThat(configurer.audience, is("audience")); assertThat(configurer.issuers, arrayWithSize(1)); assertThat(configurer.issuers, arrayContaining("issuer")); assertThat(configurer.provider, is(notNullValue())); assertThat(configurer.provider, is(provider)); }