sebbASF commented on code in PR #140:
URL: https://github.com/apache/commons-validator/pull/140#discussion_r1372807236
##########
src/main/java/org/apache/commons/validator/routines/EmailValidator.java:
##########
@@ -179,15 +182,28 @@ public boolean isValid(final String email) {
// Check the whole email address structure
final Matcher emailMatcher = EMAIL_PATTERN.matcher(email);
- if (!emailMatcher.matches()) {
+ final Matcher fullnameEmailMatcher =
EMAIL_WITH_FULL_NAME_PATTERN.matcher(email);
+ final boolean fullnameEmailMatches = fullnameEmailMatcher.matches();
Review Comment:
Not sure you need to keep this variable
##########
src/main/java/org/apache/commons/validator/routines/EmailValidator.java:
##########
@@ -41,11 +41,14 @@ public class EmailValidator implements Serializable {
private static final String QUOTED_USER = "(\"(\\\\\"|[^\"])*\")";
private static final String WORD = "((" + VALID_CHARS + "|')+|" +
QUOTED_USER + ")";
- private static final String EMAIL_REGEX = "^(.+)@(\\S+)$";
+ private static final String EMAIL_CHARACTERS = "(.+)@(\\S+)";
+ private static final String EMAIL_REGEX = "^" + EMAIL_CHARACTERS + "$";
private static final String IP_DOMAIN_REGEX = "^\\[(.*)\\]$";
private static final String USER_REGEX = "^" + WORD + "(\\." + WORD +
")*$";
+ private static final String FULL_NAME_EMAIL_REGEX = "^(.+)<" +
EMAIL_CHARACTERS + ">$";
Review Comment:
Why capture the leading comment?
It is not needed.
##########
src/test/java/org/apache/commons/validator/routines/EmailValidatorTest.java:
##########
@@ -407,6 +407,8 @@ public void testEmailUserName() {
assertFalse(validator.isValid("Abc@[email protected]"));
assertTrue(validator.isValid("space\\ [email protected]"));
+
+ assertTrue(validator.isValid("Abigail Jones <[email protected]>"));
Review Comment:
Need some tests to show that user part and domain part are properly validated
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]