Implementation of IErrorNotificationManager that allows to addition and removal of IProgressErrorNotifier that will be notified of errors
The class is thread safe and each IProgressErrorNotifier is responsible for notifying on the correct thread
Inheritance: IErrorNotificationManager
        public void Initialize(IProgressStepFactory factory, IEnumerable<IProgressStepDefinition> stepsDefinition)
        {
            if (factory == null)
            {
                throw new ArgumentNullException(nameof(factory));
            }

            if (stepsDefinition == null)
            {
                throw new ArgumentNullException(nameof(stepsDefinition));
            }

            if (this.stepFactory != null || this.progressStepOperations != null)
            {
                throw new InvalidOperationException(ProgressResources.AlreadyInitializedException);
            }

            this.notificationManager = new ErrorNotificationManager();
            this.stepFactory = factory;
            this.progressStepOperations = this.CreateStepOperations(stepsDefinition);
        }
 public void TestCleanup()
 {
     this.serviceProvider = null;
     this.testSubject = null;
 }
 public void TestInitialize()
 {
     this.serviceProvider = new ConfigurableServiceProvider();
     this.testSubject = new ErrorNotificationManager();
 }