69071950

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

ical-recurrence: test that a UTC ExceptionDateTimes excludes an instance of a zoned event

The value type of EXDATE must match that of DTSTART, so this calendar
does not conform.  Other implementors do emit it though, and dealing
with other implementors' failures to comply with the spec is one of this
library's goals.

Because removeExceptionDatetimes matches DateTime values structurally,
the EXDATE is discarded by a catch-all arm that does not even emit a
fixable error, so nothing tells the caller their exception did nothing.
Excluding the instance, or reporting a fixable error, are both fine;
silently keeping it is not.

Suite timing

Time to Start Worker time Duration Time to finish Idle
Config 1m57s 1s 1s 1m58s 1m57s
Eval 2m44s 17s 17s 3m02s 45s
Build 3m01s 3m14s - - 10m41s
Suite 1m57s 3m33s - - 3h00m29s

Timeline

0s2m50s3m13m20s13m30s13m40s13m50s14m