コード例 #1
0
        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);
        }