tests_numeric.js 44 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309
  1. module("Numeric.Extensions");
  2. test("€ Currency precision 2", function () {
  3. var $fixture = $("#qunit-fixture");
  4. $fixture.append('<input type="text" id="testmask" />');
  5. $("#testmask").inputmask("numeric", {
  6. groupSeparator: ",",
  7. placeholder: "0",
  8. autoGroup: true,
  9. digits: 2,
  10. digitsOptional: false,
  11. prefix: "€ "
  12. });
  13. $("#testmask")[0].focus();
  14. $("#testmask").Type("1234");
  15. equal($("#testmask").val(), "€ 1,234.00", "Result " + $("#testmask").val());
  16. $("#testmask").remove();
  17. });
  18. test("integer type 124 correct to 1234", function () {
  19. var $fixture = $("#qunit-fixture");
  20. $fixture.append('<input type="text" id="testmask" />');
  21. $("#testmask").inputmask("numeric", {
  22. groupSeparator: ",",
  23. autoGroup: true
  24. });
  25. $("#testmask")[0].focus();
  26. $("#testmask").Type("124");
  27. $.caret($("#testmask")[0], 2);
  28. $("#testmask").Type("3");
  29. equal($("#testmask").val(), "1,234", "Result " + $("#testmask").val());
  30. $("#testmask").remove();
  31. });
  32. test("numeric type 00000 - Webunity", function () {
  33. var $fixture = $("#qunit-fixture");
  34. $fixture.append('<input type="text" id="testmask" />');
  35. $("#testmask").inputmask("numeric", {
  36. groupSeparator: ",",
  37. autoGroup: true,
  38. integerDigits: 9
  39. });
  40. $("#testmask")[0].focus();
  41. $("#testmask").Type("00000");
  42. equal($("#testmask").val(), "0", "Result " + $("#testmask").val());
  43. $("#testmask").remove();
  44. });
  45. test("numeric -placeholder 0 type 00000 - Webunity", function () {
  46. var $fixture = $("#qunit-fixture");
  47. $fixture.append('<input type="text" id="testmask" />');
  48. $("#testmask").inputmask("numeric", {
  49. groupSeparator: ",",
  50. autoGroup: true,
  51. placeholder: "0"
  52. });
  53. $("#testmask")[0].focus();
  54. $("#testmask").Type("00000");
  55. equal($("#testmask")[0]._valueGet(), "0", "Result " + $("#testmask").val());
  56. $("#testmask").remove();
  57. });
  58. test("numeric placeholder 0 prefix € type 0.123 - Webunity", function () {
  59. var $fixture = $("#qunit-fixture");
  60. $fixture.append('<input type="text" id="testmask" />');
  61. $("#testmask").inputmask("numeric", {
  62. groupSeparator: ",",
  63. autoGroup: true,
  64. placeholder: "0",
  65. prefix: "€ "
  66. });
  67. $("#testmask")[0].focus();
  68. $("#testmask").Type("0.123");
  69. equal($("#testmask").val(), "€ 0.123", "Result " + $("#testmask").val());
  70. $("#testmask").remove();
  71. });
  72. test("numeric placeholder 0 prefix € type 0.123 - backspace - Webunity", function () {
  73. var $fixture = $("#qunit-fixture");
  74. $fixture.append('<input type="text" id="testmask" />');
  75. $("#testmask").inputmask("numeric", {
  76. groupSeparator: ",",
  77. autoGroup: true,
  78. placeholder: "0",
  79. prefix: "€ "
  80. });
  81. $("#testmask")[0].focus();
  82. $("#testmask").Type("0.123");
  83. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  84. equal($("#testmask").val(), "€ 0.12", "Result " + $("#testmask").val());
  85. $("#testmask").remove();
  86. });
  87. test("numeric placeholder 0 prefix € type 0.123 + add 1 in front - Webunity", function () {
  88. var $fixture = $("#qunit-fixture");
  89. $fixture.append('<input type="text" id="testmask" />');
  90. $("#testmask").inputmask("numeric", {
  91. groupSeparator: ",",
  92. autoGroup: true,
  93. placeholder: "0",
  94. prefix: "€ "
  95. });
  96. $("#testmask")[0].focus();
  97. $("#testmask").Type("0.123");
  98. $.caret($("#testmask")[0], 2);
  99. $("#testmask").Type("1");
  100. equal($("#testmask").val(), "€ 10.123", "Result " + $("#testmask").val());
  101. $("#testmask").remove();
  102. });
  103. test("numeric placeholder 0 autoGroup: false prefix € type 0.123 + add 123 in front - Webunity", function () {
  104. var $fixture = $("#qunit-fixture");
  105. $fixture.append('<input type="text" id="testmask" />');
  106. $("#testmask").inputmask("numeric", {
  107. groupSeparator: ",",
  108. autoGroup: false,
  109. placeholder: "0",
  110. prefix: "€ "
  111. });
  112. $("#testmask")[0].focus();
  113. $("#testmask").Type("0.123");
  114. $.caret($("#testmask")[0], 2);
  115. $("#testmask").Type("123");
  116. equal($("#testmask").val(), "€ 1230.123", "Result " + $("#testmask").val());
  117. $("#testmask").remove();
  118. });
  119. test("numeric placeholder 0 autoGroup: true prefix € type 0.123 + add 123 in front - Webunity", function () {
  120. var $fixture = $("#qunit-fixture");
  121. $fixture.append('<input type="text" id="testmask" />');
  122. $("#testmask").inputmask("numeric", {
  123. groupSeparator: ",",
  124. autoGroup: true,
  125. placeholder: "0",
  126. prefix: "€ "
  127. });
  128. $("#testmask")[0].focus();
  129. $("#testmask").Type("0.123");
  130. $.caret($("#testmask")[0], 2);
  131. $("#testmask").Type("123");
  132. equal($("#testmask").val(), "€ 1,230.123", "Result " + $("#testmask").val());
  133. $("#testmask").remove();
  134. });
  135. test("integer alias with integerDigits 9 & autogroup - type 123456789 - gigermocas", function () {
  136. var $fixture = $("#qunit-fixture");
  137. $fixture.append('<input type="text" id="testmask" />');
  138. $("#testmask").inputmask("integer", {
  139. groupSeparator: ",",
  140. autoGroup: true,
  141. integerDigits: 9
  142. });
  143. $("#testmask")[0].focus();
  144. $("#testmask").Type("123456789");
  145. equal($("#testmask").val(), "123,456,789", "Result " + $("#testmask").val());
  146. $("#testmask").remove();
  147. });
  148. test("integer alias with integerDigits 9 & autogroup - type 1234567890123456789 - gigermocas", function () {
  149. var $fixture = $("#qunit-fixture");
  150. $fixture.append('<input type="text" id="testmask" />');
  151. $("#testmask").inputmask("integer", {
  152. groupSeparator: ",",
  153. autoGroup: true,
  154. integerDigits: 9
  155. });
  156. $("#testmask")[0].focus();
  157. $("#testmask").Type("1234567890123456789");
  158. equal($("#testmask").val(), "123,456,789", "Result " + $("#testmask").val());
  159. $("#testmask").remove();
  160. });
  161. test("integer alias with integerDigits 4 & autogroup - type 1234567890123456789 - gigermocas", function () {
  162. var $fixture = $("#qunit-fixture");
  163. $fixture.append('<input type="text" id="testmask" />');
  164. $("#testmask").inputmask("integer", {
  165. groupSeparator: ",",
  166. autoGroup: true,
  167. integerDigits: 4
  168. });
  169. $("#testmask")[0].focus();
  170. $("#testmask").Type("1234567890123456789");
  171. equal($("#testmask").val(), "1,234", "Result " + $("#testmask").val());
  172. $("#testmask").remove();
  173. });
  174. test("decimal alias with integerDigits 9 & autogroup - type 123456789 - gigermocas", function () {
  175. var $fixture = $("#qunit-fixture");
  176. $fixture.append('<input type="text" id="testmask" />');
  177. $("#testmask").inputmask("decimal", {
  178. groupSeparator: ",",
  179. autoGroup: true,
  180. integerDigits: 9
  181. });
  182. $("#testmask")[0].focus();
  183. $("#testmask").Type("123456789");
  184. equal($("#testmask").val(), "123,456,789", "Result " + $("#testmask").val());
  185. $("#testmask").remove();
  186. });
  187. test("decimal alias with integerDigits 4 & autogroup - type 1234 - gigermocas", function () {
  188. var $fixture = $("#qunit-fixture");
  189. $fixture.append('<input type="text" id="testmask" />');
  190. $("#testmask").inputmask("decimal", {
  191. groupSeparator: ",",
  192. autoGroup: true,
  193. integerDigits: 4
  194. });
  195. $("#testmask")[0].focus();
  196. $("#testmask").Type("1234");
  197. equal($("#testmask").val(), "1,234", "Result " + $("#testmask").val());
  198. $("#testmask").remove();
  199. });
  200. test("numeric alias with allowMinus:false type=text - vijjj", function () {
  201. var $fixture = $("#qunit-fixture");
  202. $fixture.append('<input type="text" id="testmask" />');
  203. $("#testmask").inputmask("numeric", {
  204. radixPoint: ".",
  205. integerDigits: 6,
  206. allowMinus: false
  207. });
  208. $("#testmask")[0].focus();
  209. $("#testmask").Type("123456");
  210. $.caret($("#testmask"), 0);
  211. $("#testmask").SendKey("-");
  212. equal($("#testmask").val(), "123456", "Result " + $("#testmask").val());
  213. $("#testmask").remove();
  214. });
  215. test("numeric alias with allowMinus:false type=number - mask not applied - MartinVerges", function () {
  216. var $fixture = $("#qunit-fixture");
  217. $fixture.append('<input type="number" id="testmask" />');
  218. $("#testmask").inputmask("numeric", {
  219. radixPoint: ".",
  220. integerDigits: 6,
  221. allowMinus: false
  222. });
  223. $("#testmask")[0].focus();
  224. $("#testmask").Type("123456");
  225. $("#testmask").SendKey("-");
  226. //IE7 does not know type=number and treats as type=text
  227. ok($("#testmask").val() == "" || $("#testmask").val() == "123456", "Result " + $("#testmask").val());
  228. $("#testmask").remove();
  229. });
  230. test("inputmask(\"numeric\", { prefix: \"€ \" }\") - input 12345.12", function () {
  231. var $fixture = $("#qunit-fixture");
  232. $fixture.append('<input type="text" id="testmask" />');
  233. $("#testmask").inputmask("numeric", { prefix: "€ " });
  234. $("#testmask")[0].focus();
  235. $("#testmask").Type("12345.12");
  236. equal($("#testmask").val(), "€ 12345.12", "Result " + $("#testmask").val());
  237. $("#testmask").remove();
  238. });
  239. test("inputmask(\"decimal\", { autoGroup: true, groupSeparator: \",\" }\") - input 12345.123", function () {
  240. var $fixture = $("#qunit-fixture");
  241. $fixture.append('<input type="text" id="testmask" />');
  242. $("#testmask").inputmask("decimal", { autoGroup: true, groupSeparator: "," });
  243. $("#testmask")[0].focus();
  244. $("#testmask").SendKey("1");
  245. $("#testmask").SendKey("2");
  246. $("#testmask").SendKey("3");
  247. $("#testmask").SendKey("4");
  248. $("#testmask").SendKey("5");
  249. $("#testmask").SendKey(".");
  250. $("#testmask").SendKey("1");
  251. $("#testmask").SendKey("2");
  252. $("#testmask").SendKey("3");
  253. equal($("#testmask").val(), "12,345.123", "Result " + $("#testmask").val());
  254. $("#testmask").remove();
  255. });
  256. asyncTest("inputmask(\"decimal\", { autoGroup: true, groupSeparator: \",\", decimalProtect: true }\") - input 12345.123 + remove .123", function () {
  257. var $fixture = $("#qunit-fixture");
  258. $fixture.append('<input type="text" id="testmask" />');
  259. $("#testmask").inputmask("decimal", { autoGroup: true, groupSeparator: ",", decimalProtect: true });
  260. $("#testmask")[0].focus();
  261. $("#testmask").Type("12345.123");
  262. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  263. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  264. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  265. $("#testmask").blur();
  266. setTimeout(function(){
  267. start();
  268. equal($("#testmask").val(), "12,345", "Result " + $("#testmask").val());
  269. //$("#testmask").remove();
  270. }, 0);
  271. });
  272. test("inputmask(\"decimal\", { autoGroup: true, groupSeparator: \",\" }\") - input 12345.123 + replace .123 => .789", function () {
  273. var $fixture = $("#qunit-fixture");
  274. $fixture.append('<input type="text" id="testmask" />');
  275. $("#testmask").inputmask("decimal", { autoGroup: true, groupSeparator: "," });
  276. $("#testmask")[0].focus();
  277. $("#testmask").Type("12345.123");
  278. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  279. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  280. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  281. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  282. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  283. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  284. $("#testmask").Type(".789");
  285. equal($("#testmask").val(), "12,345.789", "Result " + $("#testmask").val());
  286. $("#testmask").remove();
  287. });
  288. test("inputmask(\"decimal\", { autoGroup: true, groupSeparator: \",\" }\") - input 12345.123 + replace .123 => .789", function () {
  289. var $fixture = $("#qunit-fixture");
  290. $fixture.append('<input type="text" id="testmask" />');
  291. $("#testmask").inputmask("decimal", { autoGroup: true, groupSeparator: "," });
  292. $("#testmask")[0].focus();
  293. $("#testmask").Type("12345.123");
  294. //$("#testmask").click();
  295. $.caret($("#testmask"), 6, 10);
  296. $("#testmask").Type(".789");
  297. equal($("#testmask").val(), "12,345.789", "Result " + $("#testmask").val());
  298. $("#testmask").remove();
  299. });
  300. test("inputmask(\"decimal\", { autoGroup: false, groupSeparator: \",\", decimalProtect: true }\") - input 12345.123 + remove .123", function () {
  301. var $fixture = $("#qunit-fixture");
  302. $fixture.append('<input type="text" id="testmask" />');
  303. $("#testmask").inputmask("decimal", { autoGroup: false, groupSeparator: ",", decimalProtect: true });
  304. $("#testmask")[0].focus();
  305. $("#testmask").Type("12345.123");
  306. //$("#testmask").click();
  307. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  308. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  309. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  310. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  311. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  312. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  313. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  314. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  315. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  316. $("#testmask").remove();
  317. });
  318. test("inputmask(\"decimal\", { autoGroup: false, groupSeparator: \",\", decimalProtect: false }\") - input 12345.123 + remove .123", function () {
  319. var $fixture = $("#qunit-fixture");
  320. $fixture.append('<input type="text" id="testmask" />');
  321. $("#testmask").inputmask("decimal", { autoGroup: false, groupSeparator: ",", decimalProtect: false });
  322. $("#testmask")[0].focus();
  323. $("#testmask").Type("12345.123");
  324. //$("#testmask").click();
  325. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  326. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  327. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  328. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  329. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  330. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  331. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  332. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  333. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  334. $("#testmask").remove();
  335. });
  336. test("inputmask(\"decimal\", { autoGroup: false, groupSeparator: \",\", decimalProtect: true }\") - input 12345.123 + replace .123 => .789", function () {
  337. var $fixture = $("#qunit-fixture");
  338. $fixture.append('<input type="text" id="testmask" />');
  339. $("#testmask").inputmask("decimal", { autoGroup: false, groupSeparator: ",", decimalProtect: true });
  340. $("#testmask")[0].focus();
  341. $("#testmask").Type("12345.123");
  342. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  343. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  344. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  345. $("#testmask").SendKey($.inputmask.keyCode.LEFT);
  346. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  347. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  348. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  349. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  350. $("#testmask").Type(".789");
  351. equal($("#testmask").val(), "12345.789", "Result " + $("#testmask").val());
  352. $("#testmask").remove();
  353. });
  354. test("inputmask(\"decimal\") - maxlength 10", function () {
  355. var $fixture = $("#qunit-fixture");
  356. $fixture.append('<input type="text" id="testmask" maxlength="10" />');
  357. $("#testmask").inputmask("decimal");
  358. $("#testmask")[0].focus();
  359. $("#testmask").Type("123456789012345");
  360. equal($("#testmask").val(), "1234567890", "Result " + $("#testmask").val());
  361. $("#testmask").remove();
  362. });
  363. test("inputmask(\"decimal, { repeat: 15 }\") - maxlength 10", function () {
  364. var $fixture = $("#qunit-fixture");
  365. $fixture.append('<input type="text" id="testmask" maxlength="10" />');
  366. $("#testmask").inputmask("decimal", { repeat: 15 });
  367. $("#testmask")[0].focus();
  368. $("#testmask").Type("123456789012345");
  369. equal($("#testmask").val(), "1234567890", "Result " + $("#testmask").val());
  370. $("#testmask").remove();
  371. });
  372. test("inputmask(\"decimal, { repeat: 5, decimalProtect: true }\") - maxlength 10", function () {
  373. var $fixture = $("#qunit-fixture");
  374. $fixture.append('<input type="text" id="testmask" maxlength="10" />');
  375. $("#testmask").inputmask("decimal", { repeat: 5, decimalProtect: true });
  376. $("#testmask")[0].focus();
  377. $("#testmask").Type("123456789012345");
  378. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  379. $("#testmask").remove();
  380. });
  381. test("inputmask(\"decimal, { repeat: 5, decimalProtect: false }\") - maxlength 10", function () {
  382. var $fixture = $("#qunit-fixture");
  383. $fixture.append('<input type="text" id="testmask" maxlength="10" />');
  384. $("#testmask").inputmask("decimal", { repeat: 5, decimalProtect: false });
  385. $("#testmask")[0].focus();
  386. $("#testmask").Type("123456789012345");
  387. equal($("#testmask").val(), "12345.6789", "Result " + $("#testmask").val());
  388. $("#testmask").remove();
  389. });
  390. test("inputmask(\"decimal\")", function () {
  391. var $fixture = $("#qunit-fixture");
  392. $fixture.append('<input type="text" id="testmask" />');
  393. $("#testmask").inputmask("decimal");
  394. $("#testmask")[0].focus();
  395. $("#testmask").Type("1234567890");
  396. $.caret($("#testmask"), 0, 10);
  397. $("#testmask").Type("12345");
  398. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  399. $("#testmask").remove();
  400. });
  401. test("inputmask(\"decimal\") - value=\"1234567890\"", function () {
  402. var $fixture = $("#qunit-fixture");
  403. $fixture.append('<input type="text" id="testmask" value="1234567890" />');
  404. $("#testmask").inputmask("decimal");
  405. $("#testmask")[0].focus();
  406. $.caret($("#testmask"), 0, 10);
  407. $("#testmask").Type("12345");
  408. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  409. $("#testmask").remove();
  410. });
  411. test("inputmask(\"decimal\")", function () {
  412. var $fixture = $("#qunit-fixture");
  413. $fixture.append('<input type="text" id="testmask" />');
  414. $("#testmask").inputmask("decimal");
  415. $("#testmask")[0].focus();
  416. $("#testmask").Type("1234567890");
  417. $.caret($("#testmask"), 3, 5);
  418. $("#testmask").SendKey("0");
  419. equal($("#testmask").val(), "123067890", "Result " + $("#testmask").val());
  420. $("#testmask").remove();
  421. });
  422. test("inputmask(\"decimal\") - value=\"1234567890\"", function () {
  423. var $fixture = $("#qunit-fixture");
  424. $fixture.append('<input type="text" id="testmask" value="1234567890" />');
  425. $("#testmask").inputmask("decimal");
  426. $("#testmask")[0].focus();
  427. $.caret($("#testmask"), 3, 5);
  428. $("#testmask").SendKey("0");
  429. equal($("#testmask").val(), "123067890", "Result " + $("#testmask").val());
  430. $("#testmask").remove();
  431. });
  432. test("inputmask(\"decimal\") - value=\"123.45\" Replace last integer", function () {
  433. var $fixture = $("#qunit-fixture");
  434. $fixture.append('<input type="text" id="testmask" />');
  435. $("#testmask").inputmask("decimal", { digits: 2 });
  436. $("#testmask")[0].focus();
  437. $("#testmask").Type("123.45");
  438. $.caret($("#testmask"), 2, 3);
  439. $("#testmask").SendKey("7");
  440. equal($("#testmask").val(), "127.45", "Result " + $("#testmask").val());
  441. $("#testmask").remove();
  442. });
  443. test("inputmask(\"decimal\", { digits: 2 }) - value=\"123\" - RomeroMsk", function () {
  444. var $fixture = $("#qunit-fixture");
  445. $fixture.append('<input type="text" id="testmask" />');
  446. $("#testmask").inputmask("decimal", { digits: 2 });
  447. $("#testmask")[0].focus();
  448. $("#testmask").Type("123");
  449. $.caret($("#testmask"), 0, 3);
  450. $("#testmask").SendKey(",,..");
  451. $("#testmask").SendKey($.inputmask.keyCode.RIGHT);
  452. $("#testmask").SendKey($.inputmask.keyCode.RIGHT); //needed in test
  453. $("#testmask").SendKey($.inputmask.keyCode.RIGHT); //needed in test
  454. $("#testmask").Type("45");
  455. equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
  456. $("#testmask").remove();
  457. });
  458. test("inputmask - Multiple inputs masked, Integer mask doesn't allow typing - #402 - albatrocity", function () {
  459. var $fixture = $("#qunit-fixture");
  460. $fixture.append('<input type="text" id="testmask" />');
  461. $fixture.append('<input type="text" id="testmask2" />');
  462. $("#testmask").inputmask("integer", {
  463. autoGroup: true,
  464. groupSeparator: ",",
  465. groupSize: 3
  466. });
  467. $("#testmask2").inputmask("(999)-999-9999");
  468. $("#testmask")[0].focus();
  469. $("#testmask").Type("12345");
  470. equal($("#testmask").val(), "12,345", "Result " + $("#testmask").val());
  471. $("#testmask").remove();
  472. $("#testmask2").remove();
  473. });
  474. test("decimal alias with groupseparator delete - YoussefTaghlabi", function () {
  475. var $fixture = $("#qunit-fixture");
  476. $fixture.append('<input type="text" id="testmask" />');
  477. $("#testmask").inputmask("decimal", {
  478. radixPoint: ".",
  479. groupSeparator: ",",
  480. groupSize: 3,
  481. digits: 2,
  482. autoGroup: true,
  483. allowPlus: false,
  484. allowMinus: true
  485. });
  486. $("#testmask")[0].focus();
  487. $("#testmask").Type("1234567");
  488. $.caret($("#testmask"), 0);
  489. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  490. equal($("#testmask").val(), "234,567", "Result " + $("#testmask").val());
  491. $("#testmask").remove();
  492. });
  493. test("decimal alias with groupseparator backspace - YoussefTaghlabi", function () {
  494. var $fixture = $("#qunit-fixture");
  495. $fixture.append('<input type="text" id="testmask" />');
  496. $("#testmask").inputmask("decimal", {
  497. radixPoint: ".",
  498. groupSeparator: ",",
  499. groupSize: 3,
  500. digits: 2,
  501. autoGroup: true,
  502. allowPlus: false,
  503. allowMinus: true
  504. });
  505. $("#testmask")[0].focus();
  506. $("#testmask").Type("1234567");
  507. $.caret($("#testmask"), 1);
  508. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  509. equal($("#testmask").val(), "234,567", "Result " + $("#testmask").val());
  510. $("#testmask").remove();
  511. });
  512. test("decimal alias with plus or minus & autogroup - type -123456 - YoussefTaghlabi", function () {
  513. var $fixture = $("#qunit-fixture");
  514. $fixture.append('<input type="text" id="testmask" />');
  515. $("#testmask").inputmask("decimal", {
  516. radixPoint: ".",
  517. groupSeparator: ",",
  518. groupSize: 3,
  519. digits: 2,
  520. autoGroup: true,
  521. allowPlus: true,
  522. allowMinus: true
  523. });
  524. $("#testmask")[0].focus();
  525. $("#testmask").Type("-123456");
  526. equal($("#testmask").val(), "-123,456", "Result " + $("#testmask").val());
  527. $("#testmask").remove();
  528. });
  529. test("decimal alias with plus or minus & autogroup - type 123465 - - YoussefTaghlabi", function () {
  530. var $fixture = $("#qunit-fixture");
  531. $fixture.append('<input type="text" id="testmask" />');
  532. $("#testmask").inputmask("decimal", {
  533. radixPoint: ".",
  534. groupSeparator: ",",
  535. groupSize: 3,
  536. digits: 2,
  537. autoGroup: true,
  538. allowPlus: true,
  539. allowMinus: true
  540. });
  541. $("#testmask")[0].focus();
  542. $("#testmask").Type("123456");
  543. $.caret($("#testmask"), 0);
  544. $("#testmask").SendKey("-");
  545. equal($("#testmask").val(), "-123,456", "Result " + $("#testmask").val());
  546. $("#testmask").remove();
  547. });
  548. test("decimal alias with plus or minus & autogroup", function () {
  549. var $fixture = $("#qunit-fixture");
  550. $fixture.append('<input type="text" id="testmask" />');
  551. $("#testmask").inputmask("decimal", {
  552. radixPoint: ".",
  553. groupSeparator: ",",
  554. groupSize: 3,
  555. digits: 2,
  556. autoGroup: true,
  557. allowPlus: true,
  558. allowMinus: true
  559. });
  560. $("#testmask")[0].focus();
  561. $("#testmask").Type("1234.56");
  562. equal($("#testmask").val(), "1,234.56", "Result " + $("#testmask").val());
  563. $("#testmask").remove();
  564. });
  565. test("decimal alias set value with val() - kochelmonster", function () {
  566. var $fixture = $("#qunit-fixture");
  567. $fixture.append('<input type="text" id="testmask" />');
  568. $("#testmask").inputmask("decimal", {
  569. radixPoint: ",",
  570. groupSeparator: ".",
  571. digits: 2,
  572. autoGroup: true,
  573. suffix: ' €'
  574. });
  575. $("#testmask").val("39.399.392,22 €");
  576. equal($("#testmask").val(), "39.399.392,22 €", "Result " + $("#testmask").val());
  577. $("#testmask").remove();
  578. });
  579. asyncTest("inputmask(\"decimal\") - value=\"123.1\" blur digitsoptional", function () {
  580. var $fixture = $("#qunit-fixture");
  581. $fixture.append('<input type="text" id="testmask" />');
  582. $("#testmask").inputmask("decimal", { digits: 3 });
  583. $("#testmask")[0].focus();
  584. $("#testmask").Type("123.1");
  585. $("#testmask").blur();
  586. setTimeout(function () {
  587. start();
  588. equal($("#testmask").val(), "123.1", "Result " + $("#testmask").val());
  589. $("#testmask").remove();
  590. }, 0);
  591. });
  592. asyncTest("inputmask(\"decimal\") - value=\"123.1\" blur", function () {
  593. var $fixture = $("#qunit-fixture");
  594. $fixture.append('<input type="text" id="testmask" />');
  595. $("#testmask").inputmask("decimal", { digits: 3, digitsOptional: false });
  596. $("#testmask")[0].focus();
  597. $("#testmask").Type("123.1");
  598. $("#testmask").blur();
  599. setTimeout(function () {
  600. start();
  601. equal($("#testmask").val(), "123.100", "Result " + $("#testmask").val());
  602. $("#testmask").remove();
  603. }, 0);
  604. });
  605. asyncTest("currency alias - 200000 => replace 2 to 3", function () {
  606. var $fixture = $("#qunit-fixture");
  607. $fixture.append('<input type="text" id="testmask" />');
  608. $("#testmask").inputmask("currency");
  609. $("#testmask")[0].focus();
  610. $("#testmask").click();
  611. setTimeout(function () {
  612. $("#testmask").Type("200000");
  613. $.caret($("#testmask"), 2, 3);
  614. $("#testmask").Type("3");
  615. start();
  616. equal($("#testmask").val(), "$ 300,000.00", "Result " + $("#testmask").val());
  617. $("#testmask").remove();
  618. }, 5);
  619. });
  620. asyncTest("inputmask(\"integer\") - -0 - laxmikantG", function () {
  621. var $fixture = $("#qunit-fixture");
  622. $fixture.append('<input type="text" id="testmask" />');
  623. $("#testmask").inputmask("integer", { placeholder: "0" });
  624. $("#testmask")[0].focus();
  625. $("#testmask").Type("-0");
  626. $("#testmask").blur();
  627. setTimeout(function () {
  628. start();
  629. equal($("#testmask").val(), "", "Result " + $("#testmask").val());
  630. $("#testmask").remove();
  631. }, 0);
  632. });
  633. test("inputmask(\"integer\") - 123- - laxmikantG", function () {
  634. var $fixture = $("#qunit-fixture");
  635. $fixture.append('<input type="text" id="testmask" />');
  636. $("#testmask").inputmask("integer", { placeholder: "0" });
  637. $("#testmask")[0].focus();
  638. $("#testmask").Type("123-");
  639. equal($("#testmask").val(), "-123", "Result " + $("#testmask").val());
  640. $("#testmask").remove();
  641. });
  642. test("inputmask(\"decimal\") - val(\"-5000,77\"); - ManRueda", function () {
  643. var $fixture = $("#qunit-fixture");
  644. $fixture.append('<input type="text" id="testmask" />');
  645. $("#testmask").inputmask('decimal', {
  646. integerDigits: 10,
  647. groupSeparator: '.',
  648. autoGroup: true,
  649. digits: 2,
  650. radixPoint: ',',
  651. groupSize: 3
  652. });
  653. $("#testmask").val("-5000,77");
  654. equal($("#testmask").val(), "-5.000,77", "Result " + $("#testmask").val());
  655. $("#testmask").remove();
  656. });
  657. test("inputmask(\"decimal\") - -0 - ManRueda", function () {
  658. var $fixture = $("#qunit-fixture");
  659. $fixture.append('<input type="text" id="testmask" />');
  660. $("#testmask").inputmask('decimal', {
  661. integerDigits: 10,
  662. groupSeparator: '.',
  663. autoGroup: true,
  664. digits: 2,
  665. radixPoint: ',',
  666. groupSize: 3
  667. });
  668. $("#testmask").val("-0");
  669. $("#testmask").blur();
  670. equal($("#testmask").val(), "0", "Result " + $("#testmask").val());
  671. $("#testmask").remove();
  672. });
  673. test("inputmask(\"integer\") - -5.000,77 - DrSammyD", function () {
  674. var $fixture = $("#qunit-fixture");
  675. $fixture.append('<input type="text" id="testmask" />');
  676. $("#testmask").inputmask('integer', { placeholder: "0" });
  677. $("#testmask").val("-5.000,77");
  678. $("#testmask").blur();
  679. equal($("#testmask").val(), "-5000", "Result " + $("#testmask").val());
  680. $("#testmask").remove();
  681. });
  682. asyncTest("inputmask(\"decimal\ placeholder :\"\" digitsoptional: false) - 123 - loostro", function () {
  683. var $fixture =$("#qunit-fixture");
  684. $fixture.append('<input type="text" id="testmask" value="0,00" />');
  685. $("#testmask").inputmask("decimal", {
  686. radixPoint: ",",
  687. digits: 2,
  688. digitsOptional: false,
  689. autoGroup: true,
  690. groupSeparator: " ",
  691. groupSize: 3,
  692. allowPlus: false,
  693. allowMinus: false,
  694. });
  695. $("#testmask")[0].focus();
  696. $("#testmask").click();
  697. $.caret($("#testmask"), 0);
  698. setTimeout(function () {
  699. $("#testmask").Type("123");
  700. start();
  701. equal($("#testmask").val(), "123,00", "Result " + $("#testmask").val());
  702. $("#testmask").remove();
  703. }, 5);
  704. });
  705. asyncTest("inputmask(\"decimal\ placeholder :\"0\" digitsoptional: false) - .12 - YodaJM", function () {
  706. var $fixture = $("#qunit-fixture");
  707. $fixture.append('<input type="text" id="testmask" />');
  708. $("#testmask").inputmask('decimal', {
  709. digits: 2,
  710. placeholder: "0",
  711. digitsOptional: false
  712. });
  713. $("#testmask")[0].focus();
  714. $.caret($("#testmask"), 0, 4);
  715. setTimeout(function () {
  716. $("#testmask").Type(".12");
  717. start();
  718. equal($("#testmask").val(), "0.12", "Result " + $("#testmask").val());
  719. $("#testmask").remove();
  720. }, 0);
  721. });
  722. test("inputmask(\"decimal\") - '8100000.00' - ManRueda", function () {
  723. var $fixture = $("#qunit-fixture");
  724. $fixture.append('<input type="text" id="testmask" />');
  725. $("#testmask").inputmask('decimal', {
  726. integerDigits: 6,
  727. groupSeparator: '.',
  728. autoGroup: true,
  729. digits: 2,
  730. radixPoint: ',',
  731. groupSize: 3
  732. });
  733. $("#testmask").val("8100000.00");
  734. equal($("#testmask").val(), "810.000,00", "Result " + $("#testmask").val());
  735. $("#testmask").remove();
  736. });
  737. test("inputmask(\"decimal\") - '12345678.12' - ManRueda", function () {
  738. var $fixture = $("#qunit-fixture");
  739. $fixture.append('<input type="text" id="testmask" />');
  740. $("#testmask").inputmask('decimal', {
  741. integerDigits: 6,
  742. groupSeparator: '.',
  743. autoGroup: true,
  744. digits: 2,
  745. radixPoint: ',',
  746. groupSize: 3
  747. });
  748. $("#testmask").val("12345678.12");
  749. equal($("#testmask").val(), "123.456,12", "Result " + $("#testmask").val());
  750. $("#testmask").remove();
  751. });
  752. test("inputmask(\"decimal\") - '8100000,00' - ManRueda", function () {
  753. var $fixture = $("#qunit-fixture");
  754. $fixture.append('<input type="text" id="testmask" />');
  755. $("#testmask").inputmask('decimal', {
  756. integerDigits: 6,
  757. groupSeparator: '.',
  758. autoGroup: true,
  759. digits: 2,
  760. radixPoint: ',',
  761. groupSize: 3
  762. });
  763. $("#testmask").val("8100000,00");
  764. equal($("#testmask").val(), "810.000,00", "Result " + $("#testmask").val());
  765. $("#testmask").remove();
  766. });
  767. test("inputmask(\"decimal\") - 8100000.00 - ManRueda", function () {
  768. var $fixture = $("#qunit-fixture");
  769. $fixture.append('<input type="text" id="testmask" />');
  770. $("#testmask").inputmask('decimal', {
  771. integerDigits: 6,
  772. groupSeparator: '.',
  773. autoGroup: true,
  774. digits: 2,
  775. radixPoint: ',',
  776. groupSize: 3
  777. });
  778. $("#testmask").val(8100000.00);
  779. equal($("#testmask").val(), "810.000", "Result " + $("#testmask").val());
  780. $("#testmask").remove();
  781. });
  782. test("inputmask(\"decimal\") - 8100000.00 digitsoptional false - ManRueda", function () {
  783. var $fixture = $("#qunit-fixture");
  784. $fixture.append('<input type="text" id="testmask" />');
  785. $("#testmask").inputmask('decimal', {
  786. integerDigits: 6,
  787. groupSeparator: '.',
  788. autoGroup: true,
  789. digits: 2,
  790. digitsOptional: false,
  791. radixPoint: ',',
  792. groupSize: 3
  793. });
  794. $("#testmask").val(8100000.00);
  795. $("#testmask").blur();
  796. equal($("#testmask").val(), "810.000,00", "Result " + $("#testmask").val());
  797. $("#testmask").remove();
  798. });
  799. test("inputmask(\"decimal\") - 810000.00 - ManRueda", function () {
  800. var $fixture = $("#qunit-fixture");
  801. $fixture.append('<input type="text" id="testmask" />');
  802. $("#testmask").inputmask('decimal', {
  803. integerDigits: 6,
  804. groupSeparator: '.',
  805. autoGroup: true,
  806. digits: 2,
  807. radixPoint: ',',
  808. groupSize: 3
  809. });
  810. $("#testmask").val('810000.00');
  811. equal($("#testmask").val(), "810.000,00", "Result " + $("#testmask").val());
  812. $("#testmask").remove();
  813. });
  814. test("inputmask(\"decimal\") - 123456 78 - babupca", function () {
  815. var $fixture = $("#qunit-fixture");
  816. $fixture.append('<input type="text" id="testmask" />');
  817. $("#testmask").inputmask({
  818. alias: "decimal",
  819. integerDigits: 6,
  820. digits: 3,
  821. allowMinus: false,
  822. digitsOptional: false,
  823. placeholder: "0"
  824. });
  825. $("#testmask")[0].focus();
  826. $("#testmask").Type("123456");
  827. $.caret($("#testmask"), 8);
  828. $("#testmask").Type("78");
  829. $.caret($("#testmask"), 5);
  830. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  831. equal($("#testmask").val(), "12346.078", "Result " + $("#testmask").val());
  832. $("#testmask").remove();
  833. });
  834. asyncTest("currency alias - 1234 => del 1", function () {
  835. var $fixture = $("#qunit-fixture");
  836. $fixture.append('<input type="text" id="testmask" />');
  837. $("#testmask").inputmask("currency");
  838. $("#testmask")[0].focus();
  839. $("#testmask").click();
  840. setTimeout(function () {
  841. $("#testmask").Type("1234");
  842. $.caret($("#testmask"), 3);
  843. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  844. start();
  845. equal($("#testmask").val(), "$ 234.00", "Result " + $("#testmask").val());
  846. $("#testmask").remove();
  847. }, 5);
  848. });
  849. asyncTest("currency alias - 0.02 => type 1 in integer part", function () {
  850. var $fixture = $("#qunit-fixture");
  851. $fixture.append('<input type="text" id="testmask" />');
  852. $("#testmask").inputmask("currency");
  853. $("#testmask")[0].focus();
  854. $("#testmask").click();
  855. setTimeout(function () {
  856. $("#testmask").Type("0.02");
  857. $.caret($("#testmask"), 3);
  858. $("#testmask").SendKey("1");
  859. start();
  860. equal($("#testmask").val(), "$ 1.02", "Result " + $("#testmask").val());
  861. $("#testmask").remove();
  862. }, 5);
  863. });
  864. asyncTest("currency alias - 0.02 => position before 0 type 1 in integer part", function () {
  865. var $fixture = $("#qunit-fixture");
  866. $fixture.append('<input type="text" id="testmask" />');
  867. $("#testmask").inputmask("currency");
  868. $("#testmask")[0].focus();
  869. $("#testmask").click();
  870. setTimeout(function () {
  871. $("#testmask").Type("0.02");
  872. $.caret($("#testmask"), 2);
  873. $("#testmask").SendKey("1");
  874. start();
  875. equal($("#testmask").val(), "$ 10.02", "Result " + $("#testmask").val());
  876. $("#testmask").remove();
  877. }, 5);
  878. });
  879. asyncTest("currency alias - 1.23 => del 1 in integer part", function () {
  880. var $fixture = $("#qunit-fixture");
  881. $fixture.append('<input type="text" id="testmask" />');
  882. $("#testmask").inputmask("currency");
  883. $("#testmask")[0].focus();
  884. $("#testmask").click();
  885. setTimeout(function () {
  886. $("#testmask").Type("1.23");
  887. $.caret($("#testmask"), 3);
  888. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  889. start();
  890. equal($("#testmask").val(), "$ 0.23", "Result " + $("#testmask").val());
  891. $("#testmask").remove();
  892. }, 5);
  893. });
  894. asyncTest("currency alias - 1234.56 => delete all", function () {
  895. var $fixture = $("#qunit-fixture");
  896. $fixture.append('<input type="text" id="testmask" />');
  897. $("#testmask").inputmask("currency");
  898. $("#testmask")[0].focus();
  899. $("#testmask").click();
  900. setTimeout(function () {
  901. $("#testmask").Type("1234.56");
  902. $.caret($("#testmask"), 0, 10);
  903. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  904. start();
  905. equal($("#testmask")[0]._valueGet(), "$ 0.00", "Result " + $("#testmask")[0]._valueGet());
  906. $("#testmask").remove();
  907. }, 5);
  908. });
  909. asyncTest("numeric prefix='$' - paste 1234.56 - baileyjames9 & TheAndyBob", function () {
  910. var $fixture = $("#qunit-fixture");
  911. $fixture.append('<input type="text" id="testmask" />');
  912. $("#testmask").inputmask("numeric", {
  913. radixPoint: ".",
  914. groupSeparator: ",",
  915. digits: 2,
  916. autoGroup: true,
  917. prefix: '$' //No Space, this will truncate the first character
  918. });
  919. $("#testmask")[0].focus();
  920. $("#testmask").click();
  921. setTimeout(function () {
  922. $("#testmask").paste("1234.56");
  923. start();
  924. equal($("#testmask").val(), "$1,234.56", "Result " + $("#testmask").val());
  925. $("#testmask").remove();
  926. }, 5);
  927. });
  928. asyncTest("currency alias - 1234.56 => select integer press 1 - babupca", function () {
  929. var $fixture = $("#qunit-fixture");
  930. $fixture.append('<input type="text" id="testmask" />');
  931. $("#testmask").inputmask("currency");
  932. $("#testmask")[0].focus();
  933. $("#testmask").click();
  934. setTimeout(function () {
  935. $("#testmask").Type("1234.56");
  936. $.caret($("#testmask"), 0, 7);
  937. $("#testmask").SendKey("1");
  938. start();
  939. equal($("#testmask")[0]._valueGet(), "$ 1.56", "Result " + $("#testmask")[0]._valueGet());
  940. $("#testmask").remove();
  941. }, 5);
  942. });
  943. asyncTest("currency alias - 123.56 => select integer press 1 - babupca", function () {
  944. var $fixture = $("#qunit-fixture");
  945. $fixture.append('<input type="text" id="testmask" />');
  946. $("#testmask").inputmask("currency");
  947. $("#testmask")[0].focus();
  948. $("#testmask").click();
  949. setTimeout(function () {
  950. $("#testmask").Type("123.56");
  951. $.caret($("#testmask"), 0, 5);
  952. $("#testmask").SendKey("1");
  953. start();
  954. equal($("#testmask")[0]._valueGet(), "$ 1.56", "Result " + $("#testmask")[0]._valueGet());
  955. $("#testmask").remove();
  956. }, 5);
  957. });
  958. asyncTest("currency alias - 123.56 => select integer press 1 - babupca", function () {
  959. var $fixture = $("#qunit-fixture");
  960. $fixture.append('<input type="text" id="testmask" />');
  961. $("#testmask").inputmask("currency", { prefix: "$" });
  962. $("#testmask")[0].focus();
  963. $("#testmask").click();
  964. setTimeout(function () {
  965. $("#testmask").Type("123.56");
  966. $.caret($("#testmask"), 0, 4);
  967. $("#testmask").SendKey("1");
  968. start();
  969. equal($("#testmask")[0]._valueGet(), "$1.56", "Result " + $("#testmask")[0]._valueGet());
  970. $("#testmask").remove();
  971. }, 5);
  972. });
  973. asyncTest("currency alias - min 1000", function () {
  974. var $fixture = $("#qunit-fixture");
  975. $fixture.append('<input type="text" id="testmask" />');
  976. $("#testmask").inputmask("currency", { min: 1000 });
  977. $("#testmask")[0].focus();
  978. $("#testmask").blur();
  979. setTimeout(function () {
  980. start();
  981. equal($("#testmask")[0]._valueGet(), "$ 1,000.00", "Result " + $("#testmask")[0]._valueGet());
  982. $("#testmask").remove();
  983. }, 5);
  984. });
  985. asyncTest("currency alias - max 1000 - type 1234", function () {
  986. var $fixture = $("#qunit-fixture");
  987. $fixture.append('<input type="text" id="testmask" />');
  988. $("#testmask").inputmask("currency", { max: 1000 });
  989. $("#testmask")[0].focus();
  990. $("#testmask").click();
  991. setTimeout(function () {
  992. $("#testmask").Type("1234");
  993. start();
  994. equal($("#testmask")[0]._valueGet(), "$ 123.00", "Result " + $("#testmask")[0]._valueGet());
  995. $("#testmask").remove();
  996. }, 5);
  997. });
  998. test("currency alias - type 1010 delete first 1 - FilipeZhou", function () {
  999. var $fixture = $("#qunit-fixture");
  1000. $fixture.append('<input type="text" id="testmask" />');
  1001. $("#testmask").inputmask("currency");
  1002. $("#testmask")[0].focus();
  1003. $("#testmask").click();
  1004. $("#testmask").Type("1010");
  1005. $.caret($("#testmask"), 3);
  1006. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  1007. equal($("#testmask")[0]._valueGet(), "$ 10.00", "Result " + $("#testmask")[0]._valueGet());
  1008. $("#testmask").remove();
  1009. });
  1010. test("currency alias - type 1010 delete middle 1 - FilipeZhou", function () {
  1011. var $fixture = $("#qunit-fixture");
  1012. $fixture.append('<input type="text" id="testmask" />');
  1013. $("#testmask").inputmask("currency");
  1014. $("#testmask")[0].focus();
  1015. $("#testmask").click();
  1016. $("#testmask").Type("1010");
  1017. $.caret($("#testmask"), 6);
  1018. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  1019. equal($("#testmask")[0]._valueGet(), "$ 100.00", "Result " + $("#testmask")[0]._valueGet());
  1020. $("#testmask").remove();
  1021. });
  1022. test("currency alias - type -1234 delete -", function () {
  1023. var $fixture = $("#qunit-fixture");
  1024. $fixture.append('<input type="text" id="testmask" />');
  1025. $("#testmask").inputmask("currency");
  1026. $("#testmask")[0].focus();
  1027. $("#testmask").click();
  1028. $("#testmask").Type("-1234");
  1029. $.caret($("#testmask"), 0);
  1030. $("#testmask").SendKey($.inputmask.keyCode.DELETE);
  1031. equal($("#testmask")[0]._valueGet(), "$ 1,234.00", "Result " + $("#testmask")[0]._valueGet());
  1032. $("#testmask").remove();
  1033. });
  1034. test("decimal alias - type 12345.12 add 6 in front - freeze - DatXN", function () {
  1035. var $fixture = $("#qunit-fixture");
  1036. $fixture.append('<input type="text" id="testmask" />');
  1037. $("#testmask").inputmask("decimal", { integerDigits: 5, digits: 2, allowMinus: false, allowPlus: false });
  1038. $("#testmask")[0].focus();
  1039. $("#testmask").click();
  1040. $("#testmask").Type("12345.12");
  1041. $.caret($("#testmask"), 0);
  1042. $("#testmask").SendKey("6");
  1043. equal($("#testmask")[0]._valueGet(), "12345.12", "Result " + $("#testmask")[0]._valueGet());
  1044. $("#testmask").remove();
  1045. });
  1046. test("decimal alias - type 123456789 - add , before 8 - jpontet", function () {
  1047. var $fixture = $("#qunit-fixture");
  1048. $fixture.append('<input type="text" id="testmask" />');
  1049. $("#testmask").inputmask("decimal", {allowMinus: true, integerDigits: 12, digits: 2, radixPoint: ",", autoGroup: true, groupSeparator: " ", groupSize: 3, rightAlign: false});
  1050. $("#testmask")[0].focus();
  1051. $("#testmask").click();
  1052. $("#testmask").Type("123456789");
  1053. $.caret($("#testmask"), 9);
  1054. $("#testmask").SendKey(",");
  1055. equal($("#testmask")[0]._valueGet(), "1 234 567,89", "Result " + $("#testmask")[0]._valueGet());
  1056. $("#testmask").remove();
  1057. });
  1058. test("decimal alias - type 123456789 - add , before 8 - backspace - jpontet", function () {
  1059. var $fixture = $("#qunit-fixture");
  1060. $fixture.append('<input type="text" id="testmask" />');
  1061. $("#testmask").inputmask("decimal", {allowMinus: true, integerDigits: 12, digits: 2, radixPoint: ",", autoGroup: true, groupSeparator: " ", groupSize: 3, rightAlign: false});
  1062. $("#testmask")[0].focus();
  1063. $("#testmask").click();
  1064. $("#testmask").Type("123456789");
  1065. $.caret($("#testmask"), 9);
  1066. $("#testmask").SendKey(",");
  1067. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  1068. equal($("#testmask")[0]._valueGet(), "123 456,89", "Result " + $("#testmask")[0]._valueGet());
  1069. $("#testmask").remove();
  1070. });
  1071. test("decimal alias - type 1234567890 - add , before 9 - jpontet", function () {
  1072. var $fixture = $("#qunit-fixture");
  1073. $fixture.append('<input type="text" id="testmask" />');
  1074. $("#testmask").inputmask("decimal", {allowMinus: true, integerDigits: 12, digits: 2, radixPoint: ",", autoGroup: true, groupSeparator: " ", groupSize: 3, rightAlign: false});
  1075. $("#testmask")[0].focus();
  1076. $("#testmask").click();
  1077. $("#testmask").Type("1234567890");
  1078. $.caret($("#testmask"), 11);
  1079. $("#testmask").SendKey(",");
  1080. equal($("#testmask")[0]._valueGet(), "12 345 678,90", "Result " + $("#testmask")[0]._valueGet());
  1081. $("#testmask").remove();
  1082. });
  1083. test("decimal alias - type 1234567890 - add , before 9 - backspace - jpontet", function () {
  1084. var $fixture = $("#qunit-fixture");
  1085. $fixture.append('<input type="text" id="testmask" />');
  1086. $("#testmask").inputmask("decimal", {allowMinus: true, integerDigits: 12, digits: 2, radixPoint: ",", autoGroup: true, groupSeparator: " ", groupSize: 3, rightAlign: false});
  1087. $("#testmask")[0].focus();
  1088. $("#testmask").click();
  1089. $("#testmask").Type("1234567890");
  1090. $.caret($("#testmask"), 11);
  1091. $("#testmask").SendKey(",");
  1092. $("#testmask").SendKey($.inputmask.keyCode.BACKSPACE);
  1093. equal($("#testmask")[0]._valueGet(), "1 234 567,90", "Result " + $("#testmask")[0]._valueGet());
  1094. $("#testmask").remove();
  1095. });