Skip to content

Commit 0b2b5fd

Browse files
committed
updated logging, tests
1 parent 6c945ef commit 0b2b5fd

3 files changed

Lines changed: 10 additions & 7 deletions

File tree

src/PolylineAlgorithm.Abstraction/AbstractPolylineEncoder.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,12 @@ public TPolyline Encode(IEnumerable<TCoordinate> coordinates) {
8282
throw new InternalBufferOverflowException();
8383
}
8484

85-
if (!PolylineEncoding.TryWriteValue(variance.Latitude, ref buffer, ref position)
86-
|| !PolylineEncoding.TryWriteValue(variance.Longitude, ref buffer, ref position)
85+
if (PolylineEncoding.TryWriteValue(variance.Latitude, ref buffer, ref position)
86+
|| PolylineEncoding.TryWriteValue(variance.Longitude, ref buffer, ref position)
8787
) {
8888
// This shouldn't happen, but if it does, log the error and throw an exception.
8989
Options
90-
.UseLoggerFor<AbstractPolylineEncoder<TCoordinate, TPolyline>>().LogCannotWriteValueToBufferError(position);
90+
.UseLoggerFor<AbstractPolylineEncoder<TCoordinate, TPolyline>>().LogCannotWriteValueToBufferError(position, consumed);
9191
throw new InvalidOperationException();
9292
}
9393

src/PolylineAlgorithm.Abstraction/Internal/Logging.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ internal static partial class Logging {
1212
[LoggerMessage(3, LogLevel.Error, "Internal buffer has {bufferLength} length. At position {position} is required additional {requiredSpace} length.")]
1313
internal static partial void LogInternalBufferOverflowError(this ILogger logger, int position, int bufferLength, int requiredSpace);
1414

15-
[LoggerMessage(4, LogLevel.Error, "Cannot write to internal buffer at position {position}.")]
16-
internal static partial void LogCannotWriteValueToBufferError(this ILogger logger, int position);
15+
[LoggerMessage(4, LogLevel.Error, "Cannot write to internal buffer at position {position}. Current coordinate index is {coordinateIndex}")]
16+
internal static partial void LogCannotWriteValueToBufferError(this ILogger logger, int position, int coordinateIndex);
1717

1818
[LoggerMessage(5, LogLevel.Error, "Argument {argumentName} is too short. Minimal length is {minimumLength}. Actual length is {actualLength}.")]
1919
internal static partial void LogPolylineCannotBeShorterThanError(this ILogger logger, string argumentName, int actualLength, int minimumLength);

tests/PolylineAlgorithm.Abstraction.Tests/Internal/LoggingTest.cs

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,16 +73,19 @@ public void ILogger_LogInternalBufferOverflowError_Ok() {
7373
public void ILogger_LogCannotWriteValueToBufferError_Ok() {
7474
// Arrange
7575
int position = 5;
76+
int index = 1;
7677

7778
// Act
7879
_loggerFactory
7980
.CreateLogger<LoggingTest>()
80-
.LogCannotWriteValueToBufferError(position);
81+
.LogCannotWriteValueToBufferError(position, index);
8182

8283
// Assert
8384
Assert.AreEqual(4, _loggerProvider.Collector.LatestRecord.Id);
8485
Assert.AreEqual(LogLevel.Error, _loggerProvider.Collector.LatestRecord.Level);
85-
Assert.AreEqual($"Cannot write to internal buffer at position {position}.", _loggerProvider.Collector.LatestRecord.Message);
86+
Assert.AreEqual(
87+
$"Cannot write to internal buffer at position {position}. Current coordinate index is {index}.",
88+
_loggerProvider.Collector.LatestRecord.Message);
8689
}
8790

8891
[TestMethod]

0 commit comments

Comments
 (0)