Inheritance: MetroLog.Targets.Target
コード例 #1
0
ファイル: LoggerTests.cs プロジェクト: onovotny/MetroLog
 static Tuple<Logger, TestTarget> CreateTarget()
 {
     var testTarget = new TestTarget();
     var config = new LoggingConfiguration();
     config.AddTarget(LogLevel.Trace, LogLevel.Fatal, testTarget);
     
     return Tuple.Create(new Logger("Foobar", config), testTarget);
 }
コード例 #2
0
ファイル: LevelTests.cs プロジェクト: onovotny/MetroLog
        Tuple<ILogManager, TestTarget> CreateWithLevel(LogLevel min, LogLevel max)
        {
            var testTarget = new TestTarget();

            var config = new LoggingConfiguration();
            config.AddTarget(min, max, testTarget);

            return Tuple.Create<ILogManager, TestTarget>(new LogManager(config), testTarget);
        }
コード例 #3
0
ファイル: LoggerTests.cs プロジェクト: xmaux72/MetroLog
        static Tuple <Logger, TestTarget> CreateTarget()
        {
            var testTarget = new TestTarget();
            var config     = new LoggingConfiguration();

            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, testTarget);

            return(Tuple.Create(new Logger("Foobar", config), testTarget));
        }
コード例 #4
0
        private Tuple <ILogManager, TestTarget> CreateWithLevel(LogLevel min, LogLevel max)
        {
            var testTarget = new TestTarget();

            var config = new LoggingConfiguration();

            config.AddTarget(min, max, testTarget);

            return(Tuple.Create <ILogManager, TestTarget>(new LogManagerBase(config), testTarget));
        }
コード例 #5
0
ファイル: LoggerTests.cs プロジェクト: mqmanpsy/MetroLog
        private static Tuple<ILoggerAsync, TestTarget> CreateTarget()
        {
            var testTarget = new TestTarget();
            var config = new LoggingConfiguration();
            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, testTarget);

            var type = Type.GetType("MetroLog.Internal.Logger, MetroLog");

            var ctor = type.GetConstructors().First();

            var created = ctor.Invoke(new object[]{"Foobar", config});
            return Tuple.Create((ILoggerAsync)created, testTarget);
        }
コード例 #6
0
        public async Task TestBrokenTarget()
        {
            var testTarget = new TestTarget();

            var config = new LoggingConfiguration();
            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, new BrokenTarget());
            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, testTarget);

            var target = new LogManagerBase(config);

            // this should ignore errors in the broken target and flip down to the working target...
            var logger = (Logger)target.GetLogger("Foobar");
            await logger.TraceAsync("Hello, world.");

            // check...
            Assert.Equal(1, testTarget.NumWritten);
            Assert.Equal(LogLevel.Trace, testTarget.LastWritten.Level);
            Assert.Null(testTarget.LastWritten.Exception);
        }
コード例 #7
0
        public async Task TestBrokenTarget()
        {
            var testTarget = new TestTarget();

            var config = new LoggingConfiguration();

            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, new BrokenTarget());
            config.AddTarget(LogLevel.Trace, LogLevel.Fatal, testTarget);

            var target = new LogManagerBase(config);

            // this should ignore errors in the broken target and flip down to the working target...
            var logger = (Logger)target.GetLogger("Foobar");
            await logger.TraceAsync("Hello, world.");

            // check...
            Assert.Equal(1, testTarget.NumWritten);
            Assert.Equal(LogLevel.Trace, testTarget.LastWritten.Level);
            Assert.Null(testTarget.LastWritten.Exception);
        }