Revision: 4369 http://vexi.svn.sourceforge.net/vexi/?rev=4369&view=rev Author: jeffbuhrt Date: 2012-03-16 22:56:34 +0000 (Fri, 16 Mar 2012) Log Message: ----------- testcase for #65 vexi.date & vexi.js.ECMADate are [kinda] broken for leap day 2012
convert to/from 2012-03-01 work fine, but the milliseconds from 1970-01-01 is broken. The core thinks there are three days from 2/29 to 3/1. Added Paths: ----------- trunk/org.vexi-vexi.demo/src_main/org/vexi/demo/feature/testcase_leapday2012bug.t Added: trunk/org.vexi-vexi.demo/src_main/org/vexi/demo/feature/testcase_leapday2012bug.t =================================================================== --- trunk/org.vexi-vexi.demo/src_main/org/vexi/demo/feature/testcase_leapday2012bug.t (rev 0) +++ trunk/org.vexi-vexi.demo/src_main/org/vexi/demo/feature/testcase_leapday2012bug.t 2012-03-16 22:56:34 UTC (rev 4369) @@ -0,0 +1,41 @@ +<!-- Copyright 2007 - see COPYING for details [LGPL] --> + +<vexi xmlns:ui="vexi://ui" xmlns:meta="vexi://meta" + xmlns="vexi.widget" xmlns:inner="org.vexi.demo.inner" > + + static.name = "March 3/1 Leapday Test"; + static.category = "Test Cases"; + + <ui:box orient="vertical"> + + <ui:box text="See the console log for debug output" /> + var test228 = vexi.date(2012,2,28); + vexi.log.info("vexi.date(2012,2,28):" + test228.valueOf() + ", toDateString():" + test228.toDateString() + ", toString():" + test228.toString()); + + var test229 = vexi.date(2012,2,29); + vexi.log.info("vexi.date(2012,2,29):" + test229.valueOf() + ", toDateString():" + test229.toDateString() + ", toString():" + test229.toString()); + + var test31 = vexi.date(2012,3,1); + vexi.log.info("vexi.date(2012,3,1):" + test31.valueOf() + ", toDateString():" + test31.toDateString() + ", toString():" + test31.toString()); + + vexi.log.info("vexi.date(2012,2,29).valueOf() - vexi.date(2012,2,28).valueOf():" + (test229.valueOf() - test228.valueOf())); + vexi.log.info("vexi.date(2012,3,1).valueOf() - vexi.date(2012,2,28).valueOf():" + (test31.valueOf() - test228.valueOf())); + vexi.log.info("vexi.date(2012,3,1).valueOf() - vexi.date(2012,2,29).valueOf():" + (test31.valueOf() - test229.valueOf())); + + var one_day=1000*60*60*24; + var diff = test229.getTime() - test228.getTime(); + vexi.log.info("vexi.date(2012,2,29).getTime() - vexi.date(2012,2,28).getTime():" + diff + ", days:" + (diff/one_day)); + diff = test31.getTime() - test228.getTime(); + vexi.log.info("vexi.date(2012,3,1).getTime() - vexi.date(2012,2,28).getTime():" + diff + ", days:" + (diff/one_day)); + diff = test31.getTime() - test229.getTime(); + vexi.log.info("vexi.date(2012,3,1).getTime() - vexi.date(2012,2,29).getTime():" + diff + ", days:" + (diff/one_day)); + + var test228ecma = new vexi.js.ECMADate(2012,2,28); + vexi.log.info("vexi.js.ECMADate(2012,2,28).valueOf():" + test228ecma.valueOf() + ", days:" + (test228ecma.valueOf()/one_day)); + var test229ecma = new vexi.js.ECMADate(2012,2,29); + vexi.log.info("vexi.js.ECMADate(2012,2,29).valueOf():" + test229ecma.valueOf() + ", days:" + (test229ecma.valueOf()/one_day));; + var test31ecma = new vexi.js.ECMADate(2012,3,1); + vexi.log.info("vexi.js.ECMADate(2012,3,1).valueOf():" + test31ecma.valueOf() + ", days:" + (test31ecma.valueOf()/one_day)); + + </ui:box> +</vexi> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ Vexi-svn mailing list Vexi-svn@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/vexi-svn