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
@@ -7,6 +7,13 @@ namespace ZB.MOM.WW.OtOpcUa.Driver.AbLegacy.Tests;
[Trait("Category", "Unit")]
public sealed class AbLegacyAddressTests
{
/// <summary>Verifies that TryParse accepts valid PCCC addresses.</summary>
/// <param name="input">The raw PCCC address string to parse.</param>
/// <param name="letter">The expected file letter.</param>
/// <param name="file">The expected file number, or null for I/O/S files.</param>
/// <param name="word">The expected word number.</param>
/// <param name="bit">The expected bit index, or null if no bit is specified.</param>
/// <param name="sub">The expected sub-element name, or null if absent.</param>
[Theory]
[InlineData("N7:0", "N", 7, 0, null, null)]
[InlineData("N7:15", "N", 7, 15, null, null)]
@@ -34,6 +41,8 @@ public sealed class AbLegacyAddressTests
a.SubElement.ShouldBe(sub);
}
/// <summary>Verifies that TryParse rejects invalid address forms.</summary>
/// <param name="input">The invalid address string to test, or null.</param>
[Theory]
[InlineData(null)]
[InlineData("")]
@@ -51,6 +60,8 @@ public sealed class AbLegacyAddressTests
AbLegacyAddress.TryParse(input).ShouldBeNull();
}
/// <summary>Verifies that ToLibplctagName correctly roundtrips addresses.</summary>
/// <param name="input">The PCCC address string to roundtrip.</param>
[Theory]
[InlineData("N7:0")]
[InlineData("F8:5")]
@@ -68,12 +79,16 @@ public sealed class AbLegacyAddressTests
// ---- Driver.AbLegacy-003: Parser tightening ----
/// <summary>Verifies that TryParse rejects addresses with both sub-element and bit index.</summary>
/// <param name="input">The PCCC address string to test.</param>
[Theory]
[InlineData("T4:0.ACC/2")] // sub-element + bit index — never valid in PCCC
[InlineData("C5:0.PRE/3")]
public void TryParse_rejects_subelement_plus_bitindex(string input) =>
AbLegacyAddress.TryParse(input).ShouldBeNull();
/// <summary>Verifies that TryParse rejects file numbers on system files (I, O, S).</summary>
/// <param name="input">The PCCC address string to test.</param>
[Theory]
[InlineData("I3:0")] // I is a system file — no file number allowed
[InlineData("O2:1")]
@@ -81,6 +96,8 @@ public sealed class AbLegacyAddressTests
public void TryParse_rejects_file_number_on_IOS_files(string input) =>
AbLegacyAddress.TryParse(input).ShouldBeNull();
/// <summary>Verifies that TryParse rejects sub-element specifications on non-structured files.</summary>
/// <param name="input">The PCCC address string to test.</param>
[Theory]
[InlineData("B3:0.DN")] // B (bit) file has no structured elements
[InlineData("N7:0.FOO")] // N (integer) file has no structured elements
@@ -89,6 +106,8 @@ public sealed class AbLegacyAddressTests
public void TryParse_rejects_subelement_on_non_structured_file(string input) =>
AbLegacyAddress.TryParse(input).ShouldBeNull();
/// <summary>Verifies that TryParse accepts sub-element specifications only on T, C, and R files.</summary>
/// <param name="input">The PCCC address string to test.</param>
[Theory]
[InlineData("T4:0.ACC")] // T, C, R are the only structured-element files
[InlineData("C5:0.PRE")]
@@ -96,6 +115,8 @@ public sealed class AbLegacyAddressTests
public void TryParse_accepts_subelement_only_on_TCR_files(string input) =>
AbLegacyAddress.TryParse(input).ShouldNotBeNull();
/// <summary>Verifies that TryParse accepts I, O, and S addresses without file numbers.</summary>
/// <param name="input">The PCCC address string to test.</param>
[Theory]
[InlineData("I:0/0")] // I/O/S without file number are valid
[InlineData("O:1/2")]