need to test if we have a datetime.time first as bool(datetime.time(0)) evaluates to False, but should be considered legitimate