Miguel, The easiest way is to provide a new signature that lets you pass in two dates. For example:
The signature adds some functionality to the class too. It allows you to calculate someone's age on a certain date. There isn't much that can go wrong in calculateAge(Date). You could always test that by having someone born today and making sure they are 0.
The meat of the logic is in calculateAgeOnGivenDate(Date, Date). This method is more testable.
I tend to add a layer between the application and the system clock and then mock the system clock for tests that depend on the current date.
In other words, I use classes/methods such as: Time.millis() instead of System.currentTimeMillis() Time.setTimeSource(TimeSource s) for replacing the real TimeSource with a fake Time.resetTimeSource() for reverting back to the real TimeSource