public void Verify_Source_Is_Unregistered_On_Unregistration()
        {
            var registry = new NewsSourceRegistry <NewsSource>();
            var source   = registry.Register("source1");

            registry.Unregister("source1");
            Assert.True(!registry.IsRegistered("source1"));
            Assert.True(!registry.IsRegistered(source.Id));
        }
        public void Verify_Unregister_Event_Is_Not_Raised_Without_Unregistration()
        {
            var eventRaised = false;
            var registry    = new NewsSourceRegistry <NewsSource>();

            registry.OnSourceUnregistered += (o, e) => eventRaised = true;
            registry.Unregister("source");
            Assert.True(!eventRaised);
        }
        public void Verify_Unregister_Event_Is_Raised_On_Successful_Unregistration()
        {
            var eventRaised = false;
            var registry    = new NewsSourceRegistry <NewsSource>();

            registry.Register("source");
            registry.OnSourceUnregistered += (o, e) => eventRaised = true;
            registry.Unregister("source");
            Assert.True(eventRaised);
        }