tests_alternations.js 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  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}|SE|NE|SW|NW)-9{1,3} - yesman85", 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}|SE|NE|SW|NW)-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("((S))", function (assert) {
  104. var $fixture = $("#qunit-fixture");
  105. $fixture.append('<input type="text" id="testmask" />');
  106. var testmask = document.getElementById("testmask");
  107. Inputmask("((S))").mask(testmask);
  108. testmask.focus();
  109. assert.equal(testmask.inputmask._valueGet(), "((S))", "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("+371-99-999-999 - artemkaint", function (assert) {
  120. var $fixture = $("#qunit-fixture");
  121. $fixture.append('<input type="text" id="testmask" />');
  122. var testmask = document.getElementById("testmask");
  123. Inputmask([
  124. "+371-99-999-999",
  125. "+370(999)99-999",
  126. "+375(99)999-99-99",
  127. "+374-99-999-999",
  128. "+380(99)999-99-99",
  129. "+358(999)999-99-99",
  130. "+373-9999-9999",
  131. "+381-99-999-9999"
  132. ]).mask(testmask);
  133. testmask.focus();
  134. $("#testmask").Type("112123123");
  135. assert.equal(testmask.inputmask._valueGet(), "+371-12-123-123", "Result " + testmask.inputmask._valueGet());
  136. });
  137. qunit.test("+371-99-999-999 - artemkaint", function (assert) {
  138. var $fixture = $("#qunit-fixture");
  139. $fixture.append('<input type="text" id="testmask" />');
  140. var testmask = document.getElementById("testmask");
  141. Inputmask([
  142. "+371-99-999-999",
  143. "+370(999)99-999",
  144. "+375(99)999-99-99",
  145. "+374-99-999-999",
  146. "+380(99)999-99-99",
  147. "+358(999)999-99-99",
  148. "+373-9999-9999",
  149. "+381-99-999-9999"
  150. ]).mask(testmask);
  151. testmask.focus();
  152. $("#testmask").Type("412123123");
  153. assert.equal(testmask.inputmask._valueGet(), "+374-12-123-123", "Result " + testmask.inputmask._valueGet());
  154. });
  155. qunit.test("(9)|(a9) - type 1 - ivaninDarpatov", function (assert) {
  156. var $fixture = $("#qunit-fixture");
  157. $fixture.append('<input type="text" id="testmask" />');
  158. var testmask = document.getElementById("testmask");
  159. Inputmask("(9)|(a9)").mask(testmask);
  160. testmask.focus();
  161. $("#testmask").Type("12");
  162. assert.equal(testmask.inputmask._valueGet(), "1", "Result " + testmask.inputmask._valueGet());
  163. });
  164. qunit.test("(9)|(a9) - type a1 - ivaninDarpatov", function (assert) {
  165. var $fixture = $("#qunit-fixture");
  166. $fixture.append('<input type="text" id="testmask" />');
  167. var testmask = document.getElementById("testmask");
  168. Inputmask("(9)|(a9)").mask(testmask);
  169. testmask.focus();
  170. $("#testmask").Type("a1");
  171. assert.equal(testmask.inputmask._valueGet(), "a1", "Result " + testmask.inputmask._valueGet());
  172. });
  173. qunit.test("(999)|(0aa) - type 0ab - ivaninDarpatov", function (assert) {
  174. var $fixture = $("#qunit-fixture");
  175. $fixture.append('<input type="text" id="testmask" />');
  176. var testmask = document.getElementById("testmask");
  177. Inputmask("(999)|(0aa)").mask(testmask);
  178. testmask.focus();
  179. $("#testmask").Type("0ab");
  180. assert.equal(testmask.inputmask._valueGet(), "0ab", "Result " + testmask.inputmask._valueGet());
  181. });
  182. qunit.test("(999)|(0aa) - type 1ab - ivaninDarpatov", function (assert) {
  183. var $fixture = $("#qunit-fixture");
  184. $fixture.append('<input type="text" id="testmask" />');
  185. var testmask = document.getElementById("testmask");
  186. Inputmask("(999)|(0aa)").mask(testmask);
  187. testmask.focus();
  188. $("#testmask").Type("1ab");
  189. assert.equal(testmask.inputmask._valueGet(), "1__", "Result " + testmask.inputmask._valueGet());
  190. });
  191. qunit.test("(9)|(09)|(19)|(2f) - type 41 - ivaninDarpatov", function (assert) {
  192. var $fixture = $("#qunit-fixture");
  193. $fixture.append('<input type="text" id="testmask" />');
  194. var testmask = document.getElementById("testmask");
  195. Inputmask("(9)|(09)|(19)|(2f)", {
  196. definitions: {
  197. "f": {validator: "[0-3]"}
  198. }
  199. }).mask(testmask);
  200. testmask.focus();
  201. $("#testmask").Type("41");
  202. assert.equal(testmask.inputmask._valueGet(), "4", "Result " + testmask.inputmask._valueGet());
  203. });
  204. qunit.test("(9)|(09)|(19)|(2f) - type 01 - ivaninDarpatov", function (assert) {
  205. var $fixture = $("#qunit-fixture");
  206. $fixture.append('<input type="text" id="testmask" />');
  207. var testmask = document.getElementById("testmask");
  208. Inputmask("(9)|(09)|(19)|(2f)", {
  209. definitions: {
  210. "f": {validator: "[0-3]"}
  211. }
  212. }).mask(testmask);
  213. testmask.focus();
  214. $("#testmask").Type("01");
  215. assert.equal(testmask.inputmask._valueGet(), "01", "Result " + testmask.inputmask._valueGet());
  216. });
  217. qunit.test("(9)|(09)|(19)|(2f) - type 11 - ivaninDarpatov", function (assert) {
  218. var $fixture = $("#qunit-fixture");
  219. $fixture.append('<input type="text" id="testmask" />');
  220. var testmask = document.getElementById("testmask");
  221. Inputmask("(9)|(09)|(19)|(2f)", {
  222. definitions: {
  223. "f": {validator: "[0-3]"}
  224. }
  225. }).mask(testmask);
  226. testmask.focus();
  227. $("#testmask").Type("11");
  228. assert.equal(testmask.inputmask._valueGet(), "11", "Result " + testmask.inputmask._valueGet());
  229. });
  230. qunit.test("(9)|(09)|(19)|(2f) - type 23 - ivaninDarpatov", function (assert) {
  231. var $fixture = $("#qunit-fixture");
  232. $fixture.append('<input type="text" id="testmask" />');
  233. var testmask = document.getElementById("testmask");
  234. Inputmask("(9)|(09)|(19)|(2f)", {
  235. definitions: {
  236. "f": {validator: "[0-3]"}
  237. }
  238. }).mask(testmask);
  239. testmask.focus();
  240. $("#testmask").Type("23");
  241. assert.equal(testmask.inputmask._valueGet(), "23", "Result " + testmask.inputmask._valueGet());
  242. });
  243. qunit.test("(9|09|19|2f) - type 24 - ivaninDarpatov", function (assert) {
  244. var $fixture = $("#qunit-fixture");
  245. $fixture.append('<input type="text" id="testmask" />');
  246. var testmask = document.getElementById("testmask");
  247. Inputmask("(9|09|19|2f)", {
  248. definitions: {
  249. "f": {validator: "[0-3]"}
  250. }
  251. }).mask(testmask);
  252. testmask.focus();
  253. $("#testmask").Type("24");
  254. assert.equal(testmask.inputmask._valueGet(), "2_", "Result " + testmask.inputmask._valueGet());
  255. });
  256. });