tests_keepStatic.js 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368
  1. define([
  2. "qunit",
  3. "../dist/inputmask/dependencyLibs/inputmask.dependencyLib",
  4. "../dist/inputmask/inputmask.date.extensions",
  5. "../dist/inputmask/inputmask.extensions",
  6. "../dist/inputmask/inputmask.numeric.extensions",
  7. "../dist/inputmask/inputmask.phone.extensions",
  8. "../dist/inputmask/inputmask.regex.extensions",
  9. "prototypeExtensions",
  10. "simulator"
  11. ], function(qunit, $, Inputmask) {
  12. qunit.module("keepStatic mask switching");
  13. qunit.test("{ mask: [\"+55-99-9999-9999\", \"+55-99-99999-9999\", ], keepStatic: true }", function(assert) {
  14. var $fixture = $("#qunit-fixture");
  15. $fixture.append('<input type="text" id="testmask" />');
  16. var testmask = document.getElementById("testmask");
  17. Inputmask({
  18. mask: ["+55-99-9999-9999", "+55-99-99999-9999"],
  19. keepStatic: true
  20. }).mask(testmask);
  21. testmask.focus();
  22. $("#testmask").Type("12123451234");
  23. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  24. });
  25. qunit.test("{ mask: \"+55-99-9999|(99)-9999\", keepStatic: true } - type 12123451234", function(assert) {
  26. var $fixture = $("#qunit-fixture");
  27. $fixture.append('<input type="text" id="testmask" />');
  28. var testmask = document.getElementById("testmask");
  29. Inputmask({
  30. mask: "+55-99-9999|(99)-9999",
  31. keepStatic: true
  32. }).mask(testmask);
  33. testmask.focus();
  34. $("#testmask").Type("12123451234");
  35. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  36. });
  37. qunit.test("{ mask: ['(99) 9999-9999', '(99) 99999-9999'] } - val('1212341234')", function(assert) {
  38. var $fixture = $("#qunit-fixture");
  39. $fixture.append('<input type="text" id="testmask" />');
  40. var testmask = document.getElementById("testmask");
  41. Inputmask({
  42. mask: ['(99) 9999-9999', '(99) 99999-9999']
  43. }).mask(testmask);
  44. $("#testmask").val("1212341234");
  45. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1234-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  46. });
  47. qunit.test("{ mask: \"+55-99-9999|(99)-9999\", keepStatic: false } type 12123451234", function(assert) {
  48. var $fixture = $("#qunit-fixture");
  49. $fixture.append('<input type="text" id="testmask" />');
  50. var testmask = document.getElementById("testmask");
  51. Inputmask({
  52. mask: "+55-99-9999|(99)-9999",
  53. keepStatic: false
  54. }).mask(testmask);
  55. testmask.focus();
  56. $("#testmask").Type("12123451234");
  57. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-12345-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  58. });
  59. qunit.test("{ mask: [\"+55-99-9999-9999\", \"+55-99-99999-9999\", ], keepStatic: true } - type 12123451234 + backspace", function(assert) {
  60. var $fixture = $("#qunit-fixture");
  61. $fixture.append('<input type="text" id="testmask" />');
  62. var testmask = document.getElementById("testmask");
  63. Inputmask({
  64. mask: ["+55-99-9999-9999", "+55-99-99999-9999"],
  65. keepStatic: true
  66. }).mask(testmask);
  67. testmask.focus();
  68. $("#testmask").Type("12123451234");
  69. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  70. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "+55-12-1234-5123", "Result " + document.getElementById("testmask").inputmask._valueGet());
  71. });
  72. qunit.test("{ mask: [\"99-9999-99\",\"99-99999-99\"] } - type 12123412 + add 1 upfront", function(assert) {
  73. var $fixture = $("#qunit-fixture");
  74. $fixture.append('<input type="text" id="testmask" />');
  75. var testmask = document.getElementById("testmask");
  76. Inputmask({
  77. mask: ["99-9999-99", "99-99999-99"]
  78. }).mask(testmask);
  79. $("#testmask").Type("12123412");
  80. $.caret(testmask, 0);
  81. $("#testmask").Type("1");
  82. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "11-21234-12", "Result " + document.getElementById("testmask").inputmask._valueGet());
  83. });
  84. qunit.test("{ mask: [\"99-99999-9\",\"99-999999-9\"] } - type 121234561", function(assert) {
  85. var $fixture = $("#qunit-fixture");
  86. $fixture.append('<input type="text" id="testmask" />');
  87. var testmask = document.getElementById("testmask");
  88. Inputmask({
  89. mask: ["99-99999-9", "99-999999-9"]
  90. }).mask(testmask);
  91. $("#testmask").Type("121234561");
  92. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12-123456-1", "Result " + document.getElementById("testmask").inputmask._valueGet());
  93. });
  94. qunit.test("{ \"keepStatic\": true, greedy: false, mask: \"(99-9)|(99999)\" } - type 12345", function(assert) {
  95. var $fixture = $("#qunit-fixture");
  96. $fixture.append('<input type="text" id="testmask" />');
  97. var testmask = document.getElementById("testmask");
  98. Inputmask({
  99. "keepStatic": true,
  100. greedy: false,
  101. "mask": "(99-9)|(99999)"
  102. }).mask(testmask);
  103. $("#testmask").Type("12345");
  104. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12345", "Result " + document.getElementById("testmask").inputmask._valueGet());
  105. });
  106. qunit.test("7|8 999 99 99 - hiddenman", function(assert) {
  107. var $fixture = $("#qunit-fixture");
  108. $fixture.append('<input type="text" id="testmask" />');
  109. var testmask = document.getElementById("testmask");
  110. Inputmask("7|8 999 99 99").mask(testmask);
  111. testmask.focus();
  112. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  113. });
  114. qunit.test("7|8 999 99 99 type 7 - hiddenman", function(assert) {
  115. var $fixture = $("#qunit-fixture");
  116. $fixture.append('<input type="text" id="testmask" />');
  117. var testmask = document.getElementById("testmask");
  118. Inputmask("7|8 999 99 99").mask(testmask);
  119. $("#testmask").Type("7");
  120. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "7 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  121. });
  122. qunit.test("7|8 999 99 99 type 8 - hiddenman", function(assert) {
  123. var $fixture = $("#qunit-fixture");
  124. $fixture.append('<input type="text" id="testmask" />');
  125. var testmask = document.getElementById("testmask");
  126. Inputmask("7|8 999 99 99").mask(testmask);
  127. $("#testmask").Type("8");
  128. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "8 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  129. });
  130. qunit.test("(78)|(79) 999 99 99", function(assert) {
  131. var $fixture = $("#qunit-fixture");
  132. $fixture.append('<input type="text" id="testmask" />');
  133. var testmask = document.getElementById("testmask");
  134. Inputmask("(78)|(79) 999 99 99").mask(testmask);
  135. testmask.focus();
  136. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "7_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  137. });
  138. qunit.test("(78)|(79) 999 99 99 - type 5", function(assert) {
  139. var $fixture = $("#qunit-fixture");
  140. $fixture.append('<input type="text" id="testmask" />');
  141. var testmask = document.getElementById("testmask");
  142. Inputmask("(78)|(79) 999 99 99").mask(testmask);
  143. testmask.focus();
  144. $("#testmask").Type("5");
  145. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "75 ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  146. });
  147. qunit.test("(78)|(74) 999 99 99", function(assert) {
  148. var $fixture = $("#qunit-fixture");
  149. $fixture.append('<input type="text" id="testmask" />');
  150. var testmask = document.getElementById("testmask");
  151. Inputmask("(78)|(74) 999 99 99").mask(testmask);
  152. testmask.focus();
  153. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "7_ ___ __ __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  154. });
  155. qunit.test("5-9|(9a)-5 - keepstatic: false", function(assert) {
  156. var $fixture = $("#qunit-fixture");
  157. $fixture.append('<input type="text" id="testmask" />');
  158. var testmask = document.getElementById("testmask");
  159. Inputmask({
  160. mask: "5-9|(9a)-5",
  161. keepStatic: false
  162. }).mask(testmask);
  163. testmask.focus();
  164. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "5-_-5", "Result " + document.getElementById("testmask").inputmask._valueGet());
  165. });
  166. qunit.test("['(99) 9999-9999', '(99) 9-9999-9999'] - type 12123412345 - 3m0", function(assert) {
  167. var $fixture = $("#qunit-fixture");
  168. $fixture.append('<input type="text" id="testmask" />');
  169. var testmask = document.getElementById("testmask");
  170. Inputmask({
  171. mask: ['(99) 9999-9999', '(99) 9-9999-9999'],
  172. removeMaskOnSubmit: false,
  173. clearmaskonlostfocus: true
  174. }).mask(testmask);
  175. testmask.focus();
  176. $("#testmask").Type("12123412345")
  177. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1-2341-2345", "Result " + document.getElementById("testmask").inputmask._valueGet());
  178. });
  179. qunit.test("['(99) 9999-9999', '(99) 9-9999-9999'] - type 12123412345 - backspace - 3m0", function(assert) {
  180. var $fixture = $("#qunit-fixture");
  181. $fixture.append('<input type="text" id="testmask" />');
  182. var testmask = document.getElementById("testmask");
  183. Inputmask({
  184. mask: ['(99) 9999-9999', '(99) 9-9999-9999'],
  185. removeMaskOnSubmit: false,
  186. clearmaskonlostfocus: true
  187. }).mask(testmask);
  188. testmask.focus();
  189. $("#testmask").Type("12123412345")
  190. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  191. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "(12) 1234-1234", "Result " + document.getElementById("testmask").inputmask._valueGet());
  192. });
  193. qunit.test("(99 99)|(*****) keepStatic false - type 12 abc", function(assert) {
  194. var $fixture = $("#qunit-fixture");
  195. $fixture.append('<input type="text" id="testmask" />');
  196. var testmask = document.getElementById("testmask");
  197. Inputmask("(99 99)|(*****)", {
  198. keepStatic: false
  199. }).mask(testmask);
  200. $("#testmask").Type("12 abc");
  201. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12 __", "Result " + document.getElementById("testmask").inputmask._valueGet());
  202. });
  203. qunit.test("(99 99)|(*****) keepStatic false - type 12 123", function(assert) {
  204. var $fixture = $("#qunit-fixture");
  205. $fixture.append('<input type="text" id="testmask" />');
  206. var testmask = document.getElementById("testmask");
  207. Inputmask("(99 99)|(*****)", {
  208. keepStatic: false
  209. }).mask(testmask);
  210. $("#testmask").Type("12 123");
  211. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12 12", "Result " + document.getElementById("testmask").inputmask._valueGet());
  212. });
  213. qunit.test("(99 99)|(*****) keepStatic true - type 1212", function(assert) {
  214. var $fixture = $("#qunit-fixture");
  215. $fixture.append('<input type="text" id="testmask" />');
  216. var testmask = document.getElementById("testmask");
  217. Inputmask("(99 99)|(*****)", {
  218. keepStatic: true
  219. }).mask(testmask);
  220. $("#testmask").Type("1212");
  221. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12 12", "Result " + document.getElementById("testmask").inputmask._valueGet());
  222. });
  223. qunit.test("(99 99)|(*****) keepStatic true - type 12123", function(assert) {
  224. var $fixture = $("#qunit-fixture");
  225. $fixture.append('<input type="text" id="testmask" />');
  226. var testmask = document.getElementById("testmask");
  227. Inputmask("(99 99)|(*****)", {
  228. keepStatic: true
  229. }).mask(testmask);
  230. $("#testmask").Type("12123");
  231. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "12123", "Result " + document.getElementById("testmask").inputmask._valueGet());
  232. });
  233. qunit.test("(99 99)|(*****) keepStatic true - type abcde", function(assert) {
  234. var $fixture = $("#qunit-fixture");
  235. $fixture.append('<input type="text" id="testmask" />');
  236. var testmask = document.getElementById("testmask");
  237. Inputmask("(99 99)|(*****)", {
  238. keepStatic: true
  239. }).mask(testmask);
  240. $("#testmask").Type("abcde");
  241. assert.equal(document.getElementById("testmask").inputmask._valueGet(), "abcde", "Result " + document.getElementById("testmask").inputmask._valueGet());
  242. });
  243. qunit.test("[\"9+9\", \"(99)+99+99\"] keepStatic true - type 123 - ishytow", function(assert) {
  244. var $fixture = $("#qunit-fixture");
  245. $fixture.append('<input type="text" id="testmask" />');
  246. var testmask = document.getElementById("testmask");
  247. Inputmask(["9+9", "(99)+99+99"], {
  248. keepStatic: true
  249. }).mask(testmask);
  250. $("#testmask").Type("123");
  251. assert.equal(testmask.value, "(12)+3_+__", "Result " + testmask.value);
  252. });
  253. qunit.test("[\"9+9\", \"99+99\", \"(99)+99+99\"] keepStatic true - type 12345 - ishytow", function(assert) {
  254. var $fixture = $("#qunit-fixture");
  255. $fixture.append('<input type="text" id="testmask" />');
  256. var testmask = document.getElementById("testmask");
  257. Inputmask(["9+9", "99+99", "(99)+99+99"], {
  258. keepStatic: true
  259. }).mask(testmask);
  260. $("#testmask").Type("12345");
  261. assert.equal(testmask.value, "(12)+34+5_", "Result " + testmask.value);
  262. });
  263. qunit.test("[\"9+9\", \"99+99\", \"(99)+99+99\"] keepStatic true - type 1234 - ishytow", function(assert) {
  264. var $fixture = $("#qunit-fixture");
  265. $fixture.append('<input type="text" id="testmask" />');
  266. var testmask = document.getElementById("testmask");
  267. Inputmask(["9+9", "99+99", "(99)+99+99"], {
  268. keepStatic: true
  269. }).mask(testmask);
  270. $("#testmask").Type("1234");
  271. assert.equal(testmask.value, "12+34", "Result " + testmask.value);
  272. });
  273. qunit.test("[\"999-9999\", \"(999) 999-9999\", \"1-(999) 999-9999\"] - 999-9999 - carylewis", function(assert) {
  274. var $fixture = $("#qunit-fixture");
  275. $fixture.append('<input type="text" id="testmask" />');
  276. var testmask = document.getElementById("testmask");
  277. Inputmask(["999-9999", "(999) 999-9999", "1-(999) 999-9999"]).mask(testmask);
  278. $("#testmask").Type("1231234");
  279. assert.equal(testmask.value, "123-1234", "Result " + testmask.value);
  280. });
  281. qunit.test("[\"999-9999\", \"(999) 999-9999\", \"1-(999) 999-9999\"] - (999) 999-9999 - carylewis", function(assert) {
  282. var $fixture = $("#qunit-fixture");
  283. $fixture.append('<input type="text" id="testmask" />');
  284. var testmask = document.getElementById("testmask");
  285. Inputmask(["999-9999", "(999) 999-9999", "1-(999) 999-9999"]).mask(testmask);
  286. $("#testmask").Type("1231231234");
  287. assert.equal(testmask.value, "(123) 123-1234", "Result " + testmask.value);
  288. });
  289. qunit.test("[\"999-9999\", \"(999) 999-9999\", \"1-(999) 999-9999\"] - 1-(999) 999-9999 - carylewis", function(assert) {
  290. var $fixture = $("#qunit-fixture");
  291. $fixture.append('<input type="text" id="testmask" />');
  292. var testmask = document.getElementById("testmask");
  293. Inputmask(["999-9999", "(999) 999-9999", "1-(999) 999-9999"]).mask(testmask);
  294. $("#testmask").Type("11231231234");
  295. assert.equal(testmask.value, "1-(123) 123-1234", "Result " + testmask.value);
  296. });
  297. });