[java-oidc-common] branch main updated: Fix null analyzer issues.

Scott Cantor cantor.2 at osu.edu
Wed Oct 18 20:08:31 UTC 2023


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch main
in repository java-oidc-common.

View the commit online:
http://git.shibboleth.net/view/?p=java-oidc-common.git;a=commit;h=03eafab9fbf8382fb162d301421ffd44425a5c53

The following commit(s) were added to refs/heads/main by this push:
     new 03eafab  Fix null analyzer issues.
03eafab is described below

commit 03eafab9fbf8382fb162d301421ffd44425a5c53
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Wed Oct 18 16:08:27 2023 -0400

    Fix null analyzer issues.
---
 .../impl/OIDCScopedStringAttributeTranscoder.java  |   1 +
 .../spring/enc/impl/OIDCByteEncoderParserTest.java |   7 +-
 .../impl/OIDCScopedStringEncoderParserTest.java    |   5 +-
 .../enc/impl/OIDCStringEncoderParserTest.java      |  11 ++-
 .../impl/OIDCByteAttributeTranscoderTest.java      |  31 +++---
 .../OIDCScopedStringAttributeTranscoderTest.java   |  78 +++++++++------
 .../impl/OIDCStringAttributeTranscoderTest.java    | 106 +++++++++++++--------
 7 files changed, 151 insertions(+), 88 deletions(-)

diff --git a/oidc-common-attribute-impl/src/main/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoder.java b/oidc-common-attribute-impl/src/main/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoder.java
index 7265748..e926537 100644
--- a/oidc-common-attribute-impl/src/main/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoder.java
+++ b/oidc-common-attribute-impl/src/main/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoder.java
@@ -109,6 +109,7 @@ public class OIDCScopedStringAttributeTranscoder extends AbstractOIDCAttributeTr
         if (input instanceof String) {
             final String stringValue = (String)input;
             final String scopeDelimiter = rule.getOrDefault(PROP_SCOPE_DELIMITER, String.class, "@");
+            assert scopeDelimiter != null;
             final int offset = stringValue.indexOf(scopeDelimiter);
             if (offset < 0) {
                 log.warn("Ignoring value with no scope delimiter ({})", scopeDelimiter);
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCByteEncoderParserTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCByteEncoderParserTest.java
index 1743039..f6f7ff2 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCByteEncoderParserTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCByteEncoderParserTest.java
@@ -23,6 +23,9 @@ import net.shibboleth.idp.attribute.transcoding.TranscodingRule;
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
 import net.shibboleth.oidc.attribute.transcoding.impl.OIDCByteAttributeTranscoder;
 
+/**
+ * OIDCByteEncoderParser unit test.
+ */
 public class OIDCByteEncoderParserTest extends BaseEncoderDefinitionParserTest {
 
     protected void testWithProperties(final boolean activation, final Boolean encodeType) {
@@ -32,8 +35,8 @@ public class OIDCByteEncoderParserTest extends BaseEncoderDefinitionParserTest {
 
         assertTrue(rule.get(AttributeTranscoderRegistry.PROP_TRANSCODER, AttributeTranscoder.class) instanceof OIDCByteAttributeTranscoder);
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_NAME, String.class), "OIDCByte_ATTRIBUTE_NAME");
-        assertTrue(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class));
-        assertFalse(rule.get(OIDCAttributeTranscoder.PROP_ASINTEGER, Boolean.class));
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class), Boolean.TRUE);
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASINTEGER, Boolean.class), Boolean.FALSE);
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, String.class), "|");
     }
     
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCScopedStringEncoderParserTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCScopedStringEncoderParserTest.java
index 5bf4d60..0b077af 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCScopedStringEncoderParserTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCScopedStringEncoderParserTest.java
@@ -23,6 +23,9 @@ import net.shibboleth.idp.attribute.transcoding.TranscodingRule;
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
 import net.shibboleth.oidc.attribute.transcoding.impl.OIDCScopedStringAttributeTranscoder;
 
