| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529 |
- module("Simple masking");
- test("inputmask(\"99-99-99\", { clearMaskOnLostFocus: false}", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("99-99-99", {
- clearMaskOnLostFocus: false
- });
- equal(document.getElementById("testmask").inputmask._valueGet(), "__-__-__", "Result " + document.getElementById("testmask").inputmask._valueGet());
- $("#testmask").remove();
- });
- asyncTest("inputmask(\"99-99-99\", { clearMaskOnLostFocus: true}", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("99-99-99", {
- clearMaskOnLostFocus: true
- });
- $("#testmask").blur();
- setTimeout(function() {
- start();
- equal(document.getElementById("testmask").value, "", "Result " + document.getElementById("testmask").value);
- $("#testmask").remove();
- }, 0);
- });
- test("inputmask(\"999.999.999\")", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123");
- equal($("#testmask").val(), "123.___.___", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"999.999.999\") + backspace", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123");
- $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
- equal($("#testmask").val(), "12_.___.___", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- asyncTest("inputmask(\"999.999.999\", { oncomplete: ... })", 1, function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999", {
- oncomplete: function() {
- equal($("#testmask").val(), "123.456.789", "Result " + $("#testmask").val());
- start();
- $("#testmask").remove();
- }
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("123456789");
- });
- asyncTest("inputmask(\"9-AAA.999\") - change event", 1, function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("9-AAA.999").change(function() {
- ok(true, "Change triggered");
- start();
- $("#testmask").remove();
- });
- $("#testmask")[0].focus();
- setTimeout(function() {
- $("#testmask").Type("1abc12");
- $("#testmask").blur();
- }, 0);
- });
- asyncTest("inputmask(\"9-AAA.999\", { onincomplete: ... })", 1, function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("9-AAA.999", {
- onincomplete: function() {
- equal($("#testmask").val(), "1-ABC.12_", "Result " + $("#testmask").val());
- start();
- $("#testmask").remove();
- }
- });
- $("#testmask")[0].focus();
- setTimeout(function() {
- $("#testmask").Type("1abc12");
- $("#testmask").blur();
- }, 0);
- });
- test("inputmask(\"999.999.999\") - delete 2nd with backspace, continue the mask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123");
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
- $("#testmask").Type("4");
- $("#testmask").SendKey(Inputmask.keyCode.RIGHT);
- $("#testmask").Type("56");
- equal($("#testmask").val(), "143.56_.___", "Result " + $("#testmask").val());
- //$("#testmask").remove();
- });
- test("inputmask(\"999.999.999\") - delete 2nd with delete, continue the mask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").SendKey(49);
- $("#testmask").SendKey(50);
- $("#testmask").SendKey(51);
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").SendKey(Inputmask.keyCode.DELETE);
- $("#testmask").SendKey(52);
- $("#testmask").SendKey(Inputmask.keyCode.RIGHT);
- $("#testmask").SendKey(53);
- $("#testmask").SendKey(54);
- equal($("#testmask").val(), "143.56_.___", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"999.999.999\") - delete selection start with nomask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123456789");
- $.caret($("#testmask"), 3, 7);
- $("#testmask").SendKey(Inputmask.keyCode.DELETE);
- equal($("#testmask").val(), "123.789.___", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"999.999.999\") - backspace selection start with nomask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123456789");
- $.caret($("#testmask"), 3, 7);
- $("#testmask").SendKey(Inputmask.keyCode.DELETE);
- equal($("#testmask").val(), "123.789.___", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"999.999.999\") - overtype selection start with nomask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999.999.999");
- $("#testmask")[0].focus();
- $("#testmask").Type("123456789");
- $.caret($("#testmask"), 3, 7);
- $("#testmask").Type("1");
- equal($("#testmask").val(), "123.178.9__", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"*****\")", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("*****");
- $("#testmask")[0].focus();
- $("#testmask").Type("abe");
- $("#testmask").SendKey(Inputmask.keyCode.LEFT);
- $("#testmask").Type("cd");
- equal($("#testmask").val(), "abcde", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"d/m/y\")", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("d/m/y");
- $("#testmask")[0].focus();
- $("#testmask").Type("23031973");
- $.caret($("#testmask"), 5);
- $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
- equal($("#testmask").val(), "23/0_/1973", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"(999)999-9999\") - ruslanfedoseenko mask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("(999)999-9999");
- $("#testmask")[0].focus();
- $("#testmask").val("9999999999");
- $.caret($("#testmask"), 4, 5);
- $("#testmask").Type("7");
- equal($("#testmask").val(), "(999)999-9999", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"(999)999-9999\") - insert false - ruslanfedoseenko mask", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("(999)999-9999", {
- insertMode: false
- });
- $("#testmask")[0].focus();
- $("#testmask").val("9999999999");
- $.caret($("#testmask"), 4, 5);
- $("#testmask").Type("7");
- equal($("#testmask").val(), "(999)999-9999", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"\") - empty mask - andywolk", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("");
- $("#testmask")[0].focus();
- $("#testmask").val("123");
- equal($("#testmask").val(), "123", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("Intergroup selection - dhilt", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("dd/mm/yyyy");
- $("#testmask")[0].focus();
- $("#testmask").Type("23314");
- $.caret($("#testmask"), 4, 7);
- $("#testmask").SendKey("6");
- equal($("#testmask").val(), "23/06/y014", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("Delete selection with non-masks", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("(999)999-9999");
- $("#testmask")[0].focus();
- $("#testmask").Type("9999999999");
- $.caret($("#testmask"), 8, 11);
- $("#testmask").SendKey(Inputmask.keyCode.DELETE);
- equal($("#testmask").val(), "(999)999-99__", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("Selection and backspace also deletes previous - kenaku", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("999 99 99 999");
- $("#testmask")[0].focus();
- $("#testmask").Type("1234567890");
- $.caret($("#testmask"), 2, 3);
- $("#testmask").SendKey(Inputmask.keyCode.BACKSPACE);
- equal($("#testmask").val(), "124 56 78 90_", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- module("Non-greedy masks");
- test("inputmask(\"*\", { greedy: false, repeat: \"*\" }) - replace cd with 1", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("*", {
- greedy: false,
- repeat: "*"
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("abcdef");
- $.caret($("#testmask"), 2, 4);
- $("#testmask").SendKey("1");
- equal($("#testmask").val(), "ab1ef", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"*\", { greedy: false, repeat: \"*\" }) - type abcdef", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("*", {
- greedy: false,
- repeat: "*"
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("abcdef");
- equal($("#testmask").val(), "abcdef", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"A.\", { repeat: \"*\" }) - type abc - joostburg", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("A.", {
- repeat: "*"
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("abc");
- equal($("#testmask").val(), "A.B.C.", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("{ mask: \"A\", placeholder: \"\", repeat: 16 }) - type testtest - glosswordteam", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask({
- mask: "A",
- placeholder: "",
- repeat: 16
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("testtest");
- equal($("#testmask").val(), "TESTTEST", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("{ mask: \"A\", repeat: 16, greedy: false }) - type testtest - glosswordteam", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask({
- mask: "A",
- repeat: 16,
- greedy: false
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("testtest");
- equal($("#testmask").val(), "TESTTEST", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- module("greedy masks");
- test("inputmask(\"*\", { greedy: true, repeat: 10, clearMaskOnLostFocus: false })", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("*", {
- greedy: true,
- repeat: 10,
- clearMaskOnLostFocus: false
- });
- $("#testmask")[0].focus();
- equal($("#testmask")[0].inputmask._valueGet(), "__________", "Result " + $("#testmask")[0].inputmask._valueGet());
- $("#testmask").remove();
- });
- test("inputmask(\"*\", { greedy: true, repeat: 10 }) - type 12345678901234567890", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("*", {
- greedy: true,
- repeat: 10
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("12345678901234567890");
- equal($("#testmask").val(), "1234567890", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask(\"9,99\", { greedy: true, repeat: 5 }) - type 12345678901234567890", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("9,99", {
- greedy: true,
- repeat: 5
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("12345678901234567890");
- equal($("#testmask").val(), "1,234,567,890,123,45", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- test("inputmask({ mask: \"9\", repeat: 10, placeholder: \"\", numericInput: true }) - greedy true with empty placeholder - type 12345", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask({
- "mask": "9",
- repeat: 10,
- placeholder: "",
- numericInput: true
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("12345");
- equal($("#testmask").val(), "12345", "Result " + $("#testmask").val());
- $("#testmask").remove();
- });
- asyncTest("creditcard switch - pchelailya", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask("9999 9999 9999 9999");
- $("#testmask").on("keyup", function(event) {
- var value = $(this).inputmask("unmaskedvalue");
- if (value.length === 2 && value === "37") {
- $("input").inputmask("9999 999999 99999");
- }
- });
- $("#testmask")[0].focus();
- $("#testmask").Type("37");
- setTimeout(function() {
- $("#testmask").Type("12");
- start();
- equal($("#testmask").val(), "3712 ______ _____", "Result " + $("#testmask").val());
- $("#testmask").remove();
- }, 0);
- });
- test("maskscache - same mask diff definitions - StonesEditeurs", function() {
- var $fixture = $("#qunit-fixture");
- $fixture.append('<input type="text" id="testmask" />');
- $("#testmask").inputmask({
- mask: "Z{1,*}",
- definitions: {
- 'Z': {
- validator: function(chrs, buffer, pos, strict, opts) {
- return {
- pos: pos,
- c: 'A'
- };
- },
- }
- }
- });
- $("#testmask").inputmask({
- mask: "Z{1,*}", // <= Same mask
- definitions: {
- 'Z': {
- validator: function(chrs, buffer, pos, strict, opts) {
- return {
- pos: pos,
- c: 'B'
- }; // <= another definition
- },
- }
- }
- });
- $("#testmask").Type("abcdef");
- equal(document.getElementById("testmask").inputmask._valueGet(), "BBBBBB", "Result " + document.getElementById("testmask").inputmask._valueGet());
- $("#testmask").remove();
- });
|