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
@@ -50,6 +50,7 @@ public sealed class CipTemplateObjectDecoderTests
return buf;
}
/// <summary>Verifies that a simple UDT with two members decodes correctly.</summary>
[Fact]
public void Simple_two_member_UDT_decodes_correctly()
{
@@ -72,6 +73,7 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members[1].Offset.ShouldBe(4);
}
/// <summary>Verifies that the struct member flag is decoded as Structure type.</summary>
[Fact]
public void Struct_member_flag_surfaces_Structure_type()
{
@@ -84,6 +86,7 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members.Single().DataType.ShouldBe(AbCipDataType.Structure);
}
/// <summary>Verifies that array members carry correct non-one array lengths.</summary>
[Fact]
public void Array_member_carries_non_one_ArrayLength()
{
@@ -95,6 +98,7 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members.Single().ArrayLength.ShouldBe(10);
}
/// <summary>Verifies that multiple atomic types preserve their offsets and type information.</summary>
[Fact]
public void Multiple_atomic_types_preserve_offsets_and_types()
{
@@ -116,6 +120,7 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members.Select(m => m.Offset).ShouldBe([0, 1, 2, 4, 8, 16]);
}
/// <summary>Verifies that unknown atomic type codes fall back to Structure type.</summary>
[Fact]
public void Unknown_atomic_type_code_falls_back_to_Structure()
{
@@ -127,6 +132,7 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members.Single().DataType.ShouldBe(AbCipDataType.Structure);
}
/// <summary>Verifies that zero member count returns null.</summary>
[Fact]
public void Zero_member_count_returns_null()
{
@@ -135,12 +141,14 @@ public sealed class CipTemplateObjectDecoderTests
CipTemplateObjectDecoder.Decode(buf).ShouldBeNull();
}
/// <summary>Verifies that a short buffer returns null.</summary>
[Fact]
public void Short_buffer_returns_null()
{
CipTemplateObjectDecoder.Decode([0x01, 0x00]).ShouldBeNull(); // only 2 bytes — less than header
}
/// <summary>Verifies that missing member names surface a placeholder.</summary>
[Fact]
public void Missing_member_name_surfaces_placeholder()
{
@@ -165,6 +173,9 @@ public sealed class CipTemplateObjectDecoderTests
shape.Members[2].Name.ShouldBe("<member_2>");
}
/// <summary>Verifies that semicolon-terminated string parsing handles various input shapes.</summary>
/// <param name="input">The raw semicolon-terminated string input.</param>
/// <param name="expected">The expected array of parsed strings.</param>
[Theory]
[InlineData("Foo;\0Bar;\0", new[] { "Foo", "Bar" })]
[InlineData("Foo;Bar;", new[] { "Foo", "Bar" })] // no nulls