@SuppressWarnings("java:S4973")
    public static boolean equalsIgnoreCase(String str1, String str2) {
        return (str1 != null && str2 != null) && (str1 == str2 || lowerCaseInternal(str1).equals(lowerCaseInternal(str2)));
    }
@Test
    void testEqualsIgnoreCase() {
        assertFalse(StringUtil.equalsIgnoreCase(null, null));
        assertFalse(StringUtil.equalsIgnoreCase(null, "a"));
        assertFalse(StringUtil.equalsIgnoreCase("a", null));
        assertTrue(StringUtil.equalsIgnoreCase("TEST", "test"));
        assertTrue(StringUtil.equalsIgnoreCase("test", "TEST"));
        assertFalse(StringUtil.equalsIgnoreCase("test", "TEST2"));

        Locale defaultLocale = Locale.getDefault();
        Locale.setDefault(new Locale("tr"));
        try {
            assertTrue(StringUtil.equalsIgnoreCase("EXIT", "exit"));
            assertFalse(StringUtil.equalsIgnoreCase("exıt", "EXIT"));
        } finally {
            Locale.setDefault(defaultLocale);
        }
    }