UNPKG

jquery.maskedinput2

Version:
123 lines (98 loc) 3.23 kB
feature("Completed callback", function() { scenario('Completing mask by typing last character',function(){ var completed=false; given("an input with a completed callback", function(){ input.mask("99",{completed:function(){completed=true;}}); }); when("typing left to right",function(){ input.mashKeys("12"); }); then("completed callback should be called",function(){ expect(completed).toBeTruthy(); }); then("value should be correct",function(){ expect(input).toHaveValue('12'); }); }); scenario('Completing mask by typing first character',function(){ var completed=false; given("an input with a completed callback", function(){ input.val("12").mask("99",{completed:function(){completed=true;}}); }); when("replacing first character value",function(){ input .caret(1) .mashKeys(function(keys){keys.type(keys.backspace)}) .mashKeys("3"); }); then("completed callback should be called",function(){ expect(completed).toBeTruthy(); }); then("value should be correct",function(){ expect(input).toHaveValue('32'); }); }); scenario('Typing last character of incomplete mask',function(){ var completed=false; given("an input with a completed callback", function(){ input .mask("99",{completed:function(){completed=true;}}) .mashKeys("1") .mashKeys(function(keys){keys.type(keys.backspace)}); }); when("moving cursor to last position and typing",function(){ input.caret(1).mashKeys("5"); }); then("completed callback should not be called",function(){ expect(completed).toBeFalsy(); }); then("value should be correct",function(){ expect(input).toHaveValue('_5'); }); }); scenario('Typing last character of required portion of mask containing optional',function(){ var completed=false; given("an input with a completed callback", function(){ input.mask("99?99",{completed:function(){completed=true;}}); }); when("typing left to right",function(){ input.mashKeys("12"); }); then("completed callback should be called",function(){ expect(completed).toBeTruthy(); }); then("value should be correct",function(){ expect(input).toHaveValue('12__'); }); }); scenario('Typing all characters of required portion of mask containing optional',function(){ var completedCount=0; given("an input with a completed callback", function(){ input.mask("99?99",{completed:function(){completedCount++;}}); }); when("typing left to right",function(){ input.mashKeys("1234"); }); then("completed callback should be called",function(){ expect(completedCount).toEqual(1); }); then("value should be correct",function(){ expect(input).toHaveValue('1234'); }); }); scenario('Completing mask by typing last character with literal to right',function(){ var completed=false; given("an input with a completed callback", function(){ input.mask("99!",{completed:function(){completed=true;}}); }); when("typing left to right",function(){ input.mashKeys("12"); }); then("completed callback should be called",function(){ expect(completed).toBeTruthy(); }); then("value should be correct",function(){ expect(input).toHaveValue('12!'); }); }); });