docs: backfill XML documentation across 756 files
v2-ci / build (push) Failing after 1m43s
v2-ci / unit-tests (tests/Core/ZB.MOM.WW.OtOpcUa.Cluster.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.ControlPlane.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Runtime.Tests) (push) Has been skipped
v2-ci / unit-tests (tests/Server/ZB.MOM.WW.OtOpcUa.Security.Tests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.Host.IntegrationTests) (push) Has been skipped
v2-ci / integration (tests/Server/ZB.MOM.WW.OtOpcUa.OpcUaServer.IntegrationTests) (push) Has been skipped

Adds <summary>, <param>, <typeparam>, and <inheritdoc/> tags to public
members surfaced by commentchecker — resolves 5,847 of 5,869 issues
(99.6%) across three /fixdocs passes.
This commit is contained in:
Joseph Doherty
2026-05-28 08:10:17 -04:00
parent f9fc7dd2e1
commit 64e3fbe035
756 changed files with 9876 additions and 96 deletions
@@ -20,6 +20,7 @@ public sealed class AbCipDriverWriteTests
return (drv, factory);
}
/// <summary>Verifies that unknown reference maps to BadNodeIdUnknown status.</summary>
[Fact]
public async Task Unknown_reference_maps_to_BadNodeIdUnknown()
{
@@ -32,6 +33,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.BadNodeIdUnknown);
}
/// <summary>Verifies that non-writable tags map to BadNotWritable status.</summary>
[Fact]
public async Task Non_writable_tag_maps_to_BadNotWritable()
{
@@ -45,6 +47,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.BadNotWritable);
}
/// <summary>Verifies that successful DInt writes encode and flush values.</summary>
[Fact]
public async Task Successful_DInt_write_encodes_and_flushes()
{
@@ -60,6 +63,7 @@ public sealed class AbCipDriverWriteTests
factory.Tags["Motor1.Speed"].WriteCount.ShouldBe(1);
}
/// <summary>Verifies that bit-in-DInt writes succeed via read-modify-write.</summary>
[Fact]
public async Task Bit_in_dint_write_now_succeeds_via_RMW()
{
@@ -80,6 +84,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.Good);
}
/// <summary>Verifies that non-zero libplctag status after write maps correctly.</summary>
[Fact]
public async Task Non_zero_libplctag_status_after_write_maps_via_AbCipStatusMapper()
{
@@ -94,6 +99,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.BadTimeout);
}
/// <summary>Verifies that type mismatch surfaces BadTypeMismatch status.</summary>
[Fact]
public async Task Type_mismatch_surfaces_BadTypeMismatch()
{
@@ -119,6 +125,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.BadTypeMismatch);
}
/// <summary>Verifies that overflow surfaces BadOutOfRange status.</summary>
[Fact]
public async Task Overflow_surfaces_BadOutOfRange()
{
@@ -136,6 +143,7 @@ public sealed class AbCipDriverWriteTests
results.Single().StatusCode.ShouldBe(AbCipStatusMapper.BadOutOfRange);
}
/// <summary>Verifies that exceptions during write surface BadCommunicationError.</summary>
[Fact]
public async Task Exception_during_write_surfaces_BadCommunicationError()
{
@@ -151,6 +159,7 @@ public sealed class AbCipDriverWriteTests
drv.GetHealth().State.ShouldBe(DriverState.Degraded);
}
/// <summary>Verifies that batch write preserves order across success and failure.</summary>
[Fact]
public async Task Batch_preserves_order_across_success_and_failure()
{
@@ -182,6 +191,7 @@ public sealed class AbCipDriverWriteTests
results[3].StatusCode.ShouldBe(AbCipStatusMapper.Good);
}
/// <summary>Verifies that cancellation propagates from write operations.</summary>
[Fact]
public async Task Cancellation_propagates_from_write()
{
@@ -196,8 +206,10 @@ public sealed class AbCipDriverWriteTests
// ---- test-fake variants that exercise the real type / error handling ----
/// <summary>Test fake that uses real Convert methods to exercise type conversion errors.</summary>
private sealed class RealConvertFake(AbCipTagCreateParams p) : FakeAbCipTag(p)
{
/// <inheritdoc />
public override void EncodeValue(AbCipDataType type, int? bitIndex, object? value)
{
switch (type)
@@ -212,6 +224,7 @@ public sealed class AbCipDriverWriteTests
private sealed class ThrowingBoolBitFake(AbCipTagCreateParams p) : FakeAbCipTag(p)
{
/// <inheritdoc />
public override void EncodeValue(AbCipDataType type, int? bitIndex, object? value)
{
if (type == AbCipDataType.Bool && bitIndex is not null)
@@ -220,14 +233,18 @@ public sealed class AbCipDriverWriteTests
}
}
/// <summary>Test fake that throws on write to simulate communication errors.</summary>
private sealed class ThrowOnWriteFake(AbCipTagCreateParams p) : FakeAbCipTag(p)
{
/// <inheritdoc />
public override Task WriteAsync(CancellationToken ct) =>
Task.FromException(new InvalidOperationException("wire dropped"));
}
/// <summary>Test fake that cancels during write to simulate cancellation.</summary>
private sealed class CancelOnWriteFake(AbCipTagCreateParams p) : FakeAbCipTag(p)
{
/// <inheritdoc />
public override Task WriteAsync(CancellationToken ct) =>
Task.FromException(new OperationCanceledException());
}