Add additional unit tests for phone number fuzzy matching.

This commit is contained in:
Greyson Parrelli
2021-10-11 14:20:32 -04:00
parent 49c9b0acde
commit ffc9e8caff
4 changed files with 156 additions and 48 deletions

View File

@@ -0,0 +1,45 @@
package org.thoughtcrime.securesms.contacts.sync;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
public class ArgentinaFuzzyMatcherTest {
@Test
public void matches() {
FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher subject = new FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher();
assertTrue(subject.matches("+545512345678"));
assertTrue(subject.matches("+5495512345678"));
assertFalse(subject.matches("+54155123456"));
assertFalse(subject.matches("+54551234567890"));
assertFalse(subject.matches("+535512345678"));
assertFalse(subject.matches("+5315512345678"));
}
@Test
public void getVariant() {
FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher subject = new FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher();
assertEquals("+545512345678", subject.getVariant("+5495512345678"));
assertEquals("+5495512345678", subject.getVariant("+545512345678"));
assertNull(subject.getVariant(""));
assertNull(subject.getVariant("+535512345678"));
}
@Test
public void isPreferredVariant() {
FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher subject = new FuzzyPhoneNumberHelper.ArgentinaFuzzyMatcher();
assertTrue(subject.isPreferredVariant("+5495512345678"));
assertFalse(subject.isPreferredVariant("+545512345678"));
assertFalse(subject.isPreferredVariant("+54551234567"));
}
}

View File

@@ -32,7 +32,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(2, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, US_B)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test
@@ -41,7 +41,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(3, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1, MX_A)));
assertEquals(MX_A, result.getFuzzies().get(MX_A_1));
assertEquals(MX_A, result.getMapOfOriginalToVariant().get(MX_A_1));
}
@Test
@@ -50,7 +50,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(2, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test
@@ -59,7 +59,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(3, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1, MX_A)));
assertEquals(MX_A_1, result.getFuzzies().get(MX_A));
assertEquals(MX_A_1, result.getMapOfOriginalToVariant().get(MX_A));
}
@Test
@@ -68,7 +68,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(2, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test
@@ -77,7 +77,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(3, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1, MX_A)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test
@@ -86,7 +86,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(3, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1, MX_A)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test
@@ -95,7 +95,7 @@ public class FuzzyPhoneNumberHelperTest {
assertEquals(3, result.getNumbers().size());
assertTrue(result.getNumbers().containsAll(setOf(US_A, MX_A_1, MX_A)));
assertTrue(result.getFuzzies().isEmpty());
assertTrue(result.getMapOfOriginalToVariant().isEmpty());
}
@Test

View File

@@ -0,0 +1,45 @@
package org.thoughtcrime.securesms.contacts.sync;
import org.junit.Test;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
public class MexicoFuzzyMatcherTest {
@Test
public void matches() {
FuzzyPhoneNumberHelper.MexicoFuzzyMatcher subject = new FuzzyPhoneNumberHelper.MexicoFuzzyMatcher();
assertTrue(subject.matches("+525512345678"));
assertTrue(subject.matches("+5215512345678"));
assertFalse(subject.matches("+52155123456"));
assertFalse(subject.matches("+52551234567890"));
assertFalse(subject.matches("+535512345678"));
assertFalse(subject.matches("+5315512345678"));
}
@Test
public void getVariant() {
FuzzyPhoneNumberHelper.MexicoFuzzyMatcher subject = new FuzzyPhoneNumberHelper.MexicoFuzzyMatcher();
assertEquals("+525512345678", subject.getVariant("+5215512345678"));
assertEquals("+5215512345678", subject.getVariant("+525512345678"));
assertNull(subject.getVariant(""));
assertNull(subject.getVariant("+535512345678"));
}
@Test
public void isPreferredVariant() {
FuzzyPhoneNumberHelper.MexicoFuzzyMatcher subject = new FuzzyPhoneNumberHelper.MexicoFuzzyMatcher();
assertTrue(subject.isPreferredVariant("+525512345678"));
assertFalse(subject.isPreferredVariant("+5215512345678"));
assertFalse(subject.isPreferredVariant("+52551234567"));
}
}