Update/parameterize ValidNumberTest

This commit is contained in:
Jon Chambers 2021-10-20 11:57:17 -04:00 committed by Jon Chambers
parent 598599cd14
commit a3fe4b9980
1 changed files with 39 additions and 35 deletions

View File

@ -5,48 +5,52 @@
package org.whispersystems.textsecuregcm.tests.util; package org.whispersystems.textsecuregcm.tests.util;
import org.junit.Test; import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.Arguments;
import org.junit.jupiter.params.provider.MethodSource;
import org.whispersystems.textsecuregcm.util.Util; import org.whispersystems.textsecuregcm.util.Util;
import static junit.framework.TestCase.assertTrue; import java.util.stream.Stream;
import static org.junit.Assert.assertFalse;
public class ValidNumberTest { import static org.junit.jupiter.api.Assertions.assertEquals;
@Test class ValidNumberTest {
public void testValidE164() {
assertTrue(Util.isValidNumber("+14151231234")); @ParameterizedTest
assertTrue(Util.isValidNumber("+71234567890")); @MethodSource
assertTrue(Util.isValidNumber("+447535742222")); void isValid(final String number, final boolean expectValid) {
assertTrue(Util.isValidNumber("+4915174108888")); assertEquals(expectValid, Util.isValidNumber(number));
} }
@Test private static Stream<Arguments> isValid() {
public void testInvalidE164() { return Stream.of(
assertFalse(Util.isValidNumber("+141512312341")); // Valid numbers
assertFalse(Util.isValidNumber("+712345678901")); Arguments.of("+14151231234", true),
assertFalse(Util.isValidNumber("+4475357422221")); Arguments.of("+71234567890", true),
assertFalse(Util.isValidNumber("+491517410888811111")); Arguments.of("+447535742222", true),
} Arguments.of("+4915174108888", true),
@Test // Invalid e164s
public void testNotE164() { Arguments.of("+141512312341", false),
assertFalse(Util.isValidNumber("+1 415 123 1234")); Arguments.of("+712345678901", false),
assertFalse(Util.isValidNumber("+1 (415) 123-1234")); Arguments.of("+4475357422221", false),
assertFalse(Util.isValidNumber("+1 415)123-1234")); Arguments.of("+491517410888811111", false),
assertFalse(Util.isValidNumber("71234567890"));
assertFalse(Util.isValidNumber("001447535742222"));
assertFalse(Util.isValidNumber(" +14151231234"));
assertFalse(Util.isValidNumber("+1415123123a"));
}
@Test // Non-e164s
public void testShortRegions() { Arguments.of("+1 415 123 1234", false),
assertTrue(Util.isValidNumber("+298123456")); Arguments.of("+1 (415) 123-1234", false),
assertTrue(Util.isValidNumber("+299123456")); Arguments.of("+1 415)123-1234", false),
assertTrue(Util.isValidNumber("+376123456")); Arguments.of("71234567890", false),
assertTrue(Util.isValidNumber("+68512345")); Arguments.of("001447535742222", false),
assertTrue(Util.isValidNumber("+689123456")); Arguments.of(" +14151231234", false),
} Arguments.of("+1415123123a", false),
// Short region
Arguments.of("+298123456", true),
Arguments.of("+299123456", true),
Arguments.of("+376123456", true),
Arguments.of("+68512345", true),
Arguments.of("+689123456", true)
);
}
} }