Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,9 @@

namespace Duende.IdentityServer.Licensing.V2.Diagnostics;

internal class DiagnosticSummary(IEnumerable<IDiagnosticEntry> entries, IdentityServerOptions options, ILogger<DiagnosticSummary> logger)
internal class DiagnosticSummary(IEnumerable<IDiagnosticEntry> entries, IdentityServerOptions options, ILoggerFactory loggerFactory)
{
private readonly ILogger _logger = loggerFactory.CreateLogger("Duende.IdentityServer.Diagnostics.Summary");
public async Task PrintSummary()
{
var bufferWriter = new ArrayBufferWriter<byte>();
Expand Down Expand Up @@ -39,12 +40,12 @@ public async Task PrintSummary()
var offset = i * chunkSize;
var length = Math.Min(chunkSize, span.Length - offset);
var chunk = span.Slice(offset, length);
logger.DiagnosticSummaryLogged(i + 1, totalChunks, Encoding.UTF8.GetString(chunk));
_logger.DiagnosticSummaryLogged(i + 1, totalChunks, Encoding.UTF8.GetString(chunk));
}
}
else
{
logger.DiagnosticSummaryLogged(1, 1, Encoding.UTF8.GetString(bufferWriter.WrittenSpan));
_logger.DiagnosticSummaryLogged(1, 1, Encoding.UTF8.GetString(bufferWriter.WrittenSpan));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public class DiagnosticSummaryTests
[Fact]
public async Task PrintSummary_ShouldCallWriteAsyncOnEveryDiagnosticEntry()
{
var fakeLogger = new NullLogger<DiagnosticSummary>();
var logger = new NullLogger<DiagnosticSummary>();
var firstDiagnosticEntry = new TestDiagnosticEntry();
var secondDiagnosticEntry = new TestDiagnosticEntry();
var thirdDiagnosticEntry = new TestDiagnosticEntry();
Expand All @@ -25,7 +25,7 @@ public async Task PrintSummary_ShouldCallWriteAsyncOnEveryDiagnosticEntry()
secondDiagnosticEntry,
thirdDiagnosticEntry
};
var summary = new DiagnosticSummary(entries, new IdentityServerOptions(), fakeLogger);
var summary = new DiagnosticSummary(entries, new IdentityServerOptions(), new StubLoggerFactory(logger));

await summary.PrintSummary();

Expand All @@ -42,7 +42,7 @@ public async Task PrintSummary_ShouldChunkLargeOutput()

var logger = new FakeLogger<DiagnosticSummary>();
var diagnosticEntry = new LongDiagnosticEntry { OutputLength = chunkSize * 2 };
var summary = new DiagnosticSummary([diagnosticEntry], options, logger);
var summary = new DiagnosticSummary([diagnosticEntry], options, new StubLoggerFactory(logger));

await summary.PrintSummary();

Expand All @@ -61,7 +61,7 @@ public async Task PrintSummary_ShouldChunkLargeOutputOfMultibyteCharacters()

var logger = new FakeLogger<DiagnosticSummary>();
var diagnosticEntry = new LongDiagnosticEntry { OutputLength = 2, OutputCharacter = '€' };
var summary = new DiagnosticSummary([diagnosticEntry], options, logger);
var summary = new DiagnosticSummary([diagnosticEntry], options, new StubLoggerFactory(logger));

await summary.PrintSummary();

Expand All @@ -76,7 +76,7 @@ public async Task PrintSummary_ShouldCreateChunksWithMaxSizeEightKB()

var logger = new FakeLogger<DiagnosticSummary>();
var diagnosticEntry = new LongDiagnosticEntry { OutputLength = options.Diagnostics.ChunkSize * 2 };
var summary = new DiagnosticSummary([diagnosticEntry], options, logger);
var summary = new DiagnosticSummary([diagnosticEntry], options, new StubLoggerFactory(logger));

await summary.PrintSummary();
foreach (var entry in logger.Collector.GetSnapshot())
Expand All @@ -91,7 +91,7 @@ public async Task PrintSummary_ShouldIncludeLogEventId()
var options = new IdentityServerOptions();
var logger = new FakeLogger<DiagnosticSummary>();
var diagnosticEntry = new LongDiagnosticEntry { OutputLength = 100000 };
var summary = new DiagnosticSummary([diagnosticEntry], options, logger);
var summary = new DiagnosticSummary([diagnosticEntry], options, new StubLoggerFactory(logger));

await summary.PrintSummary();

Expand Down
Loading