X-Git-Url: http://wagnertech.de/git?p=kivitendo-erp.git;a=blobdiff_plain;f=js%2Ft%2Fkivi%2Fparse_format_date.js;fp=js%2Ft%2Fkivi%2Fparse_format_date.js;h=121d43e626b4642d4556fe77d3a55f307ad8bd27;hp=b488b1ed6e046173fb1887ee28f9e4b687e4cb50;hb=53593baa211863fbf66540cf1bcc36c8fb37257f;hpb=deb4d2dbb676d7d6f69dfe7815d6e0cb09bd4a44 diff --git a/js/t/kivi/parse_format_date.js b/js/t/kivi/parse_format_date.js index b488b1ed6..121d43e62 100644 --- a/js/t/kivi/parse_format_date.js +++ b/js/t/kivi/parse_format_date.js @@ -1,3 +1,12 @@ +function today() { + var today = new Date(); + today.setMilliseconds(0); + today.setSeconds(0); + today.setMinutes(0); + today.setHours(0); + return today; +}; + QUnit.test("kivi.parse_date function for German date style with dots", function( assert ) { kivi.setup_formats({ dates: "dd.mm.yy" }); @@ -12,7 +21,22 @@ QUnit.test("kivi.parse_date function for German date style with dots", function( assert.deepEqual(kivi.parse_date("25.12."), new Date((new Date).getFullYear(), 11, 25)); assert.deepEqual(kivi.parse_date("25.12"), new Date((new Date).getFullYear(), 11, 25)); + assert.deepEqual(kivi.parse_date("2512"), new Date((new Date).getFullYear(), 11, 25)); + assert.deepEqual(kivi.parse_date("25122015"), new Date(2015, 11, 25)); + assert.deepEqual(kivi.parse_date("251215"), new Date(2015, 11, 25)); + assert.deepEqual(kivi.parse_date("25"), new Date((new Date).getFullYear(), (new Date).getMonth(), 25)); + assert.deepEqual(kivi.parse_date("1"), new Date((new Date).getFullYear(), (new Date).getMonth(), 1)); + assert.deepEqual(kivi.parse_date("01"), new Date((new Date).getFullYear(), (new Date).getMonth(), 1)); + assert.deepEqual(kivi.parse_date("Totally Invalid!"), undefined); + assert.deepEqual(kivi.parse_date(":"), undefined); + assert.deepEqual(kivi.parse_date("::"), undefined); + assert.deepEqual(kivi.parse_date("."), today()); + assert.deepEqual(kivi.parse_date(".."), today()); + assert.deepEqual(kivi.parse_date(""), null); + assert.deepEqual(kivi.parse_date("0"), new Date()); + assert.deepEqual(kivi.parse_date("00"), new Date()); + assert.deepEqual(kivi.parse_date("29.02.20008"), undefined); }); QUnit.test("kivi.parse_date function for German date style with slashes", function( assert ) { @@ -29,6 +53,9 @@ QUnit.test("kivi.parse_date function for German date style with slashes", functi assert.deepEqual(kivi.parse_date("25/12/"), new Date((new Date).getFullYear(), 11, 25)); assert.deepEqual(kivi.parse_date("25/12"), new Date((new Date).getFullYear(), 11, 25)); + assert.deepEqual(kivi.parse_date("/"), today()); + assert.deepEqual(kivi.parse_date("//"), today()); + assert.deepEqual(kivi.parse_date("Totally Invalid!"), undefined); }); @@ -46,6 +73,9 @@ QUnit.test("kivi.parse_date function for American date style", function( assert assert.deepEqual(kivi.parse_date("12/25/"), new Date((new Date).getFullYear(), 11, 25)); assert.deepEqual(kivi.parse_date("12/25"), new Date((new Date).getFullYear(), 11, 25)); + assert.deepEqual(kivi.parse_date("/"), today()); + assert.deepEqual(kivi.parse_date("//"), today()); + assert.deepEqual(kivi.parse_date("Totally Invalid!"), undefined); }); @@ -100,5 +130,18 @@ QUnit.test("kivi.format_date function for ISO date style", function( assert ) { assert.deepEqual(kivi.format_date(new Date(2008, 1, 29)), "2008-02-29"); assert.deepEqual(kivi.format_date(new Date(2014, 11, 11)), "2014-12-11"); + assert.deepEqual(kivi.parse_date("1225"), new Date((new Date).getFullYear(), 11, 25)); + assert.deepEqual(kivi.parse_date("20151225"), new Date(2015, 11, 25)); + assert.deepEqual(kivi.parse_date("151225"), new Date(2015, 11, 25)); + assert.deepEqual(kivi.parse_date("25"), new Date((new Date).getFullYear(), (new Date).getMonth(), 25)); + assert.deepEqual(kivi.parse_date("1"), new Date((new Date).getFullYear(), (new Date).getMonth(), 1)); + assert.deepEqual(kivi.parse_date("01"), new Date((new Date).getFullYear(), (new Date).getMonth(), 1)); + + assert.deepEqual(kivi.parse_date("0"), new Date()); + assert.deepEqual(kivi.parse_date("00"), new Date()); + + assert.deepEqual(kivi.parse_date("-"), today()); + assert.deepEqual(kivi.parse_date("--"), today()); + assert.deepEqual(kivi.format_date(new Date(undefined, undefined, undefined)), undefined); });