Skip to content

Commit

Permalink
Allow whitespace padding around values for isEmail test on forms
Browse files Browse the repository at this point in the history
  • Loading branch information
hubbardr authored and jakearchibald committed Aug 24, 2009
1 parent 0df6b11 commit 4189f6b
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
2 changes: 1 addition & 1 deletion src/forms/forms.js
Expand Up @@ -691,7 +691,7 @@ glow.forms.tests = {
var message = opts.message || opts._localeModule.TEST_MESSAGE_IS_EMAIL;

for (var i = 0, len = values.length; i < len; i++) {
if (!/^[A-Za-z0-9](([_\.\-]*[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})$/.test(values[i])) {
if (!/^\s*[A-Za-z0-9](([_\.\-]*[a-zA-Z0-9]+)*)@([A-Za-z0-9]+)(([\.\-]?[a-zA-Z0-9]+)*)\.([A-Za-z]{2,})\s*$/.test(values[i])) {
callback(glow.forms.FAIL, message);
return;
}
Expand Down
12 changes: 9 additions & 3 deletions test/glow/forms/forms.js 100644 → 100755
Expand Up @@ -569,7 +569,7 @@ t.test("glow.forms.tests.maxLen", function() {
});

t.test("glow.forms.tests.isEmail", function() {
t.expect(4);
t.expect(5);

var myFormElem = glow.dom.get("#register");

Expand All @@ -592,19 +592,25 @@ t.test("glow.forms.tests.isEmail", function() {
.addTests(
"email",
["isEmail"]
)
.addTests(
"email_confirm",
["isEmail"]
);

myForm.formNode.val({
username: "1abc-123@abc.a1-b2.xyz.co.uk",
age: "abc@abc@.com",
email: "abc123"
email: "abc123",
email_confirm: " abc123@abc.com "
});

myForm.validate('submit');

t.equals(validateResults.fields[0].result, glow.forms.PASS, "isEmail passes when value is valid email.");
t.equals(validateResults.fields[1].result, glow.forms.FAIL, "isEmail fails when value is almost a valid email.");
t.equals(validateResults.fields[1].result, glow.forms.FAIL, "isEmail fails when value is not a valid email.");
t.equals(validateResults.fields[2].result, glow.forms.FAIL, "isEmail fails when value is not a valid email.");
t.equals(validateResults.fields[3].result, glow.forms.PASS, "isEmail passes when value is a valid email, but has whitespace padding.");

//clean up
resetFormsTestElement();
Expand Down

0 comments on commit 4189f6b

Please sign in to comment.