tests_alternations.js 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322
  1. define([
  2. "qunit",
  3. "../dist/inputmask/dependencyLibs/inputmask.dependencyLib",
  4. "../dist/inputmask/inputmask.extensions",
  5. "prototypeExtensions",
  6. "simulator"
  7. ], function (qunit, $, Inputmask) {
  8. qunit.module("Alternations");
  9. qunit.test("\"9{1,2}C|S A{1,3} 9{4}\" - ankitajain32", function (assert) {
  10. var $fixture = $("#qunit-fixture");
  11. $fixture.append('<input type="text" id="testmask" />');
  12. var testmask = document.getElementById("testmask");
  13. Inputmask("9{1,2}C|S A{1,3} 9{4}").mask(testmask);
  14. $("#testmask").Type("12Cabc1234");
  15. assert.equal(testmask.inputmask._valueGet(), "12C ABC 1234", "Result " + testmask.inputmask._valueGet());
  16. });
  17. qunit.test("\"9{1,2}C|S A{1,3} 9{4}\" replace C with S - ankitajain32", function (assert) {
  18. var $fixture = $("#qunit-fixture");
  19. $fixture.append('<input type="text" id="testmask" />');
  20. var testmask = document.getElementById("testmask");
  21. Inputmask("9{1,2}C|S A{1,3} 9{4}").mask(testmask);
  22. $("#testmask").Type("12Cabc1234");
  23. $.caret(testmask, 2, 3);
  24. $("#testmask").Type("S");
  25. assert.equal(testmask.inputmask._valueGet(), "12S ABC 1234", "Result " + testmask.inputmask._valueGet());
  26. });
  27. qunit.test("nested alternations 1", function (assert) {
  28. var $fixture = $("#qunit-fixture");
  29. $fixture.append('<input type="text" id="testmask" />');
  30. var testmask = document.getElementById("testmask");
  31. Inputmask("0<2)##-##-##>|<3<4)#-##-##>|<5)#-##-##>|<6)#-##-##>>", {
  32. groupmarker: {
  33. start: "<",
  34. end: ">"
  35. }
  36. }).mask(testmask);
  37. $("#testmask").Type("02121212");
  38. assert.equal(testmask.inputmask._valueGet(), "02)12-12-12", "Result " + testmask.inputmask._valueGet());
  39. });
  40. qunit.test("nested alternations 2", function (assert) {
  41. var $fixture = $("#qunit-fixture");
  42. $fixture.append('<input type="text" id="testmask" />');
  43. var testmask = document.getElementById("testmask");
  44. Inputmask("0<2)##-##-##>|<3<4)#-##-##>|<5)#-##-##>|<6)#-##-##>>", {
  45. groupmarker: {
  46. start: "<",
  47. end: ">"
  48. }
  49. }).mask(testmask);
  50. $("#testmask").Type("03411212");
  51. assert.equal(testmask.inputmask._valueGet(), "034)1-12-12", "Result " + testmask.inputmask._valueGet());
  52. });
  53. qunit.test("nested alternations 3", function (assert) {
  54. var $fixture = $("#qunit-fixture");
  55. $fixture.append('<input type="text" id="testmask" />');
  56. var testmask = document.getElementById("testmask");
  57. Inputmask("0<2)##-##-##>|<3<4)#-##-##>|<5)#-##-##>|<6)#-##-##>>", {
  58. groupmarker: {
  59. start: "<",
  60. end: ">"
  61. }
  62. }).mask(testmask);
  63. $("#testmask").Type("03511212");
  64. assert.equal(testmask.inputmask._valueGet(), "035)1-12-12", "Result " + testmask.inputmask._valueGet());
  65. });
  66. qunit.test("nested alternations 4", function (assert) {
  67. var $fixture = $("#qunit-fixture");
  68. $fixture.append('<input type="text" id="testmask" />');
  69. var testmask = document.getElementById("testmask");
  70. Inputmask("0<2)##-##-##>|<3<4)#-##-##>|<5)#-##-##>|<6)#-##-##>>", {
  71. groupmarker: {
  72. start: "<",
  73. end: ">"
  74. }
  75. }).mask(testmask);
  76. $("#testmask").Type("03611212");
  77. assert.equal(testmask.inputmask._valueGet(), "036)1-12-12", "Result " + testmask.inputmask._valueGet());
  78. });
  79. qunit.test("alternations W|XY|Z", function (assert) {
  80. var $fixture = $("#qunit-fixture");
  81. $fixture.append('<input type="text" id="testmask" />');
  82. var testmask = document.getElementById("testmask");
  83. Inputmask("W|XY|Z").mask(testmask);
  84. $("#testmask").Type("WZ");
  85. assert.equal(testmask.inputmask._valueGet(), "WZ", "Result " + testmask.inputmask._valueGet());
  86. });
  87. qunit.test("alternations (W)|(X)(Y)|(Z)", function (assert) {
  88. var $fixture = $("#qunit-fixture");
  89. $fixture.append('<input type="text" id="testmask" />');
  90. var testmask = document.getElementById("testmask");
  91. Inputmask("(W)|(X)(Y)|(Z)").mask(testmask);
  92. $("#testmask").Type("WZ");
  93. assert.equal(testmask.inputmask._valueGet(), "WZ", "Result " + testmask.inputmask._valueGet());
  94. });
  95. qunit.test("alternations (9{1,3})|(S|NE|W)-9{1,3}", function (assert) {
  96. var $fixture = $("#qunit-fixture");
  97. $fixture.append('<input type="text" id="testmask" />');
  98. var testmask = document.getElementById("testmask");
  99. Inputmask("(9{1,3})|(S|NE|W)-9{1,3}").mask(testmask);
  100. $("#testmask").Type("NE123");
  101. assert.equal(testmask.inputmask._valueGet(), "NE-123", "Result " + testmask.inputmask._valueGet());
  102. });
  103. qunit.test("alternations (9{1,3})|((S|N)(E|W))-9{1,3} - yesman85", function (assert) {
  104. var $fixture = $("#qunit-fixture");
  105. $fixture.append('<input type="text" id="testmask" />');
  106. var testmask = document.getElementById("testmask");
  107. Inputmask("(9{1,3})|((S|N)(E|W))-9{1,3}").mask(testmask);
  108. $("#testmask").Type("(NE123");
  109. assert.equal(testmask.inputmask._valueGet(), "(N)(E)-123", "Result " + testmask.inputmask._valueGet());
  110. });
  111. qunit.test("((S))", function (assert) {
  112. var $fixture = $("#qunit-fixture");
  113. $fixture.append('<input type="text" id="testmask" />');
  114. var testmask = document.getElementById("testmask");
  115. Inputmask("((S))").mask(testmask);
  116. testmask.focus();
  117. assert.equal(testmask.inputmask._valueGet(), "((S))", "Result " + testmask.inputmask._valueGet());
  118. });
  119. qunit.test("((S)", function (assert) {
  120. var $fixture = $("#qunit-fixture");
  121. $fixture.append('<input type="text" id="testmask" />');
  122. var testmask = document.getElementById("testmask");
  123. Inputmask("((S)").mask(testmask);
  124. testmask.focus();
  125. assert.equal(testmask.inputmask._valueGet(), "((S)", "Result " + testmask.inputmask._valueGet());
  126. });
  127. qunit.test("+371-99-999-999 - artemkaint", function (assert) {
  128. var $fixture = $("#qunit-fixture");
  129. $fixture.append('<input type="text" id="testmask" />');
  130. var testmask = document.getElementById("testmask");
  131. Inputmask([
  132. "+371-99-999-999",
  133. "+370(999)99-999",
  134. "+375(99)999-99-99",
  135. "+374-99-999-999",
  136. "+380(99)999-99-99",
  137. "+358(999)999-99-99",
  138. "+373-9999-9999",
  139. "+381-99-999-9999"
  140. ]).mask(testmask);
  141. testmask.focus();
  142. $("#testmask").Type("112123123");
  143. assert.equal(testmask.inputmask._valueGet(), "+371-12-123-123", "Result " + testmask.inputmask._valueGet());
  144. });
  145. qunit.test("+371-99-999-999 - artemkaint", function (assert) {
  146. var $fixture = $("#qunit-fixture");
  147. $fixture.append('<input type="text" id="testmask" />');
  148. var testmask = document.getElementById("testmask");
  149. Inputmask([
  150. "+371-99-999-999",
  151. "+370(999)99-999",
  152. "+375(99)999-99-99",
  153. "+374-99-999-999",
  154. "+380(99)999-99-99",
  155. "+358(999)999-99-99",
  156. "+373-9999-9999",
  157. "+381-99-999-9999"
  158. ]).mask(testmask);
  159. testmask.focus();
  160. $("#testmask").Type("412123123");
  161. assert.equal(testmask.inputmask._valueGet(), "+374-12-123-123", "Result " + testmask.inputmask._valueGet());
  162. });
  163. qunit.test("(9)|(a9) - type 1 - ivaninDarpatov", function (assert) {
  164. var $fixture = $("#qunit-fixture");
  165. $fixture.append('<input type="text" id="testmask" />');
  166. var testmask = document.getElementById("testmask");
  167. Inputmask("(9)|(a9)").mask(testmask);
  168. testmask.focus();
  169. $("#testmask").Type("12");
  170. assert.equal(testmask.inputmask._valueGet(), "1", "Result " + testmask.inputmask._valueGet());
  171. });
  172. qunit.test("(9)|(a9) - type a1 - ivaninDarpatov", function (assert) {
  173. var $fixture = $("#qunit-fixture");
  174. $fixture.append('<input type="text" id="testmask" />');
  175. var testmask = document.getElementById("testmask");
  176. Inputmask("(9)|(a9)").mask(testmask);
  177. testmask.focus();
  178. $("#testmask").Type("a1");
  179. assert.equal(testmask.inputmask._valueGet(), "a1", "Result " + testmask.inputmask._valueGet());
  180. });
  181. qunit.test("(999)|(0aa) - type 0ab - ivaninDarpatov", function (assert) {
  182. var $fixture = $("#qunit-fixture");
  183. $fixture.append('<input type="text" id="testmask" />');
  184. var testmask = document.getElementById("testmask");
  185. Inputmask("(999)|(0aa)").mask(testmask);
  186. testmask.focus();
  187. $("#testmask").Type("0ab");
  188. assert.equal(testmask.inputmask._valueGet(), "0ab", "Result " + testmask.inputmask._valueGet());
  189. });
  190. qunit.test("(999)|(0aa) - type 1ab - ivaninDarpatov", function (assert) {
  191. var $fixture = $("#qunit-fixture");
  192. $fixture.append('<input type="text" id="testmask" />');
  193. var testmask = document.getElementById("testmask");
  194. Inputmask("(999)|(0aa)").mask(testmask);
  195. testmask.focus();
  196. $("#testmask").Type("1ab");
  197. assert.equal(testmask.inputmask._valueGet(), "1__", "Result " + testmask.inputmask._valueGet());
  198. });
  199. qunit.test("(9)|(09)|(19)|(2f) - type 41 - ivaninDarpatov", function (assert) {
  200. var $fixture = $("#qunit-fixture");
  201. $fixture.append('<input type="text" id="testmask" />');
  202. var testmask = document.getElementById("testmask");
  203. Inputmask("(9)|(09)|(19)|(2f)", {
  204. definitions: {
  205. "f": {validator: "[0-3]"}
  206. }
  207. }).mask(testmask);
  208. testmask.focus();
  209. $("#testmask").Type("41");
  210. assert.equal(testmask.inputmask._valueGet(), "4", "Result " + testmask.inputmask._valueGet());
  211. });
  212. qunit.test("(9)|(09)|(19)|(2f) - type 01 - ivaninDarpatov", function (assert) {
  213. var $fixture = $("#qunit-fixture");
  214. $fixture.append('<input type="text" id="testmask" />');
  215. var testmask = document.getElementById("testmask");
  216. Inputmask("(9)|(09)|(19)|(2f)", {
  217. definitions: {
  218. "f": {validator: "[0-3]"}
  219. }
  220. }).mask(testmask);
  221. testmask.focus();
  222. $("#testmask").Type("01");
  223. assert.equal(testmask.inputmask._valueGet(), "01", "Result " + testmask.inputmask._valueGet());
  224. });
  225. qunit.test("(9)|(09)|(19)|(2f) - type 11 - ivaninDarpatov", function (assert) {
  226. var $fixture = $("#qunit-fixture");
  227. $fixture.append('<input type="text" id="testmask" />');
  228. var testmask = document.getElementById("testmask");
  229. Inputmask("(9)|(09)|(19)|(2f)", {
  230. definitions: {
  231. "f": {validator: "[0-3]"}
  232. }
  233. }).mask(testmask);
  234. testmask.focus();
  235. $("#testmask").Type("11");
  236. assert.equal(testmask.inputmask._valueGet(), "11", "Result " + testmask.inputmask._valueGet());
  237. });
  238. qunit.test("(9)|(09)|(19)|(2f) - type 23 - ivaninDarpatov", function (assert) {
  239. var $fixture = $("#qunit-fixture");
  240. $fixture.append('<input type="text" id="testmask" />');
  241. var testmask = document.getElementById("testmask");
  242. Inputmask("(9)|(09)|(19)|(2f)", {
  243. definitions: {
  244. "f": {validator: "[0-3]"}
  245. }
  246. }).mask(testmask);
  247. testmask.focus();
  248. $("#testmask").Type("23");
  249. assert.equal(testmask.inputmask._valueGet(), "23", "Result " + testmask.inputmask._valueGet());
  250. });
  251. qunit.test("(9)|(09)|(19)|(2f) - type 24 - ivaninDarpatov", function (assert) {
  252. var $fixture = $("#qunit-fixture");
  253. $fixture.append('<input type="text" id="testmask" />');
  254. var testmask = document.getElementById("testmask");
  255. Inputmask("(9)|(09)|(19)|(2f)", {
  256. definitions: {
  257. "f": {validator: "[0-3]"}
  258. }
  259. }).mask(testmask);
  260. testmask.focus();
  261. $("#testmask").Type("24");
  262. assert.equal(testmask.inputmask._valueGet(), "2_", "Result " + testmask.inputmask._valueGet());
  263. });
  264. });