Merge pull request #176 from Kingsrook/feature/string-utils-safe-equals-ignore-case

Feature/string utils safe equals ignore case
This commit is contained in:
2025-04-17 15:34:06 -05:00
committed by GitHub
2 changed files with 36 additions and 0 deletions

View File

@ -489,6 +489,24 @@ public class StringUtils
/***************************************************************************
**
***************************************************************************/
public static boolean safeEqualsIgnoreCase(String a, String b)
{
if(a == null && b == null)
{
return true;
}
if(a == null || b == null)
{
return false;
}
return (a.equalsIgnoreCase(b));
}
/*************************************************************************** /***************************************************************************
** **
***************************************************************************/ ***************************************************************************/

View File

@ -350,4 +350,22 @@ class StringUtilsTest extends BaseTest
assertEquals("test ((2)) (101)", StringUtils.appendIncrementingSuffix("test ((2)) (100)")); assertEquals("test ((2)) (101)", StringUtils.appendIncrementingSuffix("test ((2)) (100)"));
} }
/*******************************************************************************
**
*******************************************************************************/
@Test
void testSafeEqualsIgnoreCase()
{
assertTrue(StringUtils.safeEqualsIgnoreCase(null, null));
assertFalse(StringUtils.safeEqualsIgnoreCase("a", null));
assertFalse(StringUtils.safeEqualsIgnoreCase(null, "a"));
assertTrue(StringUtils.safeEqualsIgnoreCase("a", "a"));
assertTrue(StringUtils.safeEqualsIgnoreCase("A", "a"));
assertFalse(StringUtils.safeEqualsIgnoreCase("a", "b"));
assertTrue(StringUtils.safeEqualsIgnoreCase("timothy d. chamberlain", "TIMOThy d. chaMberlain"));
assertTrue(StringUtils.safeEqualsIgnoreCase("timothy d. chamberlain", "timothy d. chamberlain"));
}
} }