You need to sign in to do that
Don't have an account?
Wizrad
Datetime greater than or equal to oddity
Hi all,
I've got a simple test method, within this method I am System.debug()ing out two date time values which are almost always equal, then the next line is an assertion to see if one is >= the other one and it fails. Code is shown below.
System.debug('HERE = ' + objList[0].Start_Time__c + ' / ' + timeBeforeExecution); System.assert(objList[0].Start_Time__c >= timeBeforeExecution);
Below this is the result of the debug log.
11:04:31.274|USER_DEBUG|[56]|DEBUG|HERE = 2010-12-09 19:04:29 / 2010-12-09 19:04:29 11:04:31.274|METHOD_EXIT|[56]|System.debug(ANY) 11:04:31.274|METHOD_ENTRY|[57]|System.assert(Boolean) 11:04:31.274|EXCEPTION_THROWN|[57]|System.AssertException: Assertion Failed
If I change the assertion to == it works. Not sure why == would work but not >=. I guess as a work around I can just assert thats its > || its ==, but I was wondering if anyone had any ideas why this would be happening.
Thanks!
Looks like a Datetime field value always has a milliseconds of 0, while System.now actually captures the millisecond at the time.
All Answers
Looks like a bug
Then does this work?
Looks like a Datetime field value always has a milliseconds of 0, while System.now actually captures the millisecond at the time.