tests_paste.js 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309
  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("Paste value");
  14. asyncTest("inputmask(\"+7 (999) 999-99-99\") ~ paste \"+79114041112\"", function() {
  15. var $fixture = $("#qunit-fixture");
  16. $fixture.append('<input type="text" id="testmask" />');
  17. var testmask = document.getElementById("testmask");
  18. Inputmask("+7 (999) 999-99-99").mask(testmask);
  19. testmask.focus();
  20. $("#testmask").paste("+79114041112");
  21. setTimeout(function() {
  22. equal(testmask.value, "+7 (911) 404-11-12", "Result " + testmask.value);
  23. start();
  24. $("#testmask").remove();
  25. }, 0);
  26. });
  27. asyncTest("inputmask(\"+7 (999) 999-99-99\") ~ paste \"+7 (9114041112___)\"", function() {
  28. var $fixture = $("#qunit-fixture");
  29. $fixture.append('<input type="text" id="testmask" />');
  30. var testmask = document.getElementById("testmask");
  31. Inputmask("+7 (999) 999-99-99").mask(testmask);
  32. testmask.focus();
  33. $("#testmask").paste("+7 (9114041112___)");
  34. setTimeout(function() {
  35. equal(testmask.value, "+7 (911) 404-11-12", "Result " + testmask.value);
  36. start();
  37. $("#testmask").remove();
  38. }, 0);
  39. });
  40. asyncTest("inputmask(\"+7 (999) 999-99-99\") ~ paste \"0079114041112\" - monoblaine", function() {
  41. var $fixture = $("#qunit-fixture");
  42. $fixture.append('<input type="text" id="testmask" />');
  43. var testmask = document.getElementById("testmask");
  44. Inputmask("+7 (999) 999-99-99", {
  45. onBeforePaste: function(pastedValue) {
  46. //just simplistic for the test ;-)
  47. var strippedValue = pastedValue.substr(3);
  48. return strippedValue;
  49. }
  50. }).mask(testmask);
  51. testmask.focus();
  52. $("#testmask").paste("0079114041112");
  53. setTimeout(function() {
  54. equal(testmask.value, "+7 (911) 404-11-12", "Result " + testmask.value);
  55. start();
  56. $("#testmask").remove();
  57. }, 0);
  58. });
  59. asyncTest("inputmask(\"+32(999)99-99-99\", { nojumps: true, nojumpsThreshold: 4 }) ~ paste \"+32(123)12-12-12\"", function() {
  60. var $fixture = $("#qunit-fixture");
  61. $fixture.append('<input type="text" id="testmask" />');
  62. var testmask = document.getElementById("testmask");
  63. Inputmask("+32(999)99-99-99", {
  64. nojumps: true,
  65. nojumpsThreshold: 4
  66. }).mask(testmask);
  67. testmask.focus();
  68. $("#testmask").paste("+32(123)12-12-12");
  69. setTimeout(function() {
  70. equal(testmask.value, "+32(123)12-12-12", "Result " + testmask.value);
  71. start();
  72. $("#testmask").remove();
  73. }, 0);
  74. });
  75. asyncTest("inputmask(\"+32(999)99-99-99\", { nojumps: true, nojumpsThreshold: 4 }) ~ paste \"(123)12-12-12\"", function() {
  76. var $fixture = $("#qunit-fixture");
  77. $fixture.append('<input type="text" id="testmask" />');
  78. var testmask = document.getElementById("testmask");
  79. Inputmask("+32(999)99-99-99", {
  80. nojumps: true,
  81. nojumpsThreshold: 4
  82. }).mask(testmask);
  83. testmask.focus();
  84. $("#testmask").paste("(123)12-12-12");
  85. setTimeout(function() {
  86. equal(testmask.value, "+32(123)12-12-12", "Result " + testmask.value);
  87. start();
  88. $("#testmask").remove();
  89. }, 0);
  90. });
  91. asyncTest("inputmask(\"+32(999)99-99-99\", { nojumps: true, nojumpsThreshold: 4 }) ~ paste \"+32473890428\"", function() {
  92. var $fixture = $("#qunit-fixture");
  93. $fixture.append('<input type="text" id="testmask" />');
  94. var testmask = document.getElementById("testmask");
  95. Inputmask("+32(999)99-99-99", {
  96. nojumps: true,
  97. nojumpsThreshold: 4
  98. }).mask(testmask);
  99. testmask.focus();
  100. $("#testmask").paste("+32473890428");
  101. setTimeout(function() {
  102. equal(testmask.value, "+32(473)89-04-28", "Result " + testmask.value);
  103. start();
  104. $("#testmask").remove();
  105. }, 0);
  106. });
  107. asyncTest("inputmask(\"+31 9999999999\") ~ paste \"3112345678\" - jason16v", function() {
  108. var $fixture = $("#qunit-fixture");
  109. $fixture.append('<input type="text" id="testmask" />');
  110. var testmask = document.getElementById("testmask");
  111. Inputmask("+31 9999999999").mask(testmask);
  112. testmask.focus();
  113. $("#testmask").paste("3112345678");
  114. setTimeout(function() {
  115. equal(testmask.value, "+31 3112345678", "Result " + testmask.value);
  116. start();
  117. $("#testmask").remove();
  118. }, 0);
  119. });
  120. asyncTest("inputmask(\"+31 9999999999\") ~ paste \"+3112345678\" - jason16v", function() {
  121. var $fixture = $("#qunit-fixture");
  122. $fixture.append('<input type="text" id="testmask" />');
  123. var testmask = document.getElementById("testmask");
  124. Inputmask("+31 9999999999").mask(testmask);
  125. testmask.focus();
  126. $("#testmask").paste("+3112345678");
  127. setTimeout(function() {
  128. equal(testmask.value, "+31 12345678__", "Result " + testmask.value);
  129. start();
  130. $("#testmask").remove();
  131. }, 0);
  132. });
  133. asyncTest("99.999.999/9999-99 numericInput ~ paste __-____/..__79100085302751__-____/..__ - imbelo", function() {
  134. var $fixture = $("#qunit-fixture");
  135. $fixture.append('<input type="text" id="testmask" />');
  136. var testmask = document.getElementById("testmask");
  137. Inputmask({
  138. "mask": "99.999.999/9999-99",
  139. "numericInput": true
  140. }).mask(testmask);
  141. testmask.focus();
  142. $("#testmask").paste("__-____/..__79100085302751__-____/..__");
  143. setTimeout(function() {
  144. equal(testmask.value, "79.100.085/3027-51", "Result " + testmask.value);
  145. start();
  146. $("#testmask").remove();
  147. }, 0);
  148. });
  149. asyncTest("currency ~ $123.22 - sjk07", function() {
  150. var $fixture = $("#qunit-fixture");
  151. $fixture.append('<input type="text" id="testmask" />');
  152. var testmask = document.getElementById("testmask");
  153. Inputmask('currency').mask(testmask);
  154. testmask.focus();
  155. $("#testmask").paste("$123.22");
  156. setTimeout(function() {
  157. equal(testmask.value, "$ 123.22", "Result " + testmask.value);
  158. start();
  159. $("#testmask").remove();
  160. }, 0);
  161. });
  162. asyncTest("currency ~ $-123.22 - sjk07", function() {
  163. var $fixture = $("#qunit-fixture");
  164. $fixture.append('<input type="text" id="testmask" />');
  165. var testmask = document.getElementById("testmask");
  166. Inputmask('currency').mask(testmask);
  167. testmask.focus();
  168. $("#testmask").paste("$-123.22");
  169. setTimeout(function() {
  170. equal(testmask.value, "$ -123.22", "Result " + testmask.value);
  171. start();
  172. $("#testmask").remove();
  173. }, 0);
  174. });
  175. asyncTest("currency ~ 1000.00 - sjk07", function() {
  176. var $fixture = $("#qunit-fixture");
  177. $fixture.append('<input type="text" id="testmask" />');
  178. var testmask = document.getElementById("testmask");
  179. Inputmask('currency').mask(testmask);
  180. testmask.focus();
  181. $("#testmask").paste("1000.00");
  182. setTimeout(function() {
  183. equal(testmask.value, "$ 1,000.00", "Result " + testmask.value);
  184. start();
  185. $("#testmask").remove();
  186. }, 0);
  187. });
  188. asyncTest("currency ~ -1000.00 - sjk07", function() {
  189. var $fixture = $("#qunit-fixture");
  190. $fixture.append('<input type="text" id="testmask" />');
  191. var testmask = document.getElementById("testmask");
  192. Inputmask('currency').mask(testmask);
  193. testmask.focus();
  194. $("#testmask").paste("-1000.00");
  195. setTimeout(function() {
  196. equal(testmask.value, "$ -1,000.00", "Result " + testmask.value);
  197. start();
  198. $("#testmask").remove();
  199. }, 0);
  200. });
  201. asyncTest("currency ~ $1000.00 - sjk07", function() {
  202. var $fixture = $("#qunit-fixture");
  203. $fixture.append('<input type="text" id="testmask" />');
  204. var testmask = document.getElementById("testmask");
  205. Inputmask('currency').mask(testmask);
  206. testmask.focus();
  207. $("#testmask").paste("$1000.00");
  208. setTimeout(function() {
  209. equal(testmask.value, "$ 1,000.00", "Result " + testmask.value);
  210. start();
  211. $("#testmask").remove();
  212. }, 0);
  213. });
  214. asyncTest("currency ~ $-1000.00 - sjk07", function() {
  215. var $fixture = $("#qunit-fixture");
  216. $fixture.append('<input type="text" id="testmask" />');
  217. var testmask = document.getElementById("testmask");
  218. Inputmask('currency').mask(testmask);
  219. testmask.focus();
  220. $("#testmask").paste("$-1000.00");
  221. setTimeout(function() {
  222. equal(testmask.value, "$ -1,000.00", "Result " + testmask.value);
  223. start();
  224. $("#testmask").remove();
  225. }, 0);
  226. });
  227. asyncTest("currency ~ 000.02 - sjk07", function() {
  228. var $fixture = $("#qunit-fixture");
  229. $fixture.append('<input type="text" id="testmask" />');
  230. var testmask = document.getElementById("testmask");
  231. Inputmask('currency').mask(testmask);
  232. testmask.focus();
  233. $("#testmask").paste("000.02");
  234. setTimeout(function() {
  235. equal(testmask.value, "$ 0.02", "Result " + testmask.value);
  236. start();
  237. $("#testmask").remove();
  238. }, 0);
  239. });
  240. asyncTest("02.999.999 ~ paste 02.024.900 - tnavarra", function() {
  241. var $fixture = $("#qunit-fixture");
  242. $fixture.append('<input type="text" id="testmask" />');
  243. var testmask = document.getElementById("testmask");
  244. Inputmask("02.999.999").mask(testmask);
  245. testmask.focus();
  246. $("#testmask").paste("02.024.900");
  247. setTimeout(function() {
  248. equal(testmask.value, "02.024.900", "Result " + testmask.value);
  249. start();
  250. $("#testmask").remove();
  251. }, 0);
  252. });
  253. asyncTest("R9999999999 ~ paste 1234567890 - s-a", function() {
  254. var $fixture = $("#qunit-fixture");
  255. $fixture.append('<input type="text" id="testmask" />');
  256. var testmask = document.getElementById("testmask");
  257. Inputmask("R9999999999", {
  258. "placeholder": "0",
  259. "showMaskOnFocus": false,
  260. "numericInput": true
  261. }).mask(testmask);
  262. $("#testmask").trigger("click");
  263. $("#testmask").paste("1234567890");
  264. setTimeout(function() {
  265. equal(testmask.value, "R1234567890", "Result " + testmask.value);
  266. start();
  267. $("#testmask").remove();
  268. }, 0);
  269. });
  270. });