|
1 | 1 | using System.Data;
|
2 |
| -using Moq; |
| 2 | +using System.Linq; |
| 3 | +using FluentAssertions; |
3 | 4 | using Serilog.Configuration;
|
4 | 5 | using Serilog.Sinks.MSSqlServer.Configuration;
|
5 | 6 | using Serilog.Sinks.MSSqlServer.Tests.TestUtils;
|
@@ -28,7 +29,7 @@ public void ConfigureColumnOptionsReadsTraceIdColumnOptions()
|
28 | 29 | _configurationSection.TraceId.AllowNull = "false";
|
29 | 30 | _configurationSection.TraceId.DataType = "22"; // VarChar
|
30 | 31 | var columnOptions = new MSSqlServer.ColumnOptions();
|
31 |
| - |
| 32 | + |
32 | 33 | // Act
|
33 | 34 | _sut.ConfigureColumnOptions(_configurationSection, columnOptions);
|
34 | 35 |
|
@@ -56,5 +57,48 @@ public void ConfigureColumnOptionsReadsSpanIdColumnOptions()
|
56 | 57 | Assert.False(columnOptions.SpanId.AllowNull);
|
57 | 58 | Assert.Equal(SqlDbType.VarChar, columnOptions.SpanId.DataType);
|
58 | 59 | }
|
| 60 | + |
| 61 | + [Fact] |
| 62 | + public void ConfigureColumnOptionsReadsAdditionalColumnsResolveHierarchicalPropertyName() |
| 63 | + { |
| 64 | + // Arrange |
| 65 | + const string columnName = "AdditionalColumn1"; |
| 66 | + var columnConfig = new ColumnConfig |
| 67 | + { |
| 68 | + ColumnName = columnName, |
| 69 | + ResolveHierarchicalPropertyName = "false" |
| 70 | + }; |
| 71 | + _configurationSection.Columns.Add(columnConfig); |
| 72 | + var columnOptions = new MSSqlServer.ColumnOptions(); |
| 73 | + |
| 74 | + // Act |
| 75 | + _sut.ConfigureColumnOptions(_configurationSection, columnOptions); |
| 76 | + |
| 77 | + // Assert |
| 78 | + var additionalColumn1 = columnOptions.AdditionalColumns.SingleOrDefault(c => c.ColumnName == columnName); |
| 79 | + additionalColumn1.Should().NotBeNull(); |
| 80 | + additionalColumn1.ResolveHierarchicalPropertyName.Should().Be(false); |
| 81 | + } |
| 82 | + |
| 83 | + [Fact] |
| 84 | + public void ConfigureColumnOptionsDefaultsAdditionalColumnsResolveHierarchicalPropertyName() |
| 85 | + { |
| 86 | + // Arrange |
| 87 | + const string columnName = "AdditionalColumn1"; |
| 88 | + var columnConfig = new ColumnConfig |
| 89 | + { |
| 90 | + ColumnName = columnName |
| 91 | + }; |
| 92 | + _configurationSection.Columns.Add(columnConfig); |
| 93 | + var columnOptions = new MSSqlServer.ColumnOptions(); |
| 94 | + |
| 95 | + // Act |
| 96 | + _sut.ConfigureColumnOptions(_configurationSection, columnOptions); |
| 97 | + |
| 98 | + // Assert |
| 99 | + var additionalColumn1 = columnOptions.AdditionalColumns.SingleOrDefault(c => c.ColumnName == columnName); |
| 100 | + additionalColumn1.Should().NotBeNull(); |
| 101 | + additionalColumn1.ResolveHierarchicalPropertyName.Should().Be(true); |
| 102 | + } |
59 | 103 | }
|
60 | 104 | }
|
0 commit comments