Ejemplo n.º 1
0
        public void LogHandler_ShouldCopyProvidedArrayOfEnabledLogLevels()
        {
            //Arrange
            LogLevel[] logLevels1 = Enum.GetValues <LogLevel>();
            LogLevel[] logLevels2 = new LogLevel[] { LogLevel.INFO };
            LogLevel[] logLevels3 = new LogLevel[0];

            TestLogHandler testLogHandler1 = new TestLogHandler(logLevels1);
            TestLogHandler testLogHandler2 = new TestLogHandler(logLevels2);
            TestLogHandler testLogHandler3 = new TestLogHandler(logLevels3);

            IReadOnlyCollection <LogLevel> testLogHandlerLogLevels1 = testLogHandler1.GetEnabledLogLevels();
            IReadOnlyCollection <LogLevel> testLogHandlerLogLevels2 = testLogHandler2.GetEnabledLogLevels();
            IReadOnlyCollection <LogLevel> testLogHandlerLogLevels3 = testLogHandler3.GetEnabledLogLevels();

            //Act

            //Assert
            Assert.NotNull(testLogHandler1.GetEnabledLogLevels());
            Assert.NotNull(testLogHandler2.GetEnabledLogLevels());
            Assert.NotNull(testLogHandler3.GetEnabledLogLevels());
            Assert.Equal(logLevels1.Length, testLogHandlerLogLevels1.Count);
            Assert.Equal(logLevels2.Length, testLogHandlerLogLevels2.Count);
            Assert.Equal(logLevels3.Length, testLogHandlerLogLevels3.Count);
            Assert.False(logLevels1.Except(testLogHandlerLogLevels1).Any());
            Assert.False(logLevels2.Except(testLogHandlerLogLevels2).Any());
            Assert.False(logLevels3.Except(testLogHandlerLogLevels3).Any());
        }