# invalid date because April only has 30 days
dts <- c("2019-04-30T03:30:00", "2019-04-31T02:30:00")
dts <- as_datetimeoffset(dts)
clock::invalid_detect(dts)
clock::invalid_any(dts)
clock::invalid_count(dts)
clock::invalid_remove(dts)
clock::invalid_resolve(dts)
clock::invalid_resolve(dts, invalid = "previous")
clock::invalid_resolve(dts, invalid = "previous-day")
# non-existent time because of DST "spring forward"
if ("America/Los_Angeles" %in% OlsonNames()) {
dt <- as_datetimeoffset("2020-03-08T02:59:59[America/Los_Angeles]")
print(clock::invalid_detect(dt))
clock::invalid_resolve(dt, nonexistent = "roll-forward")
}
# incorrect UTC offsets
if ("America/New_York" %in% OlsonNames()) {
dt <- as_datetimeoffset("2020-03-08T01:59:59-08[America/New_York]")
print(clock::invalid_detect(dt))
clock::invalid_resolve(dt)
}
Run the code above in your browser using DataLab