Skip to content

Commit 674e48d

Browse files
committed
added polyline encoding oprions test
1 parent 1b78839 commit 674e48d

1 file changed

Lines changed: 50 additions & 0 deletions

File tree

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
namespace PolylineAlgorithm.Abstraction.Tests;
2+
3+
using Microsoft.Extensions.Logging;
4+
using Microsoft.Extensions.Logging.Abstractions;
5+
using Microsoft.Extensions.Logging.Testing;
6+
using static PolylineAlgorithm.Abstraction.Tests.PolylineEncoderTest;
7+
8+
[TestClass]
9+
public class PolylineEncodingOptionsTest {
10+
[TestMethod]
11+
public void Constructor_Parameterless_Ok() {
12+
// Arrange && Act
13+
var options = new PolylineEncodingOptions();
14+
15+
// Assert
16+
Assert.AreEqual(64_000, options.BufferSize);
17+
Assert.AreEqual(64_000 / sizeof(char), options.MaxLength);
18+
Assert.IsInstanceOfType<NullLoggerFactory>(options.LoggerFactory);
19+
}
20+
21+
[TestMethod]
22+
public void Constructor_ValidOptions_Ok() {
23+
// Arrange
24+
var bufferSize = 32_000;
25+
var loggerFactory = new FakeLoggerFactory(new FakeLoggerProvider());
26+
27+
// Act
28+
var options = new PolylineEncodingOptions() {
29+
BufferSize = bufferSize,
30+
LoggerFactory = loggerFactory
31+
};
32+
33+
// Assert
34+
Assert.AreEqual(bufferSize, options.BufferSize);
35+
Assert.AreEqual(bufferSize / sizeof(char), options.MaxLength);
36+
Assert.IsInstanceOfType<FakeLoggerFactory>(options.LoggerFactory);
37+
}
38+
39+
[TestMethod]
40+
public void UseLogger_Returns_Instance() {
41+
// Arrange
42+
var options = new PolylineEncodingOptions();
43+
44+
// Act
45+
var logger = options.UseLoggerFor<PolylineEncodingOptionsTest>();
46+
47+
// Assert
48+
Assert.IsInstanceOfType<ILogger>(logger);
49+
}
50+
}

0 commit comments

Comments
 (0)