Focus.Spec.js
2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
feature("Focusing A Masked Input",function(){
scenario("Mask starts with a placeholder",function(){
given("a mask beginning with a placeholder",function(){
input.mask("9");
});
when("focusing",function(){
input.focus();
});
waits(20);
then("placeholder text should be correct",function(){
expect(input).toHaveValue('_');
});
and("caret position should be correct",function(){
var caret=input.caret();
expect(caret.begin).toEqual(0);
expect(caret.end).toEqual(0);
});
});
scenario("Mask starts with a literal",function(){
given("a mask beginning with a literal",function(){
input.mask("(9)");
});
when("focusing",function(){
input.focus();
});
waits(20);
then("placeholder text should be correct",function(){
expect(input).toHaveValue('(_)');
});
and("caret position should be correct",function(){
var caret=input.caret();
expect(caret.begin).toEqual(1);
expect(caret.end).toEqual(1);
});
});
scenario("Masking a hidden input",function(){
var error;
$(window).on("error.test",function(err){error=err;})
given("a mask on a hidden input",function(){
input.hide().mask("9");
});
when("focusing input",function(){
input.focus();
});
waits(1);
then("should not throw an error",function(){
expect(error).toBeUndefined();
})
});
});
feature("Leaving A Masked Input",function(){
scenario("All placeholders filled",function(){
given("a mask with two placeholders",function(){
input.mask("99");
});
when("typing two characters and blurring",function(){
input.mashKeys("12").blur();
});
then("value should be correct",function(){
expect(input).toHaveValue("12");
});
});
scenario("Empty placeholders remaining",function(){
given("a mask with two placeholders",function(){
input.mask("99");
});
when("typing one character and blurring",function(){
input.mashKeys("1").blur();
});
then("value should be empty",function(){
expect(input).toHaveValue("");
});
});
});
feature("Optional marker",function(){
scenario("Placeholders not filled to marker",function(){
given("a mask with an optional marker",function(){
input.mask("99?99");
});
when("typing one character and leaving",function(){
input.mashKeys("1").blur();
});
then("value should be empty",function(){
expect(input).toHaveValue("");
});
});
scenario("Placeholders filled to marker",function(){
given("a mask with an optional marker",function(){
input.mask("99?99");
});
when("typing two characters and leaving",function(){
input.mashKeys("12").blur();
});
then("value should remain",function(){
expect(input).toHaveValue("12");
});
});
});