public static IDataProgressTrackerService Create()
        {
            var mock = new Mock <IDataProgressTrackerService>();

            mock.Setup(s => s.RegisterOutputDataSource(It.IsAny <IProgressTrackerOutputDataSource>()))
            .Returns(IDataProgressTrackerServiceRegistrationFactory.Create());

            return(mock.Object);
        }
        public static IDataProgressTrackerService ImplementNotifyOutputDataCalculated(Action <IImmutableDictionary <NamedIdentity, IComparable> > action)
        {
            var registration = IDataProgressTrackerServiceRegistrationFactory.ImplementNotifyOutputDataCalculated(action);

            var mock = new Mock <IDataProgressTrackerService>();

            mock.Setup(s => s.RegisterOutputDataSource(It.IsAny <IProgressTrackerOutputDataSource>()))
            .Returns(registration);

            return(mock.Object);
        }