예제 #1
0
        public void After_One_Subscription_Are_Removed_Event_Shoule_No_Longer_Exists()
        {
            var manager = new InMemoryEventBusSubscriptionsManager();

            manager.AddSubscription <TestIntegrationEvent, TestIntegrationEventHandler>();
            manager.RemoveSubscription <TestIntegrationEvent, TestIntegrationEventHandler>();
            Assert.False(manager.HasSubscriptionsForEvent <TestIntegrationEvent>());

            manager.AddDynamicSubscription <TestDynamicIntegrationEventHandler>(nameof(TestIntegrationEvent));
            manager.RemoveDynamicSubscription <TestDynamicIntegrationEventHandler>(nameof(TestIntegrationEvent));
            Assert.False(manager.HasSubscriptionsForEvent(nameof(TestIntegrationEvent)));
        }
            public void RemoveDynamicSubscription_HandlerNotRegistered_HandlerIsNotRemoved(
                InMemoryEventBusSubscriptionsManager sut
                )
            {
                //Arrange
                bool eventRemoved = false;

                sut.OnEventRemoved += new EventHandler <string>(delegate
                {
                    eventRemoved = true;
                });

                //Act
                sut.RemoveDynamicSubscription <TestDynamicIntegrationEventHandler>("eventName");

                //Assert
                eventRemoved.Should().BeFalse();
            }