diff options
| author | François Tiercelin <francois.tiercelin@hpe.com> | 2024-10-19 04:38:56 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-19 04:38:56 +0300 |
| commit | e750aca9e53d80eb7c2d7ffc3ccdb4e7cf6a7aca (patch) | |
| tree | 24cbce5ceeacd2fc4871b3830eb879c06049f695 /core/src/test/java | |
| parent | 9598db91c753293e61d13f6405a4b9e8dfcf6843 (diff) | |
| download | zxing-e750aca9e53d80eb7c2d7ffc3ccdb4e7cf6a7aca.tar.xz | |
Be more stringent on email validation rules (#1870)
* be more stringent on email validation rules
add UT to validate various email formats
* fix indentation
* fix failing UT case
* refine regex for email's domain:
* only letters in the last part
* no part starting or ending with a - (- allowed inside the part)
add UT to cover such cases
Diffstat (limited to 'core/src/test/java')
| -rw-r--r-- | core/src/test/java/com/google/zxing/client/result/EmailAddressParsedResultTestCase.java | 25 | ||||
| -rw-r--r-- | core/src/test/java/com/google/zxing/client/result/ParsedReaderResultTestCase.java | 3 |
2 files changed, 27 insertions, 1 deletions
diff --git a/core/src/test/java/com/google/zxing/client/result/EmailAddressParsedResultTestCase.java b/core/src/test/java/com/google/zxing/client/result/EmailAddressParsedResultTestCase.java index 28e5da74e..ea79c4272 100644 --- a/core/src/test/java/com/google/zxing/client/result/EmailAddressParsedResultTestCase.java +++ b/core/src/test/java/com/google/zxing/client/result/EmailAddressParsedResultTestCase.java @@ -29,11 +29,36 @@ import org.junit.Test; public final class EmailAddressParsedResultTestCase extends Assert { @Test + public void testEmailAddresses() { + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress(null)); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123.365.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("abc.def.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@abcd.c")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@abcd")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@ab,cd.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@ab#cd.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@ab!#cd.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@ab_cd.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@-abcd.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@abcd-.com")); + assertFalse(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@abcd.c-m")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@abcd.com")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("123@ab-cd.com")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("abc.456@ab-cd.com")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("abc.456@ab-cd.BB-EZ-12.com")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("建設省.456@ab-cd.com")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("abc.Z456@ab-Cd9Z.co")); + assertTrue(EmailDoCoMoResultParser.isBasicallyValidEmailAddress("建設省.aZ456@Ab-cd9Z.co")); + } + + @Test public void testEmailAddress() { doTest("srowen@example.org", "srowen@example.org", null, null); doTest("mailto:srowen@example.org", "srowen@example.org", null, null); } + @Test public void testTos() { doTest("mailto:srowen@example.org,bob@example.org", diff --git a/core/src/test/java/com/google/zxing/client/result/ParsedReaderResultTestCase.java b/core/src/test/java/com/google/zxing/client/result/ParsedReaderResultTestCase.java index 1363aee49..97bcb3e80 100644 --- a/core/src/test/java/com/google/zxing/client/result/ParsedReaderResultTestCase.java +++ b/core/src/test/java/com/google/zxing/client/result/ParsedReaderResultTestCase.java @@ -92,7 +92,8 @@ public final class ParsedReaderResultTestCase extends Assert { doTestResult("srowen@example.org", "srowen@example.org", ParsedResultType.EMAIL_ADDRESS); doTestResult("mailto:srowen@example.org", "srowen@example.org", ParsedResultType.EMAIL_ADDRESS); doTestResult("MAILTO:srowen@example.org", "srowen@example.org", ParsedResultType.EMAIL_ADDRESS); - doTestResult("srowen@example", "srowen@example", ParsedResultType.EMAIL_ADDRESS); + doTestResult("srowen@example.com", "srowen@example.com", ParsedResultType.EMAIL_ADDRESS); + doTestResult("srowen@example", "srowen@example", ParsedResultType.TEXT); doTestResult("srowen", "srowen", ParsedResultType.TEXT); doTestResult("Let's meet @ 2", "Let's meet @ 2", ParsedResultType.TEXT); } |
