diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/util/ModelRepresentationConversions.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/util/ModelRepresentationConversions.java index 36c4bf6ed..f7279179c 100644 --- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/util/ModelRepresentationConversions.java +++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/util/ModelRepresentationConversions.java @@ -108,9 +108,9 @@ public static Object getOverrideFromAttribute(Attribute attribute) { case BOOLEAN: if (relyingPartyOverrideProperty.getPersistType() != null && (!relyingPartyOverrideProperty.getPersistType().equalsIgnoreCase("boolean"))) { - return "true"; + return true; } else { - return ((XSBoolean) attributeValues.get(0)).getStoredValue(); + return Boolean.valueOf(((XSBoolean) attributeValues.get(0)).getStoredValue()); } case INTEGER: return ((XSInteger) attributeValues.get(0)).getValue(); diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/repository/MetadataResolverRepositoryTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/repository/MetadataResolverRepositoryTests.groovy index 818e132d7..5d08d46e8 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/repository/MetadataResolverRepositoryTests.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/repository/MetadataResolverRepositoryTests.groovy @@ -80,8 +80,9 @@ class MetadataResolverRepositoryTests extends Specification { it.name = 'original' it.resourceId = 'new-filter-UUID' it.attributeRelease = ['attr-for-release'] - it.relyingPartyOverrides = [:] - it.relyingPartyOverrides.put("signAssertion", true) + def overrides = [:] + overrides["signAssertion"] = true + it.setRelyingPartyOverrides(overrides) // to make sure it.rebuildAttributes() is called it } MetadataResolver metadataResolver = metadataResolverRepository.findAll().iterator().next() @@ -111,7 +112,7 @@ class MetadataResolverRepositoryTests extends Specification { it.value == 'attr-for-release' } } - persistedFilter.relyingPartyOverrides.signAssertion + persistedFilter.relyingPartyOverrides["signAssertion"] when: entityManager.flush() @@ -121,10 +122,8 @@ class MetadataResolverRepositoryTests extends Specification { it.name = 'updated' it.resourceId = 'new-filter-UUID' it.attributeRelease = ['attr-for-release', 'attr-for-release2'] - it.relyingPartyOverrides = new RelyingPartyOverridesRepresentation().with { - it.signAssertion = false - it - } + it.relyingPartyOverrides = [:] + it.relyingPartyOverrides.put("signAssertion", false) it } metadataResolver = metadataResolverRepository.findAll().iterator().next() @@ -164,7 +163,7 @@ class MetadataResolverRepositoryTests extends Specification { it.value == 'attr-for-release2' } } - !persistedFilter.relyingPartyOverrides.signAssertion + !persistedFilter.relyingPartyOverrides["signAssertion"] } def "test persisting DynamicHttpMetadataResolver "() {