tests_optional.js 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. module("Optional");
  2. test("inputmask(\"(99) 9999[9]-99999\") - input 121234-12345", function () {
  3. var $fixture = $("#qunit-fixture");
  4. $fixture.append('<input type="text" id="testmask" />');
  5. $("#testmask").inputmask("(99) 9999[9]-99999");
  6. $("#testmask")[0].focus();
  7. $("#testmask").Type("121234-12345");
  8. equal($("#testmask").val(), "(12) 1234-12345", "Result " + $("#testmask").val());
  9. $("#testmask").remove();
  10. });
  11. test("inputmask(\"(99) 9999[9]-99999\") - input 121234512345", function () {
  12. var $fixture = $("#qunit-fixture");
  13. $fixture.append('<input type="text" id="testmask" />');
  14. $("#testmask").inputmask("(99) 9999[9]-99999");
  15. $("#testmask")[0].focus();
  16. $("#testmask").Type("121234512345");
  17. equal($("#testmask").val(), "(12) 12345-12345", "Result " + $("#testmask").val());
  18. $("#testmask").remove();
  19. });
  20. test("inputmask({ mask: \"99999[-9999]\", greedy: true }) - input 123", function () {
  21. var $fixture = $("#qunit-fixture");
  22. $fixture.append('<input type="text" id="testmask" />');
  23. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: true });
  24. $("#testmask")[0].focus();
  25. $("#testmask").Type("123");
  26. equal($("#testmask").val(), "123__-____", "Result " + $("#testmask").val());
  27. $("#testmask").remove();
  28. });
  29. test("inputmask({ mask: \"99999[-9999]\", greedy: false }) - input 123", function () {
  30. var $fixture = $("#qunit-fixture");
  31. $fixture.append('<input type="text" id="testmask" />');
  32. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: false });
  33. $("#testmask")[0].focus();
  34. $("#testmask").Type("123");
  35. equal($("#testmask").val(), "123__", "Result " + $("#testmask").val());
  36. $("#testmask").remove();
  37. });
  38. test("inputmask({ mask: \"99999[-9999]\", greedy: false }) - input 12345", function () {
  39. var $fixture = $("#qunit-fixture");
  40. $fixture.append('<input type="text" id="testmask" />');
  41. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: false });
  42. $("#testmask")[0].focus();
  43. $("#testmask").Type("12345");
  44. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  45. $("#testmask").remove();
  46. });
  47. test("inputmask({ mask: \"99999[-9999]\", greedy: false }) - input 123456", function () {
  48. var $fixture = $("#qunit-fixture");
  49. $fixture.append('<input type="text" id="testmask" />');
  50. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: false });
  51. $("#testmask")[0].focus();
  52. $("#testmask").Type("123456");
  53. equal($("#testmask").val(), "12345-6___", "Result " + $("#testmask").val());
  54. $("#testmask").remove();
  55. });
  56. test("inputmask({ mask: \"99999[-9999]\", greedy: false }) - input 123456789", function () {
  57. var $fixture = $("#qunit-fixture");
  58. $fixture.append('<input type="text" id="testmask" />');
  59. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: false });
  60. $("#testmask")[0].focus();
  61. $("#testmask").Type("123456789");
  62. equal($("#testmask").val(), "12345-6789", "Result " + $("#testmask").val());
  63. $("#testmask").remove();
  64. });
  65. test("inputmask(\"9[9][9] 999[9] 9999\") - input 123123 space 1234 - vipink70", function () {
  66. var $fixture = $("#qunit-fixture");
  67. $fixture.append('<input type="text" id="testmask" />');
  68. $("#testmask").inputmask("9[9][9] 999[9] 9999");
  69. $("#testmask")[0].focus();
  70. $("#testmask").Type("123123");
  71. $("#testmask").SendKey(Inputmask.keyCode.SPACE);
  72. $("#testmask").Type("1234");
  73. equal($("#testmask").val(), "123 123 1234", "Result " + $("#testmask").val());
  74. $("#testmask").remove();
  75. });
  76. test("inputmask('[9-]AAA.999') ", function () {
  77. var $fixture = $("#qunit-fixture");
  78. $fixture.append('<input type="text" id="testmask" />');
  79. $("#testmask").inputmask('[9-]AAA.999');
  80. $("#testmask").Type("1abc123");
  81. $.caret($("#testmask"), 4, 5);
  82. $("#testmask").Type("d");
  83. equal($("#testmask").val(), "1-ABD.123", "Result " + $("#testmask").val());
  84. $("#testmask").remove();
  85. });
  86. test("inputmask('9[9]:99') ", function () {
  87. var $fixture = $("#qunit-fixture");
  88. $fixture.append('<input type="text" id="testmask" />');
  89. $("#testmask").inputmask('9[9]:99');
  90. $("#testmask").Type("3:44");
  91. $.caret($("#testmask"), 1);
  92. $("#testmask").Type("3");
  93. equal($("#testmask").val(), "33:44", "Result " + $("#testmask").val());
  94. $("#testmask").remove();
  95. });
  96. test("inputmask({ mask: \"99999[-9999]\", greedy: false }) - input 123456", function () {
  97. var $fixture = $("#qunit-fixture");
  98. $fixture.append('<input type="text" id="testmask" />');
  99. $("#testmask").inputmask({ mask: "99999[-9999]", greedy: false });
  100. $("#testmask")[0].focus();
  101. $("#testmask").Type("123456");
  102. $("#testmask").blur();
  103. $("#testmask").trigger("mouseenter");
  104. equal($("#testmask").val(), "12345-6___", "Result " + $("#testmask").val());
  105. $("#testmask").remove();
  106. });
  107. test("inputmask({ mask: \"9'9{1,2}\"\", greedy: false, skipOptionalPartCharacter: \"\", \"clearIncomplete\": true }) - input 12 blur - thomstark", function () {
  108. var $fixture = $("#qunit-fixture");
  109. $fixture.append('<input type="text" id="testmask" />');
  110. $("#testmask").inputmask({ mask: "9'9{1,2}\"", greedy: false, skipOptionalPartCharacter: "", "clearIncomplete": true });
  111. $("#testmask")[0].focus();
  112. $("#testmask").Type("12");
  113. $("#testmask").blur();
  114. equal($("#testmask").val(), "1'2\"", "Result " + $("#testmask").val());
  115. $("#testmask").remove();
  116. });
  117. test("inputmask({ mask: \"99{1,2}lb\\s\", greedy: false, skipOptionalPartCharacter: \"\", \"clearIncomplete\": true }) - input 12 blur - thomstark", function () {
  118. var $fixture = $("#qunit-fixture");
  119. $fixture.append('<input type="text" id="testmask" />');
  120. $("#testmask").inputmask({ mask: "99{1,2}lb\\s", greedy: false, skipOptionalPartCharacter: "", "clearIncomplete": true });
  121. $("#testmask")[0].focus();
  122. $("#testmask").Type("12");
  123. $("#testmask").blur();
  124. equal($("#testmask").val(), "12lbs", "Result " + $("#testmask").val());
  125. $("#testmask").remove();
  126. });
  127. test("inputmask({ mask: \"9'9[9]\"\", greedy: false, skipOptionalPartCharacter: \"\", \"clearIncomplete\": true }) - input 12 blur - thomstark", function () {
  128. var $fixture = $("#qunit-fixture");
  129. $fixture.append('<input type="text" id="testmask" />');
  130. $("#testmask").inputmask({ mask: "9'9[9]\"", greedy: false, skipOptionalPartCharacter: "", "clearIncomplete": true });
  131. $("#testmask")[0].focus();
  132. $("#testmask").Type("12");
  133. $("#testmask").blur();
  134. equal($("#testmask").val(), "1'2\"", "Result " + $("#testmask").val());
  135. $("#testmask").remove();
  136. });
  137. test("inputmask({ mask: \"99[9]lb\\s\", greedy: false, skipOptionalPartCharacter: \"\", \"clearIncomplete\": true }) - input 12 blur - thomstark", function () {
  138. var $fixture = $("#qunit-fixture");
  139. $fixture.append('<input type="text" id="testmask" />');
  140. $("#testmask").inputmask({ mask: "99[9]lb\\s", greedy: false, skipOptionalPartCharacter: "", "clearIncomplete": true });
  141. $("#testmask")[0].focus();
  142. $("#testmask").Type("12");
  143. $("#testmask").blur();
  144. equal($("#testmask").val(), "12lbs", "Result " + $("#testmask").val());
  145. $("#testmask").remove();
  146. });
  147. test(".inputmask(\"99999[-9999]\", { greedy: false }); - type 123456 backspace iscomplete?", function () {
  148. var $fixture = $("#qunit-fixture");
  149. $fixture.append('<input type="text" id="testmask" />');
  150. $("#testmask").inputmask("99999[-9999]", { greedy: false });
  151. $("#testmask")[0].focus();
  152. $("#testmask").Type("123456");
  153. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  154. equal($("#testmask").inputmask("isComplete"), true, "Result " + $("#testmask").inputmask("isComplete"));
  155. $("#testmask").remove();
  156. });
  157. asyncTest(".inputmask(\"99999[-9999]\", { greedy: false }); type 123456 backspace blur", function () {
  158. var $fixture = $("#qunit-fixture");
  159. $fixture.append('<input type="text" id="testmask" />');
  160. $("#testmask").inputmask("99999[-9999]", { greedy: false });
  161. $("#testmask")[0].focus();
  162. $("#testmask").Type("123456");
  163. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  164. $("#testmask").blur();
  165. setTimeout(function () {
  166. start();
  167. equal($("#testmask")[0].inputmask._valueGet(), "12345", "Result " + $("#testmask")[0].inputmask._valueGet());
  168. $("#testmask").remove();
  169. }, 0);
  170. });
  171. asyncTest(".inputmask(\"99999[-9999]\", { greedy: false, autoUnmask: true }); type 123456 backspace", function () {
  172. var $fixture = $("#qunit-fixture");
  173. $fixture.append('<input type="text" id="testmask" />');
  174. $("#testmask").inputmask("99999[-9999]", { greedy: false, autoUnmask: true });
  175. $("#testmask")[0].focus();
  176. $("#testmask").Type("123456");
  177. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  178. setTimeout(function () {
  179. start();
  180. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  181. $("#testmask").remove();
  182. }, 0);
  183. });
  184. test(".inputmask('999-999-9999[ ext 9{1,5}]'); - type 12345678901 backspace iscomplete? - antch", function () {
  185. var $fixture = $("#qunit-fixture");
  186. $fixture.append('<input type="text" id="testmask" />');
  187. $("#testmask").inputmask('999-999-9999[ ext 9{1,5}]');
  188. $("#testmask")[0].focus();
  189. $("#testmask").Type("12345678901");
  190. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  191. equal($("#testmask").inputmask("isComplete"), true, "Result " + $("#testmask").inputmask("isComplete"));
  192. $("#testmask").remove();
  193. });
  194. test("inputmask({ mask: \"9999[ 9999][ 9999]\"}) - input 1234 space space - GMTA", function () {
  195. var $fixture = $("#qunit-fixture");
  196. $fixture.append('<input type="text" id="testmask" />');
  197. $("#testmask").inputmask({ mask: "9999[ 9999][ 9999]"});
  198. $("#testmask")[0].focus();
  199. $("#testmask").Type("1234 ");
  200. equal($("#testmask").val(), "1234 ____ ____", "Result " + $("#testmask").val());
  201. $("#testmask").remove();
  202. });