public void ShouldRegisterModifyEventHandlerAndUnregister() { var receivedModifedOrders = new List <ILimitOrder>(); var newOrder = new LimitOrder("ABC", 10, 99.22d, WayEnum.Buy, 3); Action <ILimitOrder, int, double> eventHandler; eventHandler = (order, oldQuantity, oldPrice) => { receivedModifedOrders.Add(order); }; newOrder.RegisterModifyNotificationHandler(eventHandler); newOrder.Modify(11, 88.44d); newOrder.UnRegisterModifyNotificationHandler(eventHandler); newOrder.Modify(13, 12.44d); Assert.AreEqual(1, receivedModifedOrders.Count); }