tests_date.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610
  1. export default function (qunit, Inputmask) {
  2. var $ = Inputmask.dependencyLib;
  3. function pad(val, len) {
  4. val = String(val);
  5. len = len || 2;
  6. while (val.length < len) val = "0" + val;
  7. return val;
  8. }
  9. qunit.module("Date.Extensions - dd/mm/yyyy");
  10. qunit.test("valid entry", function (assert) {
  11. var $fixture = $("#qunit-fixture");
  12. $fixture.append('<input type="text" id="testmask" />');
  13. var testmask = document.getElementById("testmask");
  14. Inputmask("datetime", {
  15. inputFormat: "dd/mm/yyyy"
  16. }).mask(testmask);
  17. testmask.focus();
  18. $("#testmask").Type("2331973");
  19. assert.equal(testmask.value, "23/03/1973", "Result " + testmask.value);
  20. });
  21. qunit.test("invalid entry", function (assert) {
  22. var $fixture = $("#qunit-fixture");
  23. $fixture.append('<input type="text" id="testmask" />');
  24. var testmask = document.getElementById("testmask");
  25. Inputmask("datetime", {
  26. inputFormat: "dd/mm/yyyy"
  27. }).mask(testmask);
  28. testmask.focus();
  29. $("#testmask").Type("abcdefghijklmnop");
  30. assert.equal(testmask.value, "", "Result " + testmask.value);
  31. });
  32. qunit.test("overtype valid entry", function (assert) {
  33. var $fixture = $("#qunit-fixture");
  34. $fixture.append('<input type="text" id="testmask" />');
  35. var testmask = document.getElementById("testmask");
  36. Inputmask("datetime", {
  37. inputFormat: "dd/mm/yyyy"
  38. }).mask(testmask);
  39. testmask.focus();
  40. $("#testmask").Type("2331973");
  41. $.caret(testmask, 0, "23/03/1973".length);
  42. $("#testmask").Type("04102017");
  43. assert.equal(testmask.value, "04/10/2017", "Result " + testmask.value);
  44. });
  45. qunit.test("overtype invalid entry", function (assert) {
  46. var $fixture = $("#qunit-fixture");
  47. $fixture.append('<input type="text" id="testmask" />');
  48. var testmask = document.getElementById("testmask");
  49. Inputmask("datetime", {
  50. inputFormat: "dd/mm/yyyy"
  51. }).mask(testmask);
  52. testmask.focus();
  53. $("#testmask").Type("2331973");
  54. $.caret(testmask, 0, "23/03/1973".length);
  55. $("#testmask").Type("abcdefghijklmnop");
  56. assert.equal(testmask.value, "23/03/1973", "Result " + testmask.value);
  57. });
  58. qunit.test("insert current date", function (assert) {
  59. var $fixture = $("#qunit-fixture");
  60. $fixture.append('<input type="text" id="testmask" />');
  61. var testmask = document.getElementById("testmask");
  62. Inputmask("datetime", {
  63. inputFormat: "dd/mm/yyyy"
  64. }).mask(testmask);
  65. testmask.focus();
  66. $("#testmask").SendKey(Inputmask.keyCode.RIGHT, Inputmask.keyCode.CONTROL);
  67. var today = new Date();
  68. today = pad(today.getDate(), 2) + "/" + pad(parseInt(today.getMonth()) + 1, 2) + "/" + today.getFullYear();
  69. assert.equal(testmask.value, today, "Result " + testmask.value);
  70. });
  71. qunit.test("backspace year", function (assert) {
  72. var $fixture = $("#qunit-fixture");
  73. $fixture.append('<input type="text" id="testmask" />');
  74. var testmask = document.getElementById("testmask");
  75. Inputmask("datetime", {
  76. inputFormat: "dd/mm/yyyy"
  77. }).mask(testmask);
  78. testmask.focus();
  79. $("#testmask").Type("2331973");
  80. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  81. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  82. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  83. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  84. assert.equal(testmask.value, "23/03/yyyy", "Result " + testmask.value);
  85. });
  86. qunit.test("delete year", function (assert) {
  87. var $fixture = $("#qunit-fixture");
  88. $fixture.append('<input type="text" id="testmask" />');
  89. var testmask = document.getElementById("testmask");
  90. Inputmask("datetime", {
  91. inputFormat: "dd/mm/yyyy"
  92. }).mask(testmask);
  93. testmask.focus();
  94. $("#testmask").Type("2331973");
  95. $.caret(testmask, "23/03/".length);
  96. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  97. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  98. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  99. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  100. assert.equal(testmask.value, "23/03/yyyy", "Result " + testmask.value);
  101. });
  102. qunit.test("set date 592017", function (assert) {
  103. var $fixture = $("#qunit-fixture");
  104. $fixture.append('<input type="text" id="testmask" />');
  105. var testmask = document.getElementById("testmask");
  106. Inputmask("datetime", {
  107. inputFormat: "dd/mm/yyyy"
  108. }).mask(testmask);
  109. testmask.focus();
  110. $("#testmask").val("592017");
  111. assert.equal(testmask.value, "05/09/2017", "Result " + testmask.value);
  112. });
  113. qunit.test("set date 01/01/1800 min date 01/01/1900", function (assert) {
  114. var $fixture = $("#qunit-fixture");
  115. $fixture.append('<input type="text" id="testmask" />');
  116. var testmask = document.getElementById("testmask");
  117. Inputmask("datetime", {
  118. inputFormat: "dd/mm/yyyy",
  119. min: "01/01/1900",
  120. max: "31/12/2017"
  121. }).mask(testmask);
  122. testmask.focus();
  123. $("#testmask").val("01011800");
  124. assert.equal(testmask.value, "01/01/1yyy", "Result " + testmask.value);
  125. });
  126. qunit.test("set date 01/01/2018 max date 31/12/2017", function (assert) {
  127. var $fixture = $("#qunit-fixture");
  128. $fixture.append('<input type="text" id="testmask" />');
  129. var testmask = document.getElementById("testmask");
  130. Inputmask("datetime", {
  131. inputFormat: "dd/mm/yyyy",
  132. min: "01/01/1900",
  133. max: "31/12/2017"
  134. }).mask(testmask);
  135. testmask.focus();
  136. $("#testmask").val("01012018");
  137. assert.equal(testmask.value, "01/01/201y", "Result " + testmask.value);
  138. });
  139. qunit.test("set date 01/01/1900 min date 01/01/1900", function (assert) {
  140. var $fixture = $("#qunit-fixture");
  141. $fixture.append('<input type="text" id="testmask" />');
  142. var testmask = document.getElementById("testmask");
  143. Inputmask("datetime", {
  144. inputFormat: "dd/mm/yyyy",
  145. min: "01/01/1900",
  146. max: "31/12/2017"
  147. }).mask(testmask);
  148. testmask.focus();
  149. $("#testmask").val("01011900");
  150. assert.equal(testmask.value, "01/01/1900", "Result " + testmask.value);
  151. });
  152. qunit.test("set date 31/12/2017 max date 31/12/2017", function (assert) {
  153. var $fixture = $("#qunit-fixture");
  154. $fixture.append('<input type="text" id="testmask" />');
  155. var testmask = document.getElementById("testmask");
  156. Inputmask("datetime", {
  157. inputFormat: "dd/mm/yyyy",
  158. min: "01/01/1900",
  159. max: "31/12/2017"
  160. }).mask(testmask);
  161. testmask.focus();
  162. $("#testmask").val("31122017");
  163. assert.equal(testmask.value, "31/12/2017", "Result " + testmask.value);
  164. });
  165. qunit.test("min 14/02/1938 max 14/02/2038 enter 01011939", function (assert) {
  166. var $fixture = $("#qunit-fixture");
  167. $fixture.append('<input type="text" id="testmask" />');
  168. var testmask = document.getElementById("testmask");
  169. Inputmask("datetime", {
  170. inputFormat: "dd/mm/yyyy",
  171. min: "14/02/1938",
  172. max: "14/02/2038"
  173. }).mask(testmask);
  174. testmask.focus();
  175. $("#testmask").val("01011939");
  176. assert.equal(testmask.value, "01/01/1939", "Result " + testmask.value);
  177. });
  178. qunit.module("Date.Extensions - mm/dd/yyyy");
  179. qunit.test("valid entry", function (assert) {
  180. var $fixture = $("#qunit-fixture");
  181. $fixture.append('<input type="text" id="testmask" />');
  182. var testmask = document.getElementById("testmask");
  183. Inputmask("datetime", {
  184. inputFormat: "mm/dd/yyyy"
  185. }).mask(testmask);
  186. testmask.focus();
  187. $("#testmask").Type("3231973");
  188. assert.equal(testmask.value, "03/23/1973", "Result " + testmask.value);
  189. });
  190. qunit.test("invalid entry", function (assert) {
  191. var $fixture = $("#qunit-fixture");
  192. $fixture.append('<input type="text" id="testmask" />');
  193. var testmask = document.getElementById("testmask");
  194. Inputmask("datetime", {
  195. inputFormat: "mm/dd/yyyy"
  196. }).mask(testmask);
  197. testmask.focus();
  198. $("#testmask").Type("abcdefghijklmnop");
  199. assert.equal(testmask.value, "", "Result " + testmask.value);
  200. });
  201. qunit.test("overtype valid entry", function (assert) {
  202. var $fixture = $("#qunit-fixture");
  203. $fixture.append('<input type="text" id="testmask" />');
  204. var testmask = document.getElementById("testmask");
  205. Inputmask("datetime", {
  206. inputFormat: "mm/dd/yyyy"
  207. }).mask(testmask);
  208. testmask.focus();
  209. $("#testmask").Type("3231973");
  210. $.caret(testmask, 0, "03/23/1973".length);
  211. $("#testmask").Type("10042017");
  212. assert.equal(testmask.value, "10/04/2017", "Result " + testmask.value);
  213. });
  214. qunit.test("overtype invalid entry", function (assert) {
  215. var $fixture = $("#qunit-fixture");
  216. $fixture.append('<input type="text" id="testmask" />');
  217. var testmask = document.getElementById("testmask");
  218. Inputmask("datetime", {
  219. inputFormat: "mm/dd/yyyy"
  220. }).mask(testmask);
  221. testmask.focus();
  222. $("#testmask").Type("3231973");
  223. $.caret(testmask, 0, "03/23/1973".length);
  224. $("#testmask").Type("abcdefghijklmnop");
  225. assert.equal(testmask.value, "03/23/1973", "Result " + testmask.value);
  226. });
  227. qunit.test("insert current date", function (assert) {
  228. var $fixture = $("#qunit-fixture");
  229. $fixture.append('<input type="text" id="testmask" />');
  230. var testmask = document.getElementById("testmask");
  231. Inputmask("datetime", {
  232. inputFormat: "mm/dd/yyyy"
  233. }).mask(testmask);
  234. testmask.focus();
  235. $("#testmask").SendKey(Inputmask.keyCode.RIGHT, Inputmask.keyCode.CONTROL);
  236. var today = new Date();
  237. today = pad(parseInt(today.getMonth()) + 1, 2) + "/" + pad(today.getDate(), 2) + "/" + today.getFullYear();
  238. assert.equal(testmask.value, today, "Result " + testmask.value);
  239. });
  240. qunit.test("backspace year", function (assert) {
  241. var $fixture = $("#qunit-fixture");
  242. $fixture.append('<input type="text" id="testmask" />');
  243. var testmask = document.getElementById("testmask");
  244. Inputmask("datetime", {
  245. inputFormat: "mm/dd/yyyy"
  246. }).mask(testmask);
  247. testmask.focus();
  248. $("#testmask").Type("3231973");
  249. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  250. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  251. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  252. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  253. assert.equal(testmask.value, "03/23/yyyy", "Result " + testmask.value);
  254. });
  255. qunit.test("delete year", function (assert) {
  256. var $fixture = $("#qunit-fixture");
  257. $fixture.append('<input type="text" id="testmask" />');
  258. var testmask = document.getElementById("testmask");
  259. Inputmask("datetime", {
  260. inputFormat: "mm/dd/yyyy"
  261. }).mask(testmask);
  262. testmask.focus();
  263. $("#testmask").Type("3231973");
  264. $.caret(testmask, "03/23/".length);
  265. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  266. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  267. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  268. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  269. assert.equal(testmask.value, "03/23/yyyy", "Result " + testmask.value);
  270. });
  271. qunit.test("set date 952017", function (assert) {
  272. var $fixture = $("#qunit-fixture");
  273. $fixture.append('<input type="text" id="testmask" />');
  274. var testmask = document.getElementById("testmask");
  275. Inputmask("datetime", {
  276. inputFormat: "mm/dd/yyyy"
  277. }).mask(testmask);
  278. testmask.focus();
  279. $("#testmask").val("952017");
  280. assert.equal(testmask.value, "09/05/2017", "Result " + testmask.value);
  281. });
  282. qunit.test("set date 01/01/1800 min date 01/01/1900", function (assert) {
  283. var $fixture = $("#qunit-fixture");
  284. $fixture.append('<input type="text" id="testmask" />');
  285. var testmask = document.getElementById("testmask");
  286. Inputmask("datetime", {
  287. inputFormat: "mm/dd/yyyy",
  288. min: "01/01/1900",
  289. max: "12/31/2017"
  290. }).mask(testmask);
  291. testmask.focus();
  292. $("#testmask").val("01011800");
  293. assert.equal(testmask.value, "01/01/1yyy", "Result " + testmask.value);
  294. });
  295. qunit.test("set date 01/01/2018 max date 12/31/2017", function (assert) {
  296. var $fixture = $("#qunit-fixture");
  297. $fixture.append('<input type="text" id="testmask" />');
  298. var testmask = document.getElementById("testmask");
  299. Inputmask("datetime", {
  300. inputFormat: "mm/dd/yyyy",
  301. min: "01/01/1900",
  302. max: "12/31/2017"
  303. }).mask(testmask);
  304. testmask.focus();
  305. $("#testmask").val("01012018");
  306. assert.equal(testmask.value, "01/01/201y", "Result " + testmask.value);
  307. });
  308. qunit.test("set date 01/01/1900 min date 01/01/1900", function (assert) {
  309. var $fixture = $("#qunit-fixture");
  310. $fixture.append('<input type="text" id="testmask" />');
  311. var testmask = document.getElementById("testmask");
  312. Inputmask("datetime", {
  313. inputFormat: "mm/dd/yyyy",
  314. min: "01/01/1900",
  315. max: "12/31/2017"
  316. }).mask(testmask);
  317. testmask.focus();
  318. $("#testmask").val("01011900");
  319. assert.equal(testmask.value, "01/01/1900", "Result " + testmask.value);
  320. });
  321. qunit.test("set date 12/31/2017 max date 12/31/2017", function (assert) {
  322. var $fixture = $("#qunit-fixture");
  323. $fixture.append('<input type="text" id="testmask" />');
  324. var testmask = document.getElementById("testmask");
  325. Inputmask("datetime", {
  326. inputFormat: "mm/dd/yyyy",
  327. min: "01/01/1900",
  328. max: "12/31/2017"
  329. }).mask(testmask);
  330. testmask.focus();
  331. $("#testmask").val("12312017");
  332. assert.equal(testmask.value, "12/31/2017", "Result " + testmask.value);
  333. });
  334. qunit.test("min 02/14/1938 max 02/14/2038 enter 01011939", function (assert) {
  335. var $fixture = $("#qunit-fixture");
  336. $fixture.append('<input type="text" id="testmask" />');
  337. var testmask = document.getElementById("testmask");
  338. Inputmask("datetime", {
  339. inputFormat: "mm/dd/yyyy",
  340. min: "02/14/1938",
  341. max: "02/14/2038"
  342. }).mask(testmask);
  343. testmask.focus();
  344. $("#testmask").val("01011939");
  345. assert.equal(testmask.value, "01/01/1939", "Result " + testmask.value);
  346. });
  347. qunit.module("Date.Extensions - dd.mm.yyyy");
  348. qunit.test("valid entry", function (assert) {
  349. var $fixture = $("#qunit-fixture");
  350. $fixture.append('<input type="text" id="testmask" />');
  351. var testmask = document.getElementById("testmask");
  352. Inputmask("datetime", {
  353. inputFormat: "dd.mm.yyyy"
  354. }).mask(testmask);
  355. testmask.focus();
  356. $("#testmask").Type("2331973");
  357. assert.equal(testmask.value, "23.03.1973", "Result " + testmask.value);
  358. });
  359. qunit.test("invalid entry", function (assert) {
  360. var $fixture = $("#qunit-fixture");
  361. $fixture.append('<input type="text" id="testmask" />');
  362. var testmask = document.getElementById("testmask");
  363. Inputmask("datetime", {
  364. inputFormat: "dd.mm.yyyy"
  365. }).mask(testmask);
  366. testmask.focus();
  367. $("#testmask").Type("abcdefghijklmnop");
  368. assert.equal(testmask.value, "", "Result " + testmask.value);
  369. });
  370. qunit.test("overtype valid entry", function (assert) {
  371. var $fixture = $("#qunit-fixture");
  372. $fixture.append('<input type="text" id="testmask" />');
  373. var testmask = document.getElementById("testmask");
  374. Inputmask("datetime", {
  375. inputFormat: "dd.mm.yyyy"
  376. }).mask(testmask);
  377. testmask.focus();
  378. $("#testmask").Type("2331973");
  379. $.caret(testmask, 0, "23.03.1973".length);
  380. $("#testmask").Type("04102017");
  381. assert.equal(testmask.value, "04.10.2017", "Result " + testmask.value);
  382. });
  383. qunit.test("overtype invalid entry", function (assert) {
  384. var $fixture = $("#qunit-fixture");
  385. $fixture.append('<input type="text" id="testmask" />');
  386. var testmask = document.getElementById("testmask");
  387. Inputmask("datetime", {
  388. inputFormat: "dd.mm.yyyy"
  389. }).mask(testmask);
  390. testmask.focus();
  391. $("#testmask").Type("2331973");
  392. $.caret(testmask, 0, "23.03.1973".length);
  393. $("#testmask").Type("abcdefghijklmnop");
  394. assert.equal(testmask.value, "23.03.1973", "Result " + testmask.value);
  395. });
  396. qunit.test("insert current date", function (assert) {
  397. var $fixture = $("#qunit-fixture");
  398. $fixture.append('<input type="text" id="testmask" />');
  399. var testmask = document.getElementById("testmask");
  400. Inputmask("datetime", {
  401. inputFormat: "dd.mm.yyyy"
  402. }).mask(testmask);
  403. testmask.focus();
  404. $("#testmask").SendKey(Inputmask.keyCode.RIGHT, Inputmask.keyCode.CONTROL);
  405. var today = new Date();
  406. today = pad(today.getDate(), 2) + "." + pad(parseInt(today.getMonth()) + 1, 2) + "." + today.getFullYear();
  407. assert.equal(testmask.value, today, "Result " + testmask.value);
  408. });
  409. qunit.test("backspace year", function (assert) {
  410. var $fixture = $("#qunit-fixture");
  411. $fixture.append('<input type="text" id="testmask" />');
  412. var testmask = document.getElementById("testmask");
  413. Inputmask("datetime", {
  414. inputFormat: "dd.mm.yyyy"
  415. }).mask(testmask);
  416. testmask.focus();
  417. $("#testmask").Type("2331973");
  418. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  419. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  420. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  421. $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
  422. assert.equal(testmask.value, "23.03.yyyy", "Result " + testmask.value);
  423. });
  424. qunit.test("delete year", function (assert) {
  425. var $fixture = $("#qunit-fixture");
  426. $fixture.append('<input type="text" id="testmask" />');
  427. var testmask = document.getElementById("testmask");
  428. Inputmask("datetime", {
  429. inputFormat: "dd.mm.yyyy"
  430. }).mask(testmask);
  431. testmask.focus();
  432. $("#testmask").Type("2331973");
  433. $.caret(testmask, "23.03.".length);
  434. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  435. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  436. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  437. $("#testmask").SendKey(Inputmask.keyCode.DELETE);
  438. assert.equal(testmask.value, "23.03.yyyy", "Result " + testmask.value);
  439. });
  440. qunit.test("set date 592017", function (assert) {
  441. var $fixture = $("#qunit-fixture");
  442. $fixture.append('<input type="text" id="testmask" />');
  443. var testmask = document.getElementById("testmask");
  444. Inputmask("datetime", {
  445. inputFormat: "dd.mm.yyyy"
  446. }).mask(testmask);
  447. testmask.focus();
  448. $("#testmask").val("592017");
  449. assert.equal(testmask.value, "05.09.2017", "Result " + testmask.value);
  450. });
  451. qunit.test("set date 01.01.1800 min date 01.01.1900", function (assert) {
  452. var $fixture = $("#qunit-fixture");
  453. $fixture.append('<input type="text" id="testmask" />');
  454. var testmask = document.getElementById("testmask");
  455. Inputmask("datetime", {
  456. inputFormat: "dd.mm.yyyy",
  457. min: "01.01.1900",
  458. max: "31.12.2017"
  459. }).mask(testmask);
  460. testmask.focus();
  461. $("#testmask").val("01011800");
  462. assert.equal(testmask.value, "01.01.1yyy", "Result " + testmask.value);
  463. });
  464. qunit.test("set date 01.01.2018 max date 31.12.2017", function (assert) {
  465. var $fixture = $("#qunit-fixture");
  466. $fixture.append('<input type="text" id="testmask" />');
  467. var testmask = document.getElementById("testmask");
  468. Inputmask("datetime", {
  469. inputFormat: "dd.mm.yyyy",
  470. min: "01.01.1900",
  471. max: "31.12.2017"
  472. }).mask(testmask);
  473. testmask.focus();
  474. $("#testmask").val("01012018");
  475. assert.equal(testmask.value, "01.01.201y", "Result " + testmask.value);
  476. });
  477. qunit.test("set date 01/01/1900 min date 01/01/1900", function (assert) {
  478. var $fixture = $("#qunit-fixture");
  479. $fixture.append('<input type="text" id="testmask" />');
  480. var testmask = document.getElementById("testmask");
  481. Inputmask("datetime", {
  482. inputFormat: "dd.mm.yyyy",
  483. min: "01.01.1900",
  484. max: "31.12.2017"
  485. }).mask(testmask);
  486. testmask.focus();
  487. $("#testmask").val("01011900");
  488. assert.equal(testmask.value, "01.01.1900", "Result " + testmask.value);
  489. });
  490. qunit.test("set date 31.12.2017 max date 31.12.2017", function (assert) {
  491. var $fixture = $("#qunit-fixture");
  492. $fixture.append('<input type="text" id="testmask" />');
  493. var testmask = document.getElementById("testmask");
  494. Inputmask("datetime", {
  495. inputFormat: "dd.mm.yyyy",
  496. min: "01.01.1900",
  497. max: "31.12.2017"
  498. }).mask(testmask);
  499. testmask.focus();
  500. $("#testmask").val("31122017");
  501. assert.equal(testmask.value, "31.12.2017", "Result " + testmask.value);
  502. });
  503. qunit.test("min 14.02.1938 max 14.02.2038 enter 01011939", function (assert) {
  504. var $fixture = $("#qunit-fixture");
  505. $fixture.append('<input type="text" id="testmask" />');
  506. var testmask = document.getElementById("testmask");
  507. Inputmask("datetime", {
  508. inputFormat: "dd.mm.yyyy",
  509. min: "14.02.1938",
  510. max: "14.02.2038"
  511. }).mask(testmask);
  512. testmask.focus();
  513. $("#testmask").val("01011939");
  514. assert.equal(testmask.value, "01.01.1939", "Result " + testmask.value);
  515. });
  516. qunit.module("Date.Extensions - misc");
  517. qunit.test("HH:MM minmax 10:00 - 11:10 enter 1059", function (assert) {
  518. var $fixture = $("#qunit-fixture");
  519. $fixture.append('<input type="text" id="testmask" />');
  520. var testmask = document.getElementById("testmask");
  521. Inputmask("datetime", {
  522. inputFormat: "HH:MM",
  523. min: "10:00",
  524. max: "11:10"
  525. }).mask(testmask);
  526. testmask.focus();
  527. $("#testmask").val("1059");
  528. assert.equal(testmask.value, "10:59", "Result " + testmask.value);
  529. });
  530. qunit.test("HH:MM minmax 10:00 - 11:10 enter 1230", function (assert) {
  531. var $fixture = $("#qunit-fixture");
  532. $fixture.append('<input type="text" id="testmask" />');
  533. var testmask = document.getElementById("testmask");
  534. Inputmask("datetime", {
  535. inputFormat: "HH:MM",
  536. min: "10:00",
  537. max: "11:10"
  538. }).mask(testmask);
  539. testmask.focus();
  540. $("#testmask").val("1230");
  541. assert.equal(testmask.value, "10:MM", "Result " + testmask.value);
  542. });
  543. };