816d2d35

By: Tom Sydney Kerckhove <syd@cs-syd.eu>

ical-recurrence: test that an hourly recurrence rule does not crash

recurrenceRuleDateTimeOccurrences ends in a catch-all arm that calls
error, so any calendar containing one of the three sub-daily
frequencies throws an ErrorCall from pure code.  A caller cannot catch
that through Conform, which is the whole point of recurring inside it.

Hourly, minutely and secondly are legal RFC 5545 frequencies, so this
should either recur as asserted here or, until it is implemented, fail
as an unfixable RecurrenceError.  The catch-all also hides the gap from
the exhaustiveness checker, so adding a frequency would not point here.

The four pending examples in ICal.Recurrence.RecurrenceRuleSpec already
document the missing feature; this one is about the failure mode.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 1m57s 1s 1s 1m58s 1m57s
Eval 2m51s 14s 14s 3m06s 53s
Build 3m05s 3m16s - - 11m27s
Suite 1m57s 3m31s - - 7h03m18s

Timeline

0s3m14m14m10s14m20s14m30s14m40s14m50s