Skip to content

Commit

Permalink
Add unit test
Browse files Browse the repository at this point in the history
  • Loading branch information
adrianhoelzl-sap committed Jun 24, 2024
1 parent 4cc0472 commit 64cee90
Showing 1 changed file with 32 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,12 @@

import org.cloudfoundry.identity.uaa.constants.ClientAuthentication;
import org.cloudfoundry.identity.uaa.constants.OriginKeys;
import org.cloudfoundry.identity.uaa.provider.IdentityProvider;
import org.cloudfoundry.identity.uaa.provider.OIDCIdentityProviderDefinition;
import org.junit.Before;
import org.junit.Test;

import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
Expand Down Expand Up @@ -300,4 +302,34 @@ public void testAuthMethodSet() {
assertNotNull(((OIDCIdentityProviderDefinition) factoryBean.getProviders().get(0).getProvider().getConfig()).getJwtClientAuthentication());
assertEquals("none", (((OIDCIdentityProviderDefinition) factoryBean.getProviders().get(0).getProvider().getConfig()).getAuthMethod()));
}

/* The following two test cases check whether different values for 'setForwardHeader' and 'passwordGrantEnabled' are
* allowed. Due to a copy/paste issue, the value of 'setForwardHeader' was previously always set to the same value
* as 'passwordGrantEnabled'. */
@Test
public void testSetForwardHeader_ShouldAllowValuesDifferentFromPasswordGrantEnabled_True() {
testSetForwardHeader_ShouldAllowValuesDifferentFromPasswordGrantEnabled(true);
}

@Test
public void testSetForwardHeader_ShouldAllowValuesDifferentFromPasswordGrantEnabled_False() {
testSetForwardHeader_ShouldAllowValuesDifferentFromPasswordGrantEnabled(false);
}

private void testSetForwardHeader_ShouldAllowValuesDifferentFromPasswordGrantEnabled(
final boolean setForwardHeader
) {
idpDefinitionMap.put("setForwardHeader", setForwardHeader);
idpDefinitionMap.put("passwordGrantEnabled", !setForwardHeader);
idpDefinitionMap.put("type", OriginKeys.OIDC10);

factoryBean = new OauthIDPWrapperFactoryBean(Collections.singletonMap("new.idp", idpDefinitionMap));
factoryBean.setCommonProperties(idpDefinitionMap, providerDefinition);

final IdentityProvider provider = factoryBean.getProviders().get(0).getProvider();
assertTrue(provider.getConfig() instanceof OIDCIdentityProviderDefinition);
final OIDCIdentityProviderDefinition providerConfig = (OIDCIdentityProviderDefinition) provider.getConfig();
assertEquals(setForwardHeader, providerConfig.isSetForwardHeader());
assertEquals(!setForwardHeader, providerConfig.isPasswordGrantEnabled());
}
}

0 comments on commit 64cee90

Please sign in to comment.