+/**
+ * OIDCScopedStringEncoderParser unit test.
+ */
 public class OIDCScopedStringEncoderParserTest extends BaseEncoderDefinitionParserTest {
 
     protected void testWithProperties(final boolean activation, final Boolean encodeType) {
@@ -32,7 +35,7 @@ public class OIDCScopedStringEncoderParserTest extends BaseEncoderDefinitionPars
 
         assertTrue(rule.get(AttributeTranscoderRegistry.PROP_TRANSCODER, AttributeTranscoder.class) instanceof OIDCScopedStringAttributeTranscoder);
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_NAME, String.class), "OIDCScopedString_ATTRIBUTE_NAME");
-        assertTrue(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class));
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class), Boolean.TRUE);
         assertNull(rule.get(OIDCAttributeTranscoder.PROP_ASINTEGER, Boolean.class));
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, String.class), "|");
         assertEquals(rule.get(OIDCScopedStringAttributeTranscoder.PROP_SCOPE_DELIMITER, String.class), "|");
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCStringEncoderParserTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCStringEncoderParserTest.java
index f289763..8ac063f 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCStringEncoderParserTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/resolver/spring/enc/impl/OIDCStringEncoderParserTest.java
@@ -23,6 +23,9 @@ import net.shibboleth.idp.attribute.transcoding.TranscodingRule;
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
 import net.shibboleth.oidc.attribute.transcoding.impl.OIDCStringAttributeTranscoder;
 
+/**
+ * OIDCStringEncoderParser unit test.
+ */
 public class OIDCStringEncoderParserTest extends BaseEncoderDefinitionParserTest {
 
     protected void testWithProperties(final boolean activation, final Boolean encodeType) {
@@ -32,10 +35,10 @@ public class OIDCStringEncoderParserTest extends BaseEncoderDefinitionParserTest
 
         assertTrue(rule.get(AttributeTranscoderRegistry.PROP_TRANSCODER, AttributeTranscoder.class) instanceof OIDCStringAttributeTranscoder);
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_NAME, String.class), "OIDCString_ATTRIBUTE_NAME");
-        assertTrue(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class));
-        assertTrue(rule.get(OIDCStringAttributeTranscoder.PROP_ASOBJECT, Boolean.class));
-        assertTrue(rule.get(OIDCAttributeTranscoder.PROP_ASBOOLEAN, Boolean.class));
-        assertFalse(rule.get(OIDCAttributeTranscoder.PROP_ASINTEGER, Boolean.class));
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASARRAY, Boolean.class), Boolean.TRUE);
+        assertEquals(rule.get(OIDCStringAttributeTranscoder.PROP_ASOBJECT, Boolean.class), Boolean.TRUE);
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASBOOLEAN, Boolean.class), Boolean.TRUE);
+        assertEquals(rule.get(OIDCAttributeTranscoder.PROP_ASINTEGER, Boolean.class), Boolean.FALSE);
         assertEquals(rule.get(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, String.class), "|");
     }
     
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCByteAttributeTranscoderTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCByteAttributeTranscoderTest.java
index 9d3d1f0..eba29a4 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCByteAttributeTranscoderTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCByteAttributeTranscoderTest.java
@@ -16,11 +16,12 @@ package net.shibboleth.oidc.attribute.transcoding.impl;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.annotation.Nonnull;
+
 import net.minidev.json.JSONArray;
 import net.minidev.json.JSONObject;
 import net.shibboleth.idp.attribute.AttributeEncodingException;
@@ -43,17 +44,19 @@ import net.shibboleth.oidc.attribute.transcoding.AbstractOIDCAttributeTranscoder
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
 import net.shibboleth.shared.codec.Base64Support;
 import net.shibboleth.shared.codec.DecodingException;
+import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.testing.MockApplicationContext;
 
