I tried replacing this with `spyOn` but DynamicObjectCollection re-uses arrays for each event (to avoid unnecessary GCing).  Since `toHaveBeenCalledWith` keeps a reference to the array rather than a copy, the information I need to check is already gone by that point.  I'd be happy to simplify these tests in the future (and after talking to you about possible better ways to do it), but I think I can just do that in a different pull requests