public void Should_Add_Distributed_Logger_To_Configuration()
            {
                // Given
                var settings          = new DotNetCoreMSBuildSettings();
                var distributedLogger = new MSBuildDistributedLogger
                {
                    CentralLogger = new MSBuildLogger
                    {
                        Assembly   = "LoggerAssembly1",
                        Class      = "LoggerClass1",
                        Parameters = "LoggerParameters1"
                    },
                    ForwardingLogger = new MSBuildLogger
                    {
                        Assembly   = "LoggerAssembly2",
                        Class      = "LoggerClass2",
                        Parameters = "LoggerParameters2"
                    }
                };

                // When
                settings.WithDistributedLogger(distributedLogger);

                // Then
                Assert.True(settings.DistributedLoggers.Contains(distributedLogger));
            }
        /// <summary>
        /// Adds a distributed loggers to use.
        /// </summary>
        /// <param name="settings">The settings.</param>
        /// <param name="logger">The response file to add.</param>
        /// <returns>The same <see cref="DotNetMSBuildSettings"/> instance so that multiple calls can be chained.</returns>
        /// <remarks>
        /// A distributed logger consists of a central and forwarding logger. MSBuild will attach an instance of the forwarding logger to each secondary node.
        /// For more information see https://msdn.microsoft.com/en-us/library/bb383987.aspx.
        /// </remarks>
        public static DotNetMSBuildSettings WithDistributedLogger(this DotNetMSBuildSettings settings, MSBuildDistributedLogger logger)
        {
            EnsureSettings(settings);

            settings.DistributedLoggers.Add(logger);
            return(settings);
        }