[java-idp-plugin-vci] branch dev/DID_WEB_REVIEW updated: Unmodifiable result, tests
Codeberg
noreply at shibboleth.net
Fri Nov 6 09:23:14 UTC 2026
This is an automated email from the git hooks/post-receive script.
codeberg pushed a commit to branch dev/DID_WEB_REVIEW
in repository java-idp-plugin-vci.
View the commit online:
https://codeberg.org/Shibboleth/java-idp-plugin-vci/commit/b0c3245c70f267613f1e7ca9b1f963417f2a7776
The following commit(s) were added to refs/heads/dev/DID_WEB_REVIEW by this push:
new b0c3245 Unmodifiable result, tests
b0c3245 is described below
commit b0c3245c70f267613f1e7ca9b1f963417f2a7776
Author: Janne Lauros <janne.lauros at csc.fi>
AuthorDate: Fri Nov 6 11:22:50 2026 +0200
Unmodifiable result, tests
---
...ignatureSigningConfigurationLookupFunction.java | 3 +-
...tureSigningConfigurationLookupFunctionTest.java | 110 +++++++++++++++++++++
2 files changed, 112 insertions(+), 1 deletion(-)
diff --git a/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunction.java b/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunction.java
index e617636..67c390d 100644
--- a/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunction.java
+++ b/openid-vci-impl/src/main/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunction.java
@@ -29,6 +29,7 @@ import net.shibboleth.oidc.security.jose.SignatureSigningConfiguration;
import net.shibboleth.profile.config.ProfileConfiguration;
import net.shibboleth.profile.context.RelyingPartyContext;
import net.shibboleth.profile.context.navigate.AbstractRelyingPartyLookupFunction;
+import net.shibboleth.shared.collection.CollectionSupport;
/**
* A function that obtains
@@ -64,6 +65,6 @@ public class DidDocumentSignatureSigningConfigurationLookupFunction
}
}
}
- return configs;
+ return CollectionSupport.copyToList(configs);
}
}
diff --git a/openid-vci-impl/src/test/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunctionTest.java b/openid-vci-impl/src/test/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunctionTest.java
new file mode 100644
index 0000000..8e591d4
--- /dev/null
+++ b/openid-vci-impl/src/test/java/org/geant/shibboleth/plugin/openidvci/profile/config/navigate/DidDocumentSignatureSigningConfigurationLookupFunctionTest.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2025, GÉANT
+ *
+ * Licensed under the Apache License, Version 2.0 (the “License”); you may not
+ * use this file except in compliance with the License. You may obtain a copy
+ * of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an “AS IS” BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.geant.shibboleth.plugin.openidvci.profile.config.navigate;
+
+import java.util.List;
+
+import org.geant.shibboleth.plugin.openidvci.profile.config.impl.DefaultDidDocumentConfiguration;
+import org.geant.shibboleth.plugin.openidvci.profile.config.impl.DefaultMetadataDocumentConfiguration;
+import org.opensaml.profile.context.ProfileRequestContext;
+import org.testng.Assert;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+import net.shibboleth.oidc.security.jose.SignatureSigningConfiguration;
+import net.shibboleth.oidc.security.jose.impl.BasicSignatureSigningConfiguration;
+import net.shibboleth.profile.context.RelyingPartyContext;
+
+/** Tests for {@link DidDocumentSignatureSigningConfigurationLookupFunction}. */
+public class DidDocumentSignatureSigningConfigurationLookupFunctionTest {
+
+ private ProfileRequestContext prc;
+
+ private SignatureSigningConfiguration credentialSigning;
+
+ private SignatureSigningConfiguration statusListSigning;
+
+ private DidDocumentSignatureSigningConfigurationLookupFunction lookup;
+
+ @BeforeMethod
+ public void setUp() {
+ prc = new ProfileRequestContext();
+ credentialSigning = new BasicSignatureSigningConfiguration();
+ statusListSigning = new BasicSignatureSigningConfiguration();
+ lookup = new DidDocumentSignatureSigningConfigurationLookupFunction();
+ }
+
+ private void select(final SignatureSigningConfiguration credential,
+ final SignatureSigningConfiguration statusList) {
+ final DefaultDidDocumentConfiguration config = new DefaultDidDocumentConfiguration();
+ config.setCredentialSignatureSigningConfiguration(credential);
+ config.setStatusListSignatureSigningConfiguration(statusList);
+ prc.ensureSubcontext(RelyingPartyContext.class).setProfileConfig(config);
+ }
+
+ @Test
+ public void testNoRelyingPartyContext() {
+ Assert.assertEquals(lookup.apply(prc), List.of());
+ }
+
+ @Test
+ public void testOtherProfileConfiguration() {
+ prc.ensureSubcontext(RelyingPartyContext.class).setProfileConfig(new DefaultMetadataDocumentConfiguration(
+ DefaultMetadataDocumentConfiguration.PROFILE_ID_JWT_VC_ISSUER));
+
+ Assert.assertEquals(lookup.apply(prc), List.of());
+ }
+
+ @Test
+ public void testBothInOrder() {
+ select(credentialSigning, statusListSigning);
+
+ final List<SignatureSigningConfiguration> configs = lookup.apply(prc);
+
+ Assert.assertEquals(configs.size(), 2);
+ Assert.assertSame(configs.get(0), credentialSigning);
+ Assert.assertSame(configs.get(1), statusListSigning);
+ }
+
+ @Test
+ public void testCredentialOnly() {
+ select(credentialSigning, null);
+
+ final List<SignatureSigningConfiguration> configs = lookup.apply(prc);
+
+ Assert.assertEquals(configs.size(), 1);
+ Assert.assertSame(configs.get(0), credentialSigning);
+ }
+
+ @Test
+ public void testStatusListOnly() {
+ select(null, statusListSigning);
+
+ final List<SignatureSigningConfiguration> configs = lookup.apply(prc);
+
+ Assert.assertEquals(configs.size(), 1);
+ Assert.assertSame(configs.get(0), statusListSigning);
+ }
+
+ @Test
+ public void testNeither() {
+ select(null, null);
+
+ Assert.assertEquals(lookup.apply(prc), List.of());
+ }
+
+}
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list