package org.simplejavamail.internal.util; import org.junit.Test; import static org.assertj.core.api.Assertions.assertThat; public class MiscUtilTest { @Test public void checkNotNull() { assertThat(MiscUtil.checkNotNull("", null)).isEqualTo(""); assertThat(MiscUtil.checkNotNull("blah", null)).isEqualTo("blah"); assertThat(MiscUtil.checkNotNull(23523, null)).isEqualTo(23523); } @Test(expected = NullPointerException.class) public void checkNotNullWithException() { MiscUtil.checkNotNull(null, null); } @Test public void checkArgumentNotEmpty() { assertThat(MiscUtil.checkArgumentNotEmpty("blah", null)).isEqualTo("blah"); assertThat(MiscUtil.checkArgumentNotEmpty(234, null)).isEqualTo(234); } @Test(expected = IllegalArgumentException.class) public void checkArgumentNotEmptyWithEmptyString() { MiscUtil.checkArgumentNotEmpty("", null); } @Test(expected = IllegalArgumentException.class) public void checkArgumentNotEmptyWithNullString() { MiscUtil.checkArgumentNotEmpty(null, null); } @Test public void valueNullOrEmpty() { assertThat(MiscUtil.valueNullOrEmpty("")).isEqualTo(true); assertThat(MiscUtil.valueNullOrEmpty(null)).isEqualTo(true); assertThat(MiscUtil.valueNullOrEmpty("blah")).isEqualTo(false); assertThat(MiscUtil.valueNullOrEmpty(2534)).isEqualTo(false); } @Test(expected = IllegalArgumentException.class) public void testExtractEmailAddresses_MissingAddress() { MiscUtil.extractEmailAddresses(null); } @Test(expected = IllegalArgumentException.class) public void testExtractEmailAddresses_EmptyAddress() { MiscUtil.extractEmailAddresses(""); } @Test public void testExtractEmailAddresses_SingleAddress() { String[] singleAddressList = MiscUtil.extractEmailAddresses("a@b.com"); assertThat(singleAddressList).hasSize(1); assertThat(singleAddressList).contains("a@b.com"); } @Test public void testExtractEmailAddresses_MultipleAddressesWithCommas() { String[] singleAddressList = MiscUtil.extractEmailAddresses("a1@b.com,a2@b.com,a3@b.com"); assertThat(singleAddressList).hasSize(3); assertThat(singleAddressList).contains("a1@b.com", "a2@b.com", "a3@b.com"); } @Test public void testExtractEmailAddresses_MultipleAddressesWithSemicolons() { String[] singleAddressList = MiscUtil.extractEmailAddresses("a1@b.com;a2@b.com;a3@b.com"); assertThat(singleAddressList).hasSize(3); assertThat(singleAddressList).contains("a1@b.com", "a2@b.com", "a3@b.com"); } @Test public void testExtractEmailAddresses_MultipleAddressesMixedCommasAndSemicolons() { String[] singleAddressList = MiscUtil.extractEmailAddresses("a1@b.com,a2@b.com;a3@b.com;a4@b.com,a5@b.com"); assertThat(singleAddressList).hasSize(5); assertThat(singleAddressList).contains("a1@b.com", "a2@b.com", "a3@b.com", "a4@b.com", "a5@b.com"); } @Test public void testExtractEmailAddresses_MultipleAddressesTralingSpaces() { String[] singleAddressList = MiscUtil.extractEmailAddresses("a1@b.com, a2@b.com ;a3@b.com;a4@b.com , a5@b.com,a6@b.com"); assertThat(singleAddressList).hasSize(6); assertThat(singleAddressList).contains("a1@b.com", "a2@b.com", "a3@b.com", "a4@b.com", "a5@b.com", "a6@b.com"); } }