/// <summary> /// Removes all the event handlers on a IHaveEvents /// This is usefull to do internally, after a clone is made, to prevent memory leaks /// </summary> /// <param name="haveEvents">IHaveEvents instance</param> /// <param name="regExPattern">Regular expression to match the even names, null for alls</param> /// <returns>number of removed event handlers</returns> public static int RemoveEventHandlers(this IHaveEvents haveEvents, string regExPattern = null) { if (haveEvents == null) { throw new ArgumentNullException(nameof(haveEvents)); } return(RemoveEventHandlersFromObject(haveEvents, regExPattern)); }
public void SetUp() { sub = Substitute.For<IHaveEvents>(); }
public void SetUp() { sub = Substitute.For <IHaveEvents>(); }
/// <summary> /// This gives an IEnumerable of IObservable for the specified EventArgs type. /// </summary> /// <param name="haveEvents"></param> /// <typeparam name="TEventArgs">Type of the EventArgs, use EventArgs to get most events</typeparam> /// <returns>IEnumerable with IObservable</returns> public static IEnumerable <IObservable <EventPattern <TEventArgs> > > EventsIn <TEventArgs>(this IHaveEvents haveEvents) where TEventArgs : class { if (haveEvents == null) { throw new ArgumentNullException(nameof(haveEvents)); } return(EventsInObject <TEventArgs>(haveEvents)); }