+ at SuppressWarnings("javadoc")
 public class OIDCByteAttributeTranscoderTest {
 
+    @Nonnull private final static String ATTR_ID = "foo";
+    @Nonnull private final static String ATTR_NAME = "bar";
+
     private AttributeTranscoderRegistryImpl registry;
     private Map<String,Object> ruleset;
 
-    private final static String ATTR_ID = "foo";
-    private final static String ATTR_NAME = "bar";
-
     @BeforeMethod
     protected void setUp() throws Exception {
         registry = new AttributeTranscoderRegistryImpl();
@@ -62,7 +65,7 @@ public class OIDCByteAttributeTranscoderTest {
         final OIDCByteAttributeTranscoder transcoder = new OIDCByteAttributeTranscoder();
         transcoder.initialize();
         
-        registry.setNamingRegistry(Collections.singletonList(
+        registry.setNamingRegistry(CollectionSupport.singletonList(
                 new BasicNamingFunction<>(transcoder.getEncodedType(),
                         new AbstractOIDCAttributeTranscoder.NamingFunction())));
         
@@ -81,7 +84,7 @@ public class OIDCByteAttributeTranscoderTest {
     @Test(expectedExceptions=AttributeEncodingException.class)
     public void testNoValues() throws ComponentInitializationException, AttributeEncodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -90,6 +93,7 @@ public class OIDCByteAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         TranscoderSupport.getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
@@ -97,7 +101,7 @@ public class OIDCByteAttributeTranscoderTest {
     @Test
     public void testEncoding() throws ComponentInitializationException, AttributeEncodingException, DecodingException {
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -111,9 +115,11 @@ public class OIDCByteAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
         final String base64Coded = (String) object.get(ATTR_NAME);
         Assert.assertEquals(bytes, Base64Support.decode(base64Coded));
     }
@@ -122,7 +128,7 @@ public class OIDCByteAttributeTranscoderTest {
     public void testInteger() throws ComponentInitializationException, AttributeEncodingException {
         ruleset.put(OIDCAttributeTranscoder.PROP_ASINTEGER, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -137,10 +143,12 @@ public class OIDCByteAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
-
+        assert object != null;
+        
         final JSONArray array = (JSONArray)object.get(ATTR_NAME);
         final JSONArray arrayInts = (JSONArray)array.get(0);
         
@@ -151,16 +159,17 @@ public class OIDCByteAttributeTranscoderTest {
 
     @Test(expectedExceptions=AttributeEncodingException.class)
     public void testEncodingWrongType() throws ComponentInitializationException, AttributeEncodingException {
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
         final IdPAttribute inputAttribute = new IdPAttribute(ATTR_ID);
-        inputAttribute.setValues(Collections.singletonList(new StringAttributeValue("test")));
+        inputAttribute.setValues(CollectionSupport.singletonList(new StringAttributeValue("test")));
         
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         TranscoderSupport.getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoderTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoderTest.java
index 418c194..2bd95ac 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoderTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCScopedStringAttributeTranscoderTest.java
@@ -16,11 +16,12 @@ package net.shibboleth.oidc.attribute.transcoding.impl;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+import javax.annotation.Nonnull;
+
 import org.testng.Assert;
 import org.testng.annotations.AfterMethod;
 import org.testng.annotations.BeforeMethod;
@@ -41,23 +42,24 @@ import net.shibboleth.idp.attribute.transcoding.TranscodingRule;
 import net.shibboleth.idp.attribute.transcoding.impl.AttributeTranscoderRegistryImpl;
 import net.shibboleth.oidc.attribute.transcoding.AbstractOIDCAttributeTranscoder;
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
+import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.testing.MockApplicationContext;
 
+ at SuppressWarnings("javadoc")
 public class OIDCScopedStringAttributeTranscoderTest {
 
+    @Nonnull private static final String ATTR_ID = "foo";
+    @Nonnull private static final String ATTR_NAME = "bar";
+    @Nonnull private static final String STRING_1 = "value1";
+    @Nonnull private static final String STRING_2 = "value2";
+    @Nonnull private static final String SCOPE_1 = "scope1";
+    @Nonnull private static final String SCOPE_2 = "scope2";
+    @Nonnull private static final String DELIMITER = "@";
+    
     private AttributeTranscoderRegistryImpl registry;
     private Map<String,Object> ruleset;
     
-
-    private final static String ATTR_ID = "foo";
-    private final static String ATTR_NAME = "bar";
-    private final static String STRING_1 = "value1";
-    private final static String STRING_2 = "value2";
-    private final static String SCOPE_1 = "scope1";
-    private final static String SCOPE_2 = "scope2";
-    private final static String DELIMITER = "@";
-    
     @BeforeMethod
     protected void setUp() throws Exception {
         registry = new AttributeTranscoderRegistryImpl();
@@ -66,7 +68,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final OIDCScopedStringAttributeTranscoder transcoder = new OIDCScopedStringAttributeTranscoder();
         transcoder.initialize();
         
-        registry.setNamingRegistry(Collections.singletonList(
+        registry.setNamingRegistry(CollectionSupport.singletonList(
                 new BasicNamingFunction<>(transcoder.getEncodedType(),
                         new AbstractOIDCAttributeTranscoder.NamingFunction())));
         
@@ -87,7 +89,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         
         ruleset.put(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, ";");
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -96,6 +98,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         TranscoderSupport.getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
@@ -103,7 +106,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testEncoding() throws ComponentInitializationException, AttributeEncodingException {
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -117,9 +120,11 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
         
         final String v = (String) object.get(ATTR_NAME);
 
@@ -134,7 +139,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         ruleset.put(OIDCAttributeTranscoder.PROP_ASARRAY, true);
         ruleset.put(OIDCScopedStringAttributeTranscoder.PROP_SCOPE_DELIMITER, ":");
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -148,9 +153,11 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
 
         final JSONArray array = (JSONArray) object.get(ATTR_NAME);
         
@@ -162,7 +169,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test(expectedExceptions=AttributeEncodingException.class)
     public void testEncodingWrongType() throws ComponentInitializationException, AttributeEncodingException {
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -176,6 +183,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         TranscoderSupport.<JSONObject>getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
@@ -184,7 +192,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testDecodingNoValues() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -195,11 +203,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
     }
@@ -207,7 +216,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testDecodingScopedString() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -218,11 +227,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertTrue(decodedAttribute.getValues().get(0) instanceof ScopedStringAttributeValue);
@@ -237,7 +247,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         
         ruleset.put(OIDCScopedStringAttributeTranscoder.PROP_SCOPE_DELIMITER, "#");
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -248,11 +258,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertTrue(decodedAttribute.getValues().get(0) instanceof ScopedStringAttributeValue);
@@ -264,7 +275,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testDecodingUnScopedString() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -276,11 +287,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
     }
@@ -288,7 +300,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testDecodingWrongType() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -300,11 +312,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
 
@@ -315,7 +328,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_ARRAY_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -329,11 +342,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 2);
         Assert.assertEquals(((ScopedStringAttributeValue)decodedAttribute.getValues().get(0)).getScope(), SCOPE_1);
@@ -345,7 +359,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     @Test
     public void testDecodingComplexArray() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -364,11 +378,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 2);
         Assert.assertEquals(((ScopedStringAttributeValue)decodedAttribute.getValues().get(0)).getScope(), SCOPE_1);
@@ -381,7 +396,7 @@ public class OIDCScopedStringAttributeTranscoderTest {
     public void testDecodingComplexArray_NumberNotSupported() 
             throws ComponentInitializationException, AttributeDecodingException {
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -401,11 +416,12 @@ public class OIDCScopedStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertEquals(((ScopedStringAttributeValue)decodedAttribute.getValues().get(0)).getScope(), SCOPE_1);
diff --git a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCStringAttributeTranscoderTest.java b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCStringAttributeTranscoderTest.java
index 617dadb..4753f5f 100644
--- a/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCStringAttributeTranscoderTest.java
+++ b/oidc-common-attribute-impl/src/test/java/net/shibboleth/oidc/attribute/transcoding/impl/OIDCStringAttributeTranscoderTest.java
@@ -16,7 +16,6 @@ package net.shibboleth.oidc.attribute.transcoding.impl;
 
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -44,9 +43,11 @@ import net.shibboleth.idp.attribute.transcoding.TranscodingRule;
 import net.shibboleth.idp.attribute.transcoding.impl.AttributeTranscoderRegistryImpl;
 import net.shibboleth.oidc.attribute.transcoding.AbstractOIDCAttributeTranscoder;
 import net.shibboleth.oidc.attribute.transcoding.OIDCAttributeTranscoder;
+import net.shibboleth.shared.collection.CollectionSupport;
 import net.shibboleth.shared.component.ComponentInitializationException;
 import net.shibboleth.shared.testing.MockApplicationContext;
 
+ at SuppressWarnings("javadoc")
 public class OIDCStringAttributeTranscoderTest {
 
     private AttributeTranscoderRegistryImpl registry;
@@ -66,7 +67,7 @@ public class OIDCStringAttributeTranscoderTest {
         final OIDCStringAttributeTranscoder transcoder = new OIDCStringAttributeTranscoder();
         transcoder.initialize();
         
-        registry.setNamingRegistry(Collections.singletonList(
+        registry.setNamingRegistry(CollectionSupport.singletonList(
                 new BasicNamingFunction<>(transcoder.getEncodedType(),
                         new AbstractOIDCAttributeTranscoder.NamingFunction())));
         
@@ -87,7 +88,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, ";");
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -96,6 +97,7 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         TranscoderSupport.getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
@@ -105,7 +107,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCAttributeTranscoder.PROP_STRING_DELIMITER, ";");
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -118,9 +120,11 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
         Assert.assertTrue(((String) object.get(ATTR_NAME)).split(";").length == 2);
         Assert.assertTrue(((String) object.get(ATTR_NAME)).split(";")[0].equals(STRING_1));
         Assert.assertTrue(((String) object.get(ATTR_NAME)).split(";")[1].equals(STRING_2));
@@ -131,7 +135,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCAttributeTranscoder.PROP_ASARRAY, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -144,9 +148,11 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject array = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert array != null;
         Assert.assertTrue(array.get(ATTR_NAME) instanceof JSONArray);
         final JSONArray v = (JSONArray) array.get(ATTR_NAME);
         Assert.assertTrue(v.size() == 2);
@@ -159,7 +165,7 @@ public class OIDCStringAttributeTranscoderTest {
 
         ruleset.put(OIDCAttributeTranscoder.PROP_ASINTEGER, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -172,9 +178,11 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
 
         Assert.assertEquals(2, object.get(ATTR_NAME));
     }
@@ -184,7 +192,7 @@ public class OIDCStringAttributeTranscoderTest {
 
         ruleset.put(OIDCAttributeTranscoder.PROP_ASBOOLEAN, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -197,9 +205,11 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
         
         Assert.assertTrue((Boolean) object.get(ATTR_NAME));
     }
@@ -209,7 +219,7 @@ public class OIDCStringAttributeTranscoderTest {
 
         ruleset.put(OIDCStringAttributeTranscoder.PROP_ASOBJECT, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -221,9 +231,11 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final JSONObject object = TranscoderSupport.<JSONObject>getTranscoder(tr).encode(
                 null, inputAttribute, JSONObject.class, tr);
+        assert object != null;
 
         final JSONObject v = (JSONObject) object.get(ATTR_NAME);
         
@@ -235,7 +247,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test(expectedExceptions=AttributeEncodingException.class)
     public void testEncodingWrongType() throws ComponentInitializationException, AttributeEncodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();
         
@@ -249,6 +261,7 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute, JSONObject.class);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         TranscoderSupport.<JSONObject>getTranscoder(tr).encode(null, inputAttribute, JSONObject.class, tr);
     }
@@ -256,7 +269,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test
     public void testDecodingString() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -267,11 +280,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertNotNull(decodedAttribute.getValues().get(0).getNativeValue());
@@ -281,7 +295,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test
     public void testDecodingNoValues() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -292,11 +306,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
     }
@@ -305,7 +320,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test
     public void testDecodingWrongType_ClaimsRequest() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -318,11 +333,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertTrue(decodedAttribute instanceof IdPRequestedAttribute);
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
@@ -332,7 +348,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test
     public void testDecodingStringArray() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -346,11 +362,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 2);
         Assert.assertEquals(decodedAttribute.getValues().get(0).getNativeValue(), "First");
@@ -362,7 +379,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_ARRAY_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -376,11 +393,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertEquals(decodedAttribute.getValues().get(0).getNativeValue(), "[\"First\",\"Second\"]");
@@ -394,7 +412,7 @@ public class OIDCStringAttributeTranscoderTest {
         ruleset.put(OIDCStringAttributeTranscoder.PROP_NUMBER_AS_STRING, true);
         ruleset.put(OIDCStringAttributeTranscoder.PROP_BOOLEAN_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -425,11 +443,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 6);
         Assert.assertEquals(decodedAttribute.getValues().get(0).getNativeValue(), "First");
@@ -451,7 +470,7 @@ public class OIDCStringAttributeTranscoderTest {
         // convert boolean
         ruleset.put(OIDCStringAttributeTranscoder.PROP_BOOLEAN_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -482,11 +501,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 4);
         Assert.assertEquals(decodedAttribute.getValues().get(0).getNativeValue(), "First");
@@ -500,7 +520,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_NUMBER_AS_STRING, true);
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -511,11 +531,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertNotNull(decodedAttribute.getValues().get(0).getNativeValue());
@@ -527,7 +548,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_NUMBER_AS_STRING, false);
 
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -538,11 +559,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
     }
@@ -552,7 +574,7 @@ public class OIDCStringAttributeTranscoderTest {
 
         ruleset.put(OIDCStringAttributeTranscoder.PROP_NUMBER_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -563,11 +585,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertNotNull(decodedAttribute.getValues().get(0).getNativeValue());
@@ -580,7 +603,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_BOOLEAN_AS_STRING, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -591,11 +614,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertNotNull(decodedAttribute.getValues().get(0).getNativeValue());
@@ -608,7 +632,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_BOOLEAN_AS_STRING, false);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -619,11 +643,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
     }
@@ -633,7 +658,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_ASOBJECT, true);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -647,11 +672,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
 
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 1);
         Assert.assertNotNull(decodedAttribute.getValues().get(0).getNativeValue());
@@ -665,7 +691,7 @@ public class OIDCStringAttributeTranscoderTest {
         
         ruleset.put(OIDCStringAttributeTranscoder.PROP_ASOBJECT, false);
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -679,11 +705,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
 
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
 
@@ -692,7 +719,7 @@ public class OIDCStringAttributeTranscoderTest {
     @Test
     public void testDecodingWrongType() throws ComponentInitializationException, AttributeDecodingException {
         
-        registry.setTranscoderRegistry(Collections.singletonList(new TranscodingRule(ruleset)));
+        registry.setTranscoderRegistry(CollectionSupport.singletonList(new TranscodingRule(ruleset)));
         registry.setApplicationContext(new MockApplicationContext());        
         registry.initialize();        
        
@@ -703,11 +730,12 @@ public class OIDCStringAttributeTranscoderTest {
         final Collection<TranscodingRule> rulesets = registry.getTranscodingRules(inputAttribute);
         Assert.assertEquals(rulesets.size(), 1);
         final TranscodingRule tr = rulesets.iterator().next();
+        assert tr != null;
         
         final IdPAttribute decodedAttribute = TranscoderSupport.<JSONObject>getTranscoder(tr)
                 .decode(null, inputAttribute, tr);
         
-        Assert.assertNotNull(decodedAttribute);
+        assert decodedAttribute != null;
         Assert.assertEquals(decodedAttribute.getId(), ATTR_ID);
         Assert.assertEquals(decodedAttribute.getValues().size(), 0);
 

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list