From 2c340a87ecf59d8f094fd129264fafa7b7c6fde8 Mon Sep 17 00:00:00 2001 From: Dmitriy Kopylenko Date: Wed, 28 Nov 2018 11:49:21 -0500 Subject: [PATCH] SHIBUI-799: testing --- .../JPAMetadataResolverServiceImpl.groovy | 3 ++- ...JPAMetadataResolverServiceImplTests.groovy | 11 +++++++++ .../admin/ui/util/TestObjectGenerator.groovy | 6 ++--- backend/src/test/resources/conf/799.xml | 24 +++++++++++++++++++ 4 files changed, 40 insertions(+), 4 deletions(-) create mode 100644 backend/src/test/resources/conf/799.xml 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 ac71a6976..518c3bbf4 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 @@ -239,9 +239,10 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService { ConditionRef(it.value) } else if(it.type == CONDITION_SCRIPT) { + def scriptText = it.value ConditionScript() { Script() { - mkp.yieldUnescaped("\n\n") + mkp.yieldUnescaped("\n\n") } } } diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImplTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImplTests.groovy index 8bb9bc7d4..47e21c3a9 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImplTests.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/service/JPAMetadataResolverServiceImplTests.groovy @@ -199,6 +199,17 @@ class JPAMetadataResolverServiceImplTests extends Specification { generatedXmlIsTheSameAsExpectedXml('/conf/552.xml', domBuilder.parseText(writer.toString())) } + def 'test generating NameIdFormatFilter xml snippet'() { + given: + def filter = TestObjectGenerator.nameIdFormatFilter() + + when: + genXmlSnippet(markupBuilder) { JPAMetadataResolverServiceImpl.cast(metadataResolverService).constructXmlNodeForFilter(filter, it) } + + then: + generatedXmlIsTheSameAsExpectedXml('/conf/799.xml', domBuilder.parseText(writer.toString())) + } + def 'test generating FileBackedHttMetadataResolver xml snippet'() { given: def resolver = testObjectGenerator.fileBackedHttpMetadataResolver() diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy index 1a44cf1c7..8fec66063 100644 --- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy +++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestObjectGenerator.groovy @@ -230,13 +230,13 @@ class TestObjectGenerator { format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent', type: Type.ENTITY, value: 'https://sp1.example.org'), new FormatAndTarget( - format: 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress', + format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:emailAddress', type: Type.ENTITY, value: 'https://sp2.example.org'), new FormatAndTarget( - format: 'urn:oasis:names:tc:SAML:1.1:nameid-format:persistent', + format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent', type: Type.CONDITION_REF, value: 'conditionRefBeanId'), new FormatAndTarget( - format: 'urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress', + format: 'urn:oasis:names:tc:SAML:2.0:nameid-format:persistent', type: Type.CONDITION_SCRIPT, value: 'input.getEntityID().equals("https://sp1.example.org");') ] it diff --git a/backend/src/test/resources/conf/799.xml b/backend/src/test/resources/conf/799.xml new file mode 100644 index 000000000..b7e32082a --- /dev/null +++ b/backend/src/test/resources/conf/799.xml @@ -0,0 +1,24 @@ + + + + + urn:oasis:names:tc:SAML:2.0:nameid-format:persistent + https://sp1.example.org + urn:oasis:names:tc:SAML:2.0:nameid-format:emailAddress + https://sp2.example.org + urn:oasis:names:tc:SAML:2.0:nameid-format:persistent + conditionRefBeanId + urn:oasis:names:tc:SAML:2.0:nameid-format:persistent + + + + +