tests: fix DateTime.isPast() under pinDateTime

When under a pinDateTime context, d.isPast() was comparing d with the
actual current date, not the fake date from the pinned context.

Also, make the methods class methods, so that they can be used as
external methods in Zelenium tests.
6 jobs for fix/pinDateTime
in 0 seconds, using 0 compute credits, and was queued for 0 seconds