Skip to content

Commit

Permalink
SHIBUI-605: testing filter generation
Browse files Browse the repository at this point in the history
  • Loading branch information
dima767 committed Jun 18, 2018
1 parent d0faa36 commit ca965ce
Show file tree
Hide file tree
Showing 3 changed files with 20 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import edu.internet2.tier.shibboleth.admin.ui.configuration.CoreShibUiConfigurat
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.opensaml.OpenSamlObjects
import edu.internet2.tier.shibboleth.admin.ui.repository.MetadataResolverRepository
import edu.internet2.tier.shibboleth.admin.ui.util.TestObjectGenerator
Expand Down Expand Up @@ -41,6 +42,9 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification {

def 'simple test generation of metadata-providers.xml'() {
when:
def mr = metadataResolverRepository.findAll().iterator().next()
mr.metadataFilters << entityRoleWhiteListFilterForXmlGenerationTests()
metadataResolverRepository.save(mr)
def output = metadataResolverService.generateConfiguration()

then:
Expand All @@ -66,6 +70,7 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification {
it.attributes = [attribute]
it
})
mr.metadataFilters << entityRoleWhiteListFilterForXmlGenerationTests()
metadataResolverRepository.save(mr)

def output = metadataResolverService.generateConfiguration()
Expand All @@ -74,6 +79,13 @@ class IncommonJPAMetadataResolverServiceImplTests extends Specification {
assert generatedXmlIsTheSameAsExpectedXml('/conf/278.2.xml', output)
}

EntityRoleWhiteListFilter entityRoleWhiteListFilterForXmlGenerationTests() {
new EntityRoleWhiteListFilter().with {
it.retainedRoles = ['md:SPSSODescriptor']
it
}
}

//TODO: check that this configuration is sufficient
@TestConfiguration
static class TestConfig {
Expand Down
5 changes: 4 additions & 1 deletion backend/src/test/resources/conf/278.2.xml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
</saml:Attribute>
<Entity>https://sp1.example.org</Entity>
</MetadataFilter>
<MetadataFilter xsi:type="EntityRoleWhiteList" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata">
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>

</MetadataProvider>
</MetadataProvider>
5 changes: 4 additions & 1 deletion backend/src/test/resources/conf/278.xml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@
<MetadataFilter xsi:type="SignatureValidation" requireSignedRoot="true"
certificateFile="%{idp.home}/credentials/inc-md-cert.pem" />
<MetadataFilter xsi:type="RequiredValidUntil" maxValidityInterval="P14D" />
<MetadataFilter xsi:type="EntityRoleWhiteList" xmlns:md="urn:oasis:names:tc:SAML:2.0:metadata">
<RetainedRole>md:SPSSODescriptor</RetainedRole>
</MetadataFilter>
</MetadataProvider>

</MetadataProvider>
</MetadataProvider>

0 comments on commit ca965ce

Please sign in to comment.