tests_keepStatic.js 9.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219
  1. define([
  2. "qunit",
  3. "inputmask.dependencyLib",
  4. "inputmask",
  5. "../dist/inputmask/inputmask.date.extensions",
  6. "../dist/inputmask/inputmask.extensions",
  7. "../dist/inputmask/inputmask.numeric.extensions",
  8. "../dist/inputmask/inputmask.phone.extensions",
  9. "../dist/inputmask/inputmask.regex.extensions",
  10. "prototypeExtensions",
  11. "simulator"
  12. ], function(qunit, $, Inputmask) {
  13. qunit.module("keepStatic mask switching");
  14. test("{ mask: [\"+55-99-9999-9999\", \"+55-99-99999-9999\", ], keepStatic: true }", function () {
  15. var $fixture = $("#qunit-fixture");
  16. $fixture.append('<input type="text" id="testmask" />');
  17. var testmask = document.getElementById("testmask");
  18. Inputmask({ mask: ["+55-99-9999-9999", "+55-99-99999-9999"], keepStatic: true }).mask(testmask);
  19. testmask.focus();
  20. $("#testmask").Type("12123451234");
  21. equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  22. $("#testmask").remove();
  23. });
  24. test("{ mask: \"+55-99-9999|(99)-9999\", keepStatic: true } - type 12123451234", function () {
  25. var $fixture = $("#qunit-fixture");
  26. $fixture.append('<input type="text" id="testmask" />');
  27. var testmask = document.getElementById("testmask");
  28. Inputmask({ mask: "+55-99-9999|(99)-9999", keepStatic: true }).mask(testmask);
  29. testmask.focus();
  30. $("#testmask").Type("12123451234");
  31. equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  32. $("#testmask").remove();
  33. });
  34. test("{ mask: ['(99) 9999-9999', '(99) 99999-9999'] } - val('1212341234')", function () {
  35. var $fixture = $("#qunit-fixture");
  36. $fixture.append('<input type="text" id="testmask" />');
  37. var testmask = document.getElementById("testmask");
  38. Inputmask({ mask: ['(99) 9999-9999', '(99) 99999-9999'] }).mask(testmask);
  39. $("#testmask").val("1212341234");
  40. equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1234-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  41. $("#testmask").remove();
  42. });
  43. test("{ mask: \"+55-99-9999|(99)-9999\", keepStatic: false } type 12123451234", function () {
  44. var $fixture = $("#qunit-fixture");
  45. $fixture.append('<input type="text" id="testmask" />');
  46. var testmask = document.getElementById("testmask");
  47. Inputmask({ mask: "+55-99-9999|(99)-9999", keepStatic: false }).mask(testmask);
  48. testmask.focus();
  49. $("#testmask").Type("12123451234");
  50. equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  51. $("#testmask").remove();
  52. });
  53. test("{ mask: [\"+55-99-9999-9999\", \"+55-99-99999-9999\", ], keepStatic: true } - type 12123451234 + backspace", function () {
  54. var $fixture = $("#qunit-fixture");
  55. $fixture.append('<input type="text" id="testmask" />');
  56. var testmask = document.getElementById("testmask");
  57. Inputmask({ mask: ["+55-99-9999-9999", "+55-99-99999-9999"], keepStatic: true }).mask(testmask);
  58. testmask.focus();
  59. $("#testmask").Type("12123451234");
  60. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  61. equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-1234-5123", "Result " + document.getElementById("testmask").inputmask._valueGet());
  62. $("#testmask").remove();
  63. });
  64. test("{ mask: [\"99-9999-99\",\"99-99999-99\"] } - type 12123412 + add 1 upfront", function () {
  65. var $fixture = $("#qunit-fixture");
  66. $fixture.append('<input type="text" id="testmask" />');
  67. var testmask = document.getElementById("testmask");
  68. Inputmask({ mask: ["99-9999-99", "99-99999-99"] }).mask(testmask);
  69. $("#testmask").Type("12123412");
  70. $.caret(testmask, 0);
  71. $("#testmask").Type("1");
  72. equal(document.getElementById("testmask").inputmask._valueGet(), "11-21234-12", "Result " + document.getElementById("testmask").inputmask._valueGet());
  73. $("#testmask").remove();
  74. });
  75. test("{ mask: [\"99-99999-9\",\"99-999999-9\"] } - type 121234561", function () {
  76. var $fixture = $("#qunit-fixture");
  77. $fixture.append('<input type="text" id="testmask" />');
  78. var testmask = document.getElementById("testmask");
  79. Inputmask({ mask: ["99-99999-9", "99-999999-9"] }).mask(testmask);
  80. $("#testmask").Type("121234561");
  81. equal(document.getElementById("testmask").inputmask._valueGet(), "12-123456-1", "Result " + document.getElementById("testmask").inputmask._valueGet());
  82. $("#testmask").remove();
  83. });
  84. test("{ \"keepStatic\": true, greedy: false, mask: \"(99-9)|(99999)\" } - type 12345", function () {
  85. var $fixture = $("#qunit-fixture");
  86. $fixture.append('<input type="text" id="testmask" />');
  87. var testmask = document.getElementById("testmask");
  88. Inputmask({ "keepStatic": true, greedy: false, "mask": "(99-9)|(99999)" }).mask(testmask);
  89. $("#testmask").Type("12345");
  90. equal(document.getElementById("testmask").inputmask._valueGet(), "12345", "Result " + document.getElementById("testmask").inputmask._valueGet());
  91. $("#testmask").remove();
  92. });
  93. test("7|8 999 99 99 - hiddenman", function () {
  94. var $fixture = $("#qunit-fixture");
  95. $fixture.append('<input type="text" id="testmask" />');
  96. var testmask = document.getElementById("testmask");
  97. Inputmask("7|8 999 99 99").mask(testmask);
  98. testmask.focus();
  99. equal(document.getElementById("testmask").inputmask._valueGet(), "_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  100. $("#testmask").remove();
  101. });
  102. test("7|8 999 99 99 type 7 - hiddenman", function () {
  103. var $fixture = $("#qunit-fixture");
  104. $fixture.append('<input type="text" id="testmask" />');
  105. var testmask = document.getElementById("testmask");
  106. Inputmask("7|8 999 99 99").mask(testmask);
  107. $("#testmask").Type("7");
  108. equal(document.getElementById("testmask").inputmask._valueGet(), "7 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  109. $("#testmask").remove();
  110. });
  111. test("7|8 999 99 99 type 8 - hiddenman", function () {
  112. var $fixture = $("#qunit-fixture");
  113. $fixture.append('<input type="text" id="testmask" />');
  114. var testmask = document.getElementById("testmask");
  115. Inputmask("7|8 999 99 99").mask(testmask);
  116. $("#testmask").Type("8");
  117. equal(document.getElementById("testmask").inputmask._valueGet(), "8 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  118. $("#testmask").remove();
  119. });
  120. test("(78)|(79) 999 99 99", function () {
  121. var $fixture = $("#qunit-fixture");
  122. $fixture.append('<input type="text" id="testmask" />');
  123. var testmask = document.getElementById("testmask");
  124. Inputmask("(78)|(79) 999 99 99").mask(testmask);
  125. testmask.focus();
  126. equal(document.getElementById("testmask").inputmask._valueGet(), "7_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  127. $("#testmask").remove();
  128. });
  129. test("(78)|(79) 999 99 99 - type 5", function () {
  130. var $fixture = $("#qunit-fixture");
  131. $fixture.append('<input type="text" id="testmask" />');
  132. var testmask = document.getElementById("testmask");
  133. Inputmask("(78)|(79) 999 99 99").mask(testmask);
  134. testmask.focus();
  135. $("#testmask").Type("5");
  136. equal(document.getElementById("testmask").inputmask._valueGet(), "75 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  137. $("#testmask").remove();
  138. });
  139. test("(78)|(74) 999 99 99", function () {
  140. var $fixture = $("#qunit-fixture");
  141. $fixture.append('<input type="text" id="testmask" />');
  142. var testmask = document.getElementById("testmask");
  143. Inputmask("(78)|(74) 999 99 99").mask(testmask);
  144. testmask.focus();
  145. equal(document.getElementById("testmask").inputmask._valueGet(), "7_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  146. $("#testmask").remove();
  147. });
  148. test("5-9|(9a)-5 - keepstatic: false", function () {
  149. var $fixture = $("#qunit-fixture");
  150. $fixture.append('<input type="text" id="testmask" />');
  151. var testmask = document.getElementById("testmask");
  152. Inputmask({ mask: "5-9|(9a)-5", keepStatic: false }).mask(testmask);
  153. testmask.focus();
  154. equal(document.getElementById("testmask").inputmask._valueGet(), "5-_-5", "Result " + document.getElementById("testmask").inputmask._valueGet());
  155. $("#testmask").remove();
  156. });
  157. test("['(99) 9999-9999', '(99) 9-9999-9999'] - type 12123412345 - 3m0", function () {
  158. var $fixture = $("#qunit-fixture");
  159. $fixture.append('<input type="text" id="testmask" />');
  160. var testmask = document.getElementById("testmask");
  161. Inputmask({mask:['(99) 9999-9999', '(99) 9-9999-9999'], removeMaskOnSubmit:false, clearmaskonlostfocus:true}).mask(testmask);
  162. testmask.focus();
  163. $("#testmask").Type("12123412345")
  164. equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1-2341-2345", "Result " + document.getElementById("testmask").inputmask._valueGet());
  165. $("#testmask").remove();
  166. });
  167. test("['(99) 9999-9999', '(99) 9-9999-9999'] - type 12123412345 - backspace - 3m0", function () {
  168. var $fixture = $("#qunit-fixture");
  169. $fixture.append('<input type="text" id="testmask" />');
  170. var testmask = document.getElementById("testmask");
  171. Inputmask({mask:['(99) 9999-9999', '(99) 9-9999-9999'], removeMaskOnSubmit:false, clearmaskonlostfocus:true}).mask(testmask);
  172. testmask.focus();
  173. $("#testmask").Type("12123412345")
  174. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  175. equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1234-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  176. $("#testmask").remove();
  177. });
  178. });