using System; using System.Threading; using System.Threading.Tasks; using Implab.Components; using Implab.Diagnostics; using Xunit; namespace Implab.Test { public class DiagnosticsTest { class Foo {} [Fact] public void TestRegistration() { var channel = TraceSourceChannel.Default; Assert.Equal(typeof(Foo), channel.Id); Assert.Equal(typeof(Foo).FullName, channel.Source.Name); TraceSourceChannel found = null; int visited = 0; TraceRegistry.Global.Subscribe(x => { visited++; found = x as TraceSourceChannel; }); Assert.Equal(1,visited); Assert.Equal(channel, found); } } }