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 5dfbf65eb..7ffb5b5f7 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
@@ -346,12 +346,12 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService {
'xsi:type': 'FilesystemMetadataProvider',
metadataFile: resolver.metadataFile,
- requireValidMetadata: !resolver.requireValidMetadata ?: null,
- failFastInitialization: !resolver.failFastInitialization ?: null,
+ requireValidMetadata: resolver.requireValidMetadata,
+ failFastInitialization: resolver.failFastInitialization,
sortKey: resolver.sortKey,
criterionPredicateRegistryRef: resolver.criterionPredicateRegistryRef,
- useDefaultPredicateRegistry: !resolver.useDefaultPredicateRegistry ?: null,
- satisfyAnyPredicates: resolver.satisfyAnyPredicates ?: null,
+ useDefaultPredicateRegistry: resolver.useDefaultPredicateRegistry,
+ satisfyAnyPredicates: resolver.satisfyAnyPredicates,
parserPoolRef: resolver.reloadableMetadataResolverAttributes?.parserPoolRef,
minRefreshDelay: resolver.reloadableMetadataResolverAttributes?.minRefreshDelay,
@@ -368,12 +368,12 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService {
void constructXmlNodeForResolver(DynamicHttpMetadataResolver resolver, def markupBuilderDelegate, Closure childNodes) {
markupBuilderDelegate.MetadataProvider(id: resolver.xmlId,
'xsi:type': 'DynamicHTTPMetadataProvider',
- requireValidMetadata: !resolver.requireValidMetadata ?: null,
- failFastInitialization: !resolver.failFastInitialization ?: null,
+ requireValidMetadata: resolver.requireValidMetadata,
+ failFastInitialization: resolver.failFastInitialization,
sortKey: resolver.sortKey,
criterionPredicateRegistryRef: resolver.criterionPredicateRegistryRef,
- useDefaultPredicateRegistry: !resolver.useDefaultPredicateRegistry ?: null,
- satisfyAnyPredicates: resolver.satisfyAnyPredicates ?: null,
+ useDefaultPredicateRegistry: resolver.useDefaultPredicateRegistry,
+ satisfyAnyPredicates: resolver.satisfyAnyPredicates,
parserPoolRef: resolver.dynamicMetadataResolverAttributes?.parserPoolRef,
taskTimerRef: resolver.dynamicMetadataResolverAttributes?.taskTimerRef,
refreshDelayFactor: resolver.dynamicMetadataResolverAttributes?.refreshDelayFactor,
@@ -447,14 +447,14 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService {
'xsi:type': 'FileBackedHTTPMetadataProvider',
backingFile: resolver.backingFile,
metadataURL: resolver.metadataURL,
- initializeFromBackupFile: !resolver.initializeFromBackupFile ?: null,
+ initializeFromBackupFile: resolver.initializeFromBackupFile,
backupFileInitNextRefreshDelay: resolver.backupFileInitNextRefreshDelay,
- requireValidMetadata: !resolver.requireValidMetadata ?: null,
- failFastInitialization: !resolver.failFastInitialization ?: null,
+ requireValidMetadata: resolver.requireValidMetadata,
+ failFastInitialization: resolver.failFastInitialization,
sortKey: resolver.sortKey,
criterionPredicateRegistryRef: resolver.criterionPredicateRegistryRef,
- useDefaultPredicateRegistry: !resolver.useDefaultPredicateRegistry ?: null,
- satisfyAnyPredicates: resolver.satisfyAnyPredicates ?: null,
+ useDefaultPredicateRegistry: resolver.useDefaultPredicateRegistry,
+ satisfyAnyPredicates: resolver.satisfyAnyPredicates,
parserPoolRef: resolver.reloadableMetadataResolverAttributes?.parserPoolRef,
minRefreshDelay: resolver.reloadableMetadataResolverAttributes?.minRefreshDelay,
@@ -490,12 +490,12 @@ class JPAMetadataResolverServiceImpl implements MetadataResolverService {
id: resolver.xmlId,
'xsi:type': 'LocalDynamicMetadataProvider',
- requireValidMetadata: !resolver.requireValidMetadata ?: null,
- failFastInitialization: !resolver.failFastInitialization ?: null,
+ requireValidMetadata: resolver.requireValidMetadata,
+ failFastInitialization: resolver.failFastInitialization,
sortKey: resolver.sortKey,
criterionPredicateRegistryRef: resolver.criterionPredicateRegistryRef,
- useDefaultPredicateRegistry: !resolver.useDefaultPredicateRegistry ?: null,
- satisfyAnyPredicates: resolver.satisfyAnyPredicates ?: null,
+ useDefaultPredicateRegistry: resolver.useDefaultPredicateRegistry,
+ satisfyAnyPredicates: resolver.satisfyAnyPredicates,
parserPoolRef: resolver.dynamicMetadataResolverAttributes?.parserPoolRef,
taskTimerRef: resolver.dynamicMetadataResolverAttributes?.taskTimerRef,
refreshDelayFactor: resolver.dynamicMetadataResolverAttributes?.refreshDelayFactor,
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversController.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversController.java
index 96906980b..6bce7af7b 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversController.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversController.java
@@ -202,7 +202,7 @@ private static URI getResourceUriFor(MetadataResolver resolver) {
private void doResolverInitialization(MetadataResolver persistedResolver) throws
ComponentInitializationException, ResolverException, IOException {
- if (persistedResolver.getDoInitialization()) {
+ if (persistedResolver.getDoInitialization() != null && persistedResolver.getDoInitialization()) {
org.opensaml.saml.metadata.resolver.MetadataResolver openSamlRepresentation = null;
try {
openSamlRepresentation = metadataResolverConverterService.convertToOpenSamlRepresentation(persistedResolver);
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java
index 906926916..47bb0810b 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/filters/NameIdFormatFilter.java
@@ -27,7 +27,7 @@ public NameIdFormatFilter() {
type = "NameIDFormat";
}
- private Boolean removeExistingFormats = false;
+ private Boolean removeExistingFormats;
@ElementCollection
@OrderColumn
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/DynamicHttpMetadataResolver.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/DynamicHttpMetadataResolver.java
index 732078747..a7fcef9e9 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/DynamicHttpMetadataResolver.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/DynamicHttpMetadataResolver.java
@@ -46,9 +46,6 @@ public class DynamicHttpMetadataResolver extends MetadataResolver {
public DynamicHttpMetadataResolver() {
type = "DynamicHttpMetadataResolver";
this.httpMetadataResolverAttributes = new HttpMetadataResolverAttributes();
- this.httpMetadataResolverAttributes.setConnectionRequestTimeout(DEFAULT_TIMEOUT);
- this.httpMetadataResolverAttributes.setConnectionTimeout(DEFAULT_TIMEOUT);
- this.httpMetadataResolverAttributes.setSocketTimeout(DEFAULT_TIMEOUT);
this.dynamicMetadataResolverAttributes = new DynamicMetadataResolverAttributes();
}
}
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FileBackedHttpMetadataResolver.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FileBackedHttpMetadataResolver.java
index 17fe28ab9..9966d567f 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FileBackedHttpMetadataResolver.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FileBackedHttpMetadataResolver.java
@@ -25,7 +25,7 @@ public FileBackedHttpMetadataResolver() {
private String backingFile;
- private Boolean initializeFromBackupFile = true;
+ private Boolean initializeFromBackupFile;
private String backupFileInitNextRefreshDelay;
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FilesystemMetadataResolver.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FilesystemMetadataResolver.java
index ce3319d02..7002d9e71 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FilesystemMetadataResolver.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/FilesystemMetadataResolver.java
@@ -21,7 +21,6 @@
public class FilesystemMetadataResolver extends MetadataResolver {
public FilesystemMetadataResolver() {
type = "FilesystemMetadataResolver";
- this.setDoInitialization(false);
}
private String metadataFile;
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/HttpMetadataResolverAttributes.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/HttpMetadataResolverAttributes.java
index 8054ba852..706c34e08 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/HttpMetadataResolverAttributes.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/HttpMetadataResolverAttributes.java
@@ -28,7 +28,7 @@ public class HttpMetadataResolverAttributes {
private String socketTimeout;
- private Boolean disregardTLSCertificate = false;
+ private Boolean disregardTLSCertificate;
private String tlsTrustEngineRef;
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/MetadataResolver.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/MetadataResolver.java
index d24cd3638..13d573b56 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/MetadataResolver.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/MetadataResolver.java
@@ -58,21 +58,21 @@ public class MetadataResolver extends AbstractAuditable {
@Column(unique = true)
private String xmlId;
- private Boolean enabled = true;
+ private Boolean enabled;
- private Boolean requireValidMetadata = true;
+ private Boolean requireValidMetadata;
- private Boolean failFastInitialization = true;
+ private Boolean failFastInitialization;
private Integer sortKey;
private String criterionPredicateRegistryRef;
- private Boolean useDefaultPredicateRegistry = true;
+ private Boolean useDefaultPredicateRegistry;
- private Boolean satisfyAnyPredicates = false;
+ private Boolean satisfyAnyPredicates;
- private Boolean doInitialization = true;
+ private Boolean doInitialization;
@JsonIgnore
private Long versionModifiedTimestamp;
diff --git a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/opensaml/OpenSamlFileBackedHTTPMetadataResolver.java b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/opensaml/OpenSamlFileBackedHTTPMetadataResolver.java
index 9660950d7..6a54c409b 100644
--- a/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/opensaml/OpenSamlFileBackedHTTPMetadataResolver.java
+++ b/backend/src/main/java/edu/internet2/tier/shibboleth/admin/ui/domain/resolvers/opensaml/OpenSamlFileBackedHTTPMetadataResolver.java
@@ -35,7 +35,7 @@ public class OpenSamlFileBackedHTTPMetadataResolver extends FileBackedHTTPMetada
public OpenSamlFileBackedHTTPMetadataResolver(ParserPool parserPool,
IndexWriter indexWriter,
- FileBackedHttpMetadataResolver sourceResolver) throws ResolverException {
+ FileBackedHttpMetadataResolver sourceResolver) throws ResolverException {
super(HttpClients.createMinimal(), sourceResolver.getMetadataURL(), sourceResolver.getBackingFile());
this.indexWriter = indexWriter;
this.sourceResolver = sourceResolver;
@@ -43,21 +43,21 @@ public OpenSamlFileBackedHTTPMetadataResolver(ParserPool parserPool,
this.setId(sourceResolver.getResourceId());
- OpenSamlMetadataResolverConstructorHelper.updateOpenSamlMetadataResolverFromHttpMetadataResolverAttributes(
- this, sourceResolver.getHttpMetadataResolverAttributes());
- OpenSamlMetadataResolverConstructorHelper.updateOpenSamlMetadataResolverFromReloadableMetadataResolverAttributes(
- this, sourceResolver.getReloadableMetadataResolverAttributes(), parserPool);
+ OpenSamlMetadataResolverConstructorHelper.updateOpenSamlMetadataResolverFromHttpMetadataResolverAttributes(this,
+ sourceResolver.getHttpMetadataResolverAttributes());
+ OpenSamlMetadataResolverConstructorHelper.updateOpenSamlMetadataResolverFromReloadableMetadataResolverAttributes(this,
+ sourceResolver.getReloadableMetadataResolverAttributes(), parserPool);
- this.setBackupFile(placeholderResolverService()
- .resolveValueFromPossibleTokenPlaceholder(sourceResolver.getBackingFile()));
+ this.setBackupFile(placeholderResolverService().resolveValueFromPossibleTokenPlaceholder(sourceResolver.getBackingFile()));
this.setBackupFileInitNextRefreshDelay(toMillis(placeholderResolverService()
- .resolveValueFromPossibleTokenPlaceholder(sourceResolver.getBackupFileInitNextRefreshDelay())));
-
- this.setInitializeFromBackupFile(sourceResolver.getInitializeFromBackupFile());
+ .resolveValueFromPossibleTokenPlaceholder(sourceResolver.getBackupFileInitNextRefreshDelay())));
+ if (sourceResolver.getInitializeFromBackupFile() != null) {
+ this.setInitializeFromBackupFile(sourceResolver.getInitializeFromBackupFile());
+ }
this.setMetadataFilter(new MetadataFilterChain());
- //TODO: Where does this get set in OpenSAML land?
+ // TODO: Where does this get set in OpenSAML land?
// sourceResolver.getMetadataURL();
}
diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataFiltersControllerIntegrationTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataFiltersControllerIntegrationTests.groovy
index a07353b9c..e223e0012 100644
--- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataFiltersControllerIntegrationTests.groovy
+++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataFiltersControllerIntegrationTests.groovy
@@ -92,7 +92,7 @@ class MetadataFiltersControllerIntegrationTests extends Specification {
createRequestHttpEntityFor { JsonOutput.toJson(existingFilterMap) }, String)
then:
- updatedResultFromPUT.statusCode.value() == 200
+ updatedResultFromPUT.statusCode.value() == 200
}
def "PUT EntityAttributesFilter and update it"() {
diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversControllerIntegrationTests.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversControllerIntegrationTests.groovy
index fda3a547c..b8487c9c8 100644
--- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversControllerIntegrationTests.groovy
+++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/controller/MetadataResolversControllerIntegrationTests.groovy
@@ -206,6 +206,25 @@ class MetadataResolversControllerIntegrationTests extends Specification {
'ResourceBacked' | _
'Filesystem' | _
}
+
+ @DirtiesContext
+ def "SHIBUI-1992 - error creating FileBackedHTTPMetadata"() {
+ def resolver = new FileBackedHttpMetadataResolver().with {
+ it.name = 'FBHMR'
+ it.xmlId = '1'
+ it.backingFile = 'tmp/foo'
+ it.metadataURL = 'https://nexus.microsoftonline-p.com/federationmetadata/saml20/federationmetadata.xml'
+ it.backupFileInitNextRefreshDelay = 'PT4H'
+ it.enabled = Boolean.FALSE
+ it
+ }
+
+ when:
+ def result = this.restTemplate.postForEntity(BASE_URI, createRequestHttpEntityFor { mapper.writeValueAsString(resolver) }, String)
+
+ then:
+ result.statusCodeValue == 201
+ }
@Unroll
def "PUT concrete MetadataResolver of type #resolverType with updated changes -> /api/MetadataResolvers/{resourceId}"(String resolverType) {
diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/EntityDescriptorTest.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/EntityDescriptorTest.groovy
index b0906a68c..94cf7762a 100644
--- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/EntityDescriptorTest.groovy
+++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/domain/EntityDescriptorTest.groovy
@@ -68,7 +68,8 @@ class EntityDescriptorTest extends Specification {
metadataURL: 'https://idp.unicon.net/idp/shibboleth',
backingFile: "%{idp.home}/metadata/test.xml",
reloadableMetadataResolverAttributes: new ReloadableMetadataResolverAttributes(),
- httpMetadataResolverAttributes: new HttpMetadataResolverAttributes()
+ httpMetadataResolverAttributes: new HttpMetadataResolverAttributes(),
+ initializeFromBackupFile: Boolean.TRUE
)
).with {
it.initialize()
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 3ab2154ea..0214b6ff8 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
@@ -397,6 +397,7 @@ class JPAMetadataResolverServiceImplTests extends Specification {
it.content = 'http://mdq-beta.incommon.org/global'
it
}
+ it.enabled = Boolean.TRUE
it
}
metadataResolverRepository.save(resolver)
@@ -411,12 +412,13 @@ class JPAMetadataResolverServiceImplTests extends Specification {
}
@DirtiesContext(methodMode = DirtiesContext.MethodMode.AFTER_METHOD)
- def 'test namespace protection in nonURL resolver'() {
+ def 'test namespace protection in nonURL resolver with resolver setting enabled=true'() {
setup:
shibUIConfiguration.protectedAttributeNamespaces = ['http://shibboleth.net/ns/profiles']
def resolver = new LocalDynamicMetadataResolver().with {
it.xmlId = 'LocalDynamic'
it.sourceDirectory = '/tmp'
+ it.enabled = Boolean.TRUE
it
}
@@ -424,7 +426,24 @@ class JPAMetadataResolverServiceImplTests extends Specification {
metadataResolverRepository.save(resolver)
then:
- generatedXmlIsTheSameAsExpectedXml('/conf/1059.xml', metadataResolverService.generateConfiguration())
+ generatedXmlIsTheSameAsExpectedXml('/conf/1059-enabled.xml', metadataResolverService.generateConfiguration())
+ }
+
+ @DirtiesContext(methodMode = DirtiesContext.MethodMode.AFTER_METHOD)
+ def 'test namespace protection in nonURL resolver with resolver setting enabled not set'() {
+ setup:
+ shibUIConfiguration.protectedAttributeNamespaces = ['http://shibboleth.net/ns/profiles']
+ def resolver = new LocalDynamicMetadataResolver().with {
+ it.xmlId = 'LocalDynamic'
+ it.sourceDirectory = '/tmp'
+ it
+ }
+
+ when:
+ metadataResolverRepository.save(resolver)
+
+ then:
+ generatedXmlIsTheSameAsExpectedXml('/conf/1059-disabled.xml', metadataResolverService.generateConfiguration())
}
@Ignore('there is a bug in org.opensaml.saml.metadata.resolver.filter.impl.EntityAttributesFilter.applyFilter')
diff --git a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestHelpers.groovy b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestHelpers.groovy
index 0b175c5ad..f50263663 100644
--- a/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestHelpers.groovy
+++ b/backend/src/test/groovy/edu/internet2/tier/shibboleth/admin/ui/util/TestHelpers.groovy
@@ -2,11 +2,20 @@ package edu.internet2.tier.shibboleth.admin.ui.util
import edu.internet2.tier.shibboleth.admin.ui.security.model.User
import groovy.xml.XmlUtil
+import junit.framework.Assert
+import javax.xml.transform.Source;
+import javax.xml.transform.Transformer
+import javax.xml.transform.TransformerException
+import javax.xml.transform.TransformerFactory
+import javax.xml.transform.dom.DOMSource
+import javax.xml.transform.stream.StreamResult
+
import org.apache.commons.lang.StringUtils
import org.springframework.security.core.context.SecurityContextHolder
import org.w3c.dom.Document
import org.xmlunit.builder.DiffBuilder
import org.xmlunit.builder.Input
+import org.xmlunit.builder.Input.Builder
/**
* @author Bill Smith (wsmith@unicon.net)
@@ -29,15 +38,27 @@ class TestHelpers {
}
static void generatedXmlIsTheSameAsExpectedXml(String expectedXmlResource, Document generatedXml) {
- assert !DiffBuilder.compare(Input.fromStream(TestHelpers.getResourceAsStream(expectedXmlResource)))
- .withTest(Input.fromDocument(generatedXml))
+ def Builder builder = Input.fromDocument(generatedXml)
+ def Source source = builder.build()
+ def myDiff = DiffBuilder.compare(Input.fromStream(TestHelpers.getResourceAsStream(expectedXmlResource)))
+ .withTest(builder)
.withAttributeFilter({attribute -> !attribute.name.equals("sourceDirectory")})
.ignoreComments()
.ignoreWhitespace()
.build()
- .hasDifferences()
+ System.out.println("@@@ \n" + getString(source) + "\n")
+ Assert.assertFalse(myDiff.toString(), myDiff.hasDifferences());
}
+ public static String getString(DOMSource domSource) throws TransformerException {
+ StringWriter writer = new StringWriter();
+ StreamResult result = new StreamResult(writer);
+ TransformerFactory tf = TransformerFactory.newInstance();
+ Transformer transformer = tf.newTransformer();
+ transformer.transform(domSource, result);
+ return writer.toString();
+ }
+
static String XmlDocumentToString(Document document) {
return XmlUtil.serialize(document.documentElement)
}
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 982722ebd..e28220cc6 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
@@ -507,6 +507,7 @@ class TestObjectGenerator {
it.name = 'FilesystemMetadata'
it.xmlId = 'FilesystemMetadata'
it.metadataFile = 'metadata/metadata.xml'
+ it.doInitialization = Boolean.FALSE // Removed the default setting, added back to keep tests the same.
it.reloadableMetadataResolverAttributes = new ReloadableMetadataResolverAttributes().with {
it
@@ -527,6 +528,9 @@ class TestObjectGenerator {
it.maxRefreshDelay = 'P1D'
it
}
+ // Changes in MetadataResolver (removing defaults), so adding back those settings here.
+ it.enabled = Boolean.TRUE
+ it.doInitialization = Boolean.TRUE
it
}
}
@@ -543,6 +547,9 @@ class TestObjectGenerator {
it.content = 'content'
it
}
+ // Changes in MetadataResolver (removing defaults), so adding back those settings here.
+ it.enabled = Boolean.TRUE
+ it.doInitialization = Boolean.TRUE
it
}
}
@@ -556,6 +563,9 @@ class TestObjectGenerator {
it.dynamicMetadataResolverAttributes = new DynamicMetadataResolverAttributes().with {
it
}
+ // Changes in MetadataResolver (removing defaults), so adding back those settings here.
+ it.enabled = Boolean.TRUE
+ it.doInitialization = Boolean.TRUE
it
}
}
@@ -573,6 +583,9 @@ class TestObjectGenerator {
it.reloadableMetadataResolverAttributes = new ReloadableMetadataResolverAttributes().with {
it
}
+ // Changes in MetadataResolver (removing defaults), so adding back those settings here.
+ it.enabled = Boolean.TRUE
+ it.doInitialization = Boolean.TRUE
it
}
}
@@ -589,6 +602,9 @@ class TestObjectGenerator {
it.refreshDelayFactor = 0.3
it
}
+ // Changes in MetadataResolver (removing defaults), so adding back those settings here.
+ it.enabled = Boolean.TRUE
+ it.doInitialization = Boolean.TRUE
it
}
}
diff --git a/backend/src/test/resources/conf/1059-disabled.xml b/backend/src/test/resources/conf/1059-disabled.xml
new file mode 100644
index 000000000..952c86ee6
--- /dev/null
+++ b/backend/src/test/resources/conf/1059-disabled.xml
@@ -0,0 +1,11 @@
+
+
+
+
\ No newline at end of file
diff --git a/backend/src/test/resources/conf/1059.xml b/backend/src/test/resources/conf/1059-enabled.xml
similarity index 100%
rename from backend/src/test/resources/conf/1059.xml
rename to backend/src/test/resources/conf/1059-enabled.xml
diff --git a/backend/src/test/resources/conf/278.2.xml b/backend/src/test/resources/conf/278.2.xml
index 3e4fb9d47..c8bd08e6b 100644
--- a/backend/src/test/resources/conf/278.2.xml
+++ b/backend/src/test/resources/conf/278.2.xml
@@ -1,5 +1,5 @@
-
+
content
diff --git a/backend/src/test/resources/conf/278.xml b/backend/src/test/resources/conf/278.xml
index 81e7072fc..0c1bfd794 100644
--- a/backend/src/test/resources/conf/278.xml
+++ b/backend/src/test/resources/conf/278.xml
@@ -1,5 +1,5 @@
-
+
content
diff --git a/backend/src/test/resources/conf/704.1.xml b/backend/src/test/resources/conf/704.1.xml
index 9d9f4d4b8..262dc8414 100644
--- a/backend/src/test/resources/conf/704.1.xml
+++ b/backend/src/test/resources/conf/704.1.xml
@@ -1,5 +1,5 @@
-
+
some content
diff --git a/backend/src/test/resources/conf/704.2.xml b/backend/src/test/resources/conf/704.2.xml
index e97ecb41e..5a185379c 100644
--- a/backend/src/test/resources/conf/704.2.xml
+++ b/backend/src/test/resources/conf/704.2.xml
@@ -1,5 +1,5 @@
-
+
some content
diff --git a/backend/src/test/resources/conf/704.3.xml b/backend/src/test/resources/conf/704.3.xml
index d408c59eb..4fdc26106 100644
--- a/backend/src/test/resources/conf/704.3.xml
+++ b/backend/src/test/resources/conf/704.3.xml
@@ -1,5 +1,5 @@
-
+
some content
diff --git a/backend/src/test/resources/conf/984-2.xml b/backend/src/test/resources/conf/984-2.xml
index f056d8037..c3bd16e05 100644
--- a/backend/src/test/resources/conf/984-2.xml
+++ b/backend/src/test/resources/conf/984-2.xml
@@ -1,5 +1,5 @@
-
+
http://mdq-beta.incommon.org/global
diff --git a/backend/src/test/resources/conf/984.xml b/backend/src/test/resources/conf/984.xml
index 09b4778eb..a67eb1a93 100644
--- a/backend/src/test/resources/conf/984.xml
+++ b/backend/src/test/resources/conf/984.xml
@@ -1,5 +1,5 @@
-
+
http://mdq-beta.incommon.org/global