コード例 #1
0
        public static void XUnitLogger_BeginScope_Throws_If_State_Is_Null()
        {
            // Arrange
            string name         = "MyName";
            var    outputHelper = Mock.Of <ITestOutputHelper>();
            var    options      = new XUnitLoggerOptions();
            var    logger       = new XUnitLogger(name, outputHelper, options);

            // Act
            Assert.Throws <ArgumentNullException>("state", () => logger.BeginScope(null as string));
        }
コード例 #2
0
        public static void XUnitLogger_Log_Logs_Message_If_Scopes_Included_And_There_Are_Scopes()
        {
            // Arrange
            var mock = new Mock <ITestOutputHelper>();

            string name         = "MyName";
            var    outputHelper = mock.Object;

            var options = new XUnitLoggerOptions()
            {
                Filter        = FilterTrue,
                IncludeScopes = true,
            };

            var logger = new XUnitLogger(name, outputHelper, options)
            {
                Clock = StaticClock,
            };

            string expected = string.Join(
                Environment.NewLine,
                new[] { "[2018-08-19 16:12:16Z] info: MyName[0]", "      => _ => __ => ___ => [null]", "      Message|False|False" });

            // Act
            using (logger.BeginScope("_"))
            {
                using (logger.BeginScope("__"))
                {
                    using (logger.BeginScope("___"))
                    {
                        using (logger.BeginScope(null))
                        {
                            logger.Log <string>(LogLevel.Information, 0, null, null, Formatter);
                        }
                    }
                }
            }

            // Assert
            mock.Verify((p) => p.WriteLine(expected), Times.Once());
        }
コード例 #3
0
        public static void XUnitLogger_BeginScope_Returns_Value()
        {
            // Arrange
            string name         = "MyName";
            var    outputHelper = Mock.Of <ITestOutputHelper>();
            var    options      = new XUnitLoggerOptions();
            var    logger       = new XUnitLogger(name, outputHelper, options);

            // Act
            using IDisposable actual = logger.BeginScope(true);

            // Assert
            actual.ShouldNotBeNull();
        }