Make useOrWrap null input give null output

This commit is contained in:
2023-06-27 12:25:10 -05:00
parent a056c4618c
commit a62a1f10cd
2 changed files with 14 additions and 0 deletions

View File

@ -570,6 +570,11 @@ public class CollectionUtils
{
try
{
if(collection == null)
{
return (null);
}
Class<T> targetClass = (Class<T>) typeToken.getRawType();
if(targetClass.isInstance(collection))
{
@ -602,6 +607,11 @@ public class CollectionUtils
{
try
{
if(collection == null)
{
return (null);
}
Class<T> targetClass = (Class<T>) typeToken.getRawType();
if(targetClass.isInstance(collection))
{

View File

@ -23,6 +23,7 @@ package com.kingsrook.qqq.backend.core.utils;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.Hashtable;
@ -558,6 +559,9 @@ class CollectionUtilsTest extends BaseTest
@Test
void testUseOrWrap()
{
assertNull(CollectionUtils.useOrWrap((Collection<?>) null, TypeToken.get(ArrayList.class)));
assertNull(CollectionUtils.useOrWrap((Map<?, ?>) null, TypeToken.get(HashMap.class)));
{
List<String> originalList = new ArrayList<>(List.of("A", "B", "C"));
ArrayList<String> reallyArrayList = CollectionUtils.useOrWrap(originalList, new TypeToken<>() {});