From 2e6d38f0681b680dfbd2e053a724da5e7f6cc9a3 Mon Sep 17 00:00:00 2001 From: niv-openerp Date: Thu, 8 Aug 2013 15:45:20 +0200 Subject: [IMP] Moved the date formatting functions in openerpframework.js bzr revid: nicolas.vanhoren@openerp.com-20130808134520-v0n2b29vuffstyu0 --- addons/web/static/test/framework.js | 78 +++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) (limited to 'addons/web/static/test/framework.js') diff --git a/addons/web/static/test/framework.js b/addons/web/static/test/framework.js index 23ed5be6653..3619ab87e65 100644 --- a/addons/web/static/test/framework.js +++ b/addons/web/static/test/framework.js @@ -401,4 +401,82 @@ ropenerp.testing.section('Widget.events', { }); }); +ropenerp.testing.section('server-formats', { + dependencies: ['web.core', 'web.dates'] +}, function (test) { + test('Parse server datetime', function () { + var date = openerp.str_to_datetime("2009-05-04 12:34:23"); + deepEqual( + [date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), + date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds()], + [2009, 5 - 1, 4, 12, 34, 23]); + deepEqual( + [date.getFullYear(), date.getMonth(), date.getDate(), + date.getHours(), date.getMinutes(), date.getSeconds()], + [2009, 5 - 1, 4, 12 - (date.getTimezoneOffset() / 60), 34, 23]); + + var date2 = openerp.str_to_datetime('2011-12-10 00:00:00'); + deepEqual( + [date2.getUTCFullYear(), date2.getUTCMonth(), date2.getUTCDate(), + date2.getUTCHours(), date2.getUTCMinutes(), date2.getUTCSeconds()], + [2011, 12 - 1, 10, 0, 0, 0]); + + var date3 = openerp.str_to_datetime("2009-05-04 12:34:23.84565"); + deepEqual( + [date3.getUTCFullYear(), date3.getUTCMonth(), date3.getUTCDate(), + date3.getUTCHours(), date3.getUTCMinutes(), date3.getUTCSeconds(), date3.getUTCMilliseconds()], + [2009, 5 - 1, 4, 12, 34, 23, 845]); + }); + test('Parse server date', function () { + var date = openerp.str_to_date("2009-05-04"); + deepEqual( + [date.getFullYear(), date.getMonth(), date.getDate()], + [2009, 5 - 1, 4]); + }); + test('Parse server time', function () { + var date = openerp.str_to_time("12:34:23"); + deepEqual( + [date.getHours(), date.getMinutes(), date.getSeconds()], + [12, 34, 23]); + + date = openerp.str_to_time("12:34:23.5467"); + deepEqual( + [date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()], + [12, 34, 23, 546]); + }); + test('Format server datetime', function () { + var date = new Date(); + date.setUTCFullYear(2009); + date.setUTCMonth(5 - 1); + date.setUTCDate(4); + date.setUTCHours(12); + date.setUTCMinutes(34); + date.setUTCSeconds(23); + equal(openerp.datetime_to_str(date), "2009-05-04 12:34:23"); + }); + test('Format server date', function () { + var date = new Date(); + date.setUTCFullYear(2009); + date.setUTCMonth(5 - 1); + date.setUTCDate(4); + date.setUTCHours(0); + date.setUTCMinutes(0); + date.setUTCSeconds(0); + equal(openerp.date_to_str(date), "2009-05-04"); + }); + test('Format server time', function () { + var date = new Date(); + date.setUTCFullYear(1970); + date.setUTCMonth(1 - 1); + date.setUTCDate(1); + date.setUTCHours(0); + date.setUTCMinutes(0); + date.setUTCSeconds(0); + date.setHours(12); + date.setMinutes(34); + date.setSeconds(23); + equal(openerp.time_to_str(date), "12:34:23"); + }); +}); + })(); -- cgit v1.2.3