public async Task WritesLogEventWrapperModelToJson(LogLevel testLogLevel)
        {
            // Arrange
            var AddMessageAsyncWasCalled = false;

            var testLogEntryModel = new LogEntryModel {
                Details = "UnitTest"
            };

            var expectedWrapperModel = new LogEventWrapperModel
            {
                ApplicationName = testApplicationName, LogLevel = testLogLevel, LogEntry = testLogEntryModel
            };

            mockQueue.Setup(c => c.AddMessageAsync(It.IsAny <string>()))
            .Callback(
                (string message) =>
            {
                var actualWrapper = JsonConvert.DeserializeObject <LogEventWrapperModel>(message);

                // Assert
                expectedWrapperModel.Compare(actualWrapper);

                AddMessageAsyncWasCalled = true;
            })
            .Returns(Task.CompletedTask);

            // Act
            var logger = mockLogEventLoggerProvider.Object;
            await logger.WriteAsync(testLogLevel, testLogEntryModel);

            // Assert
            Assert.IsTrue(AddMessageAsyncWasCalled);
        }
예제 #2
0
        public async Task WriteAsync(LogLevel logLevel, LogEntryModel logEntry)
        {
            var wrapper = new LogEventWrapperModel
            {
                ApplicationName = ApplicationName, LogLevel = logLevel, LogEntry = logEntry
            };

            await queue.AddMessageAsync(wrapper);
        }