提交 | 用户 | 时间
|
58d006
|
1 |
module("messages"); |
A |
2 |
|
|
3 |
test("predefined message not overwritten by addMethod(a, b, undefined)", function() { |
|
4 |
var message = "my custom message"; |
|
5 |
$.validator.messages.custom = message; |
|
6 |
$.validator.addMethod("custom", function() {}); |
|
7 |
deepEqual(message, $.validator.messages.custom); |
|
8 |
delete $.validator.messages.custom; |
|
9 |
delete $.validator.methods.custom; |
|
10 |
}); |
|
11 |
|
|
12 |
test("group error messages", function() { |
|
13 |
$.validator.addClassRules({ |
|
14 |
requiredDateRange: {required:true, date:true, dateRange:true} |
|
15 |
}); |
|
16 |
$.validator.addMethod("dateRange", function() { |
|
17 |
return new Date($("#fromDate").val()) < new Date($("#toDate").val()); |
|
18 |
}, "Please specify a correct date range."); |
|
19 |
var form = $("#dateRangeForm"); |
|
20 |
form.validate({ |
|
21 |
groups: { |
|
22 |
dateRange: "fromDate toDate" |
|
23 |
}, |
|
24 |
errorPlacement: function(error) { |
|
25 |
form.find(".errorContainer").append(error); |
|
26 |
} |
|
27 |
}); |
|
28 |
ok( !form.valid() ); |
|
29 |
equal( 1, form.find(".errorContainer *").length ); |
|
30 |
equal( "Please enter a valid date.", form.find(".errorContainer label.error").text() ); |
|
31 |
|
|
32 |
$("#fromDate").val("12/03/2006"); |
|
33 |
$("#toDate").val("12/01/2006"); |
|
34 |
ok( !form.valid() ); |
|
35 |
equal( "Please specify a correct date range.", form.find(".errorContainer label.error").text() ); |
|
36 |
|
|
37 |
$("#toDate").val("12/04/2006"); |
|
38 |
ok( form.valid() ); |
|
39 |
ok( form.find(".errorContainer label.error").is(":hidden") ); |
|
40 |
}); |
|
41 |
|
|
42 |
test("read messages from metadata", function() { |
|
43 |
var form = $("#testForm9"); |
|
44 |
form.validate(); |
|
45 |
var e = $("#testEmail9"); |
|
46 |
e.valid(); |
|
47 |
equal( form.find("label").text(), "required" ); |
|
48 |
e.val("bla").valid(); |
|
49 |
equal( form.find("label").text(), "email" ); |
|
50 |
}); |
|
51 |
|
|
52 |
|
|
53 |
test("read messages from metadata, with meta option specified, but no metadata in there", function() { |
|
54 |
var form = $("#testForm1clean"); |
|
55 |
form.validate({ |
|
56 |
meta: "validate", |
|
57 |
rules: { |
|
58 |
firstname: "required" |
|
59 |
} |
|
60 |
}); |
|
61 |
ok(!form.valid(), "not valid"); |
|
62 |
}); |