diff --git a/backend/src/main/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImpl.groovy b/backend/src/main/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImpl.groovy index 1e899a230..1a40f3d87 100644 --- a/backend/src/main/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImpl.groovy +++ b/backend/src/main/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImpl.groovy @@ -100,10 +100,6 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService { 'requireSignedRoot': 'true', 'certificateFile': '%{idp.home}/credentials/inc-md-cert.pem' ) - MetadataFilter( - 'xsi:type': 'RequiredValidUntil', - 'maxValidityInterval': 'P14D' - ) //TODO: enhance mr.metadataFilters.each { edu.internet2.tier.shibboleth.admin.ui.domain.filters.MetadataFilter filter -> constructXmlNodeForFilter(filter, delegate) @@ -111,6 +107,7 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService { } } } + println writer.toString() return DOMBuilder.newInstance().parseText(writer.toString()) } } diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IncommonJPAMetadataResolverServiceImplTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IncommonJPAMetadataResolverServiceImplTests.groovy index 26d05eda8..233696386 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IncommonJPAMetadataResolverServiceImplTests.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/IncommonJPAMetadataResolverServiceImplTests.groovy @@ -5,6 +5,7 @@ import edu.internet2.tier.shibboleth.admin.ui.configuration.SearchConfiguration import edu.internet2.tier.shibboleth.admin.ui.domain.filters.EntityAttributesFilter import edu.internet2.tier.shibboleth.admin.ui.domain.filters.EntityAttributesFilterTarget import edu.internet2.tier.shibboleth.admin.ui.domain.filters.EntityRoleWhiteListFilter +import edu.internet2.tier.shibboleth.admin.ui.domain.filters.RequiredValidUntilFilter import edu.internet2.tier.shibboleth.admin.ui.opensaml.OpenSamlObjects import edu.internet2.tier.shibboleth.admin.ui.repository.MetadataResolverRepository import edu.internet2.tier.shibboleth.admin.ui.util.TestObjectGenerator @@ -43,18 +44,20 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification { def 'simple test generation of metadata-providers.xml'() { when: def mr = metadataResolverRepository.findAll().iterator().next() + mr.metadataFilters << requiredValidUntilFilterForXmlGenerationTests() mr.metadataFilters << entityRoleWhiteListFilterForXmlGenerationTests() metadataResolverRepository.save(mr) def output = metadataResolverService.generateConfiguration() then: - assert generatedXmlIsTheSameAsExpectedXml('/conf/278.xml', output) + generatedXmlIsTheSameAsExpectedXml('/conf/278.xml', output) } def 'test generation of metadata-providers.xml with filters'() { when: //TODO: this might break later def mr = metadataResolverRepository.findAll().iterator().next() + mr.metadataFilters << requiredValidUntilFilterForXmlGenerationTests() mr.metadataFilters.add(new EntityAttributesFilter().with { it.entityAttributesFilterTarget = new EntityAttributesFilterTarget().with { it.entityAttributesFilterTargetType = EntityAttributesFilterTarget.EntityAttributesFilterTargetType.ENTITY @@ -76,7 +79,7 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification { def output = metadataResolverService.generateConfiguration() then: - assert generatedXmlIsTheSameAsExpectedXml('/conf/278.2.xml', output) + generatedXmlIsTheSameAsExpectedXml('/conf/278.2.xml', output) } EntityRoleWhiteListFilter entityRoleWhiteListFilterForXmlGenerationTests() { @@ -86,6 +89,13 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification { } } + RequiredValidUntilFilter requiredValidUntilFilterForXmlGenerationTests() { + new RequiredValidUntilFilter().with { + it.maxValidityInterval = 'P14D' + it + } + } + //TODO: check that this configuration is sufficient @TestConfiguration static class TestConfig {