Issue
I have a JUnit test that fails because the milliseconds are different. In this case I don't care about the milliseconds. How can I change the precision of the assert to ignore milliseconds (or any precision I would like it set to)?
Example of a failing assert that I would like to pass:
Date dateOne = new Date();
dateOne.setTime(61202516585000L);
Date dateTwo = new Date();
dateTwo.setTime(61202516585123L);
assertEquals(dateOne, dateTwo);
Solution
Use a DateFormat
object with a format that shows only the parts you want to match and do an assertEquals()
on the resulting Strings. You can also easily wrap that in your own assertDatesAlmostEqual()
method.
Answered By - Joachim Sauer
Answer Checked By - Marie Seifert (JavaFixing Admin)