docs: complete XML doc comments via fixdocs (2757 to 131 findings)
Add missing <returns>/<param>/<summary>/<typeparam> tags and clean up misused inheritdoc across 481 files so the documented API surface is complete. Documentation-only (zero code lines changed). The 131 remaining findings are inheritdoc-style warnings deliberately left to preserve hand-written implementation rationale (plan-decision notes, race-condition explanations).
This commit is contained in:
@@ -9,6 +9,8 @@ public sealed class MelsecAddressTests
|
||||
// --- X / Y hex vs octal family trap ---
|
||||
|
||||
/// <summary>Verifies that Q-series and iQR family X inputs parse as hexadecimal.</summary>
|
||||
/// <param name="x">The X input address string to parse.</param>
|
||||
/// <param name="expected">The expected discrete coil address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("X0", (ushort)0)]
|
||||
[InlineData("X9", (ushort)9)]
|
||||
@@ -22,6 +24,8 @@ public sealed class MelsecAddressTests
|
||||
=> MelsecAddress.XInputToDiscrete(x, MelsecFamily.Q_L_iQR).ShouldBe(expected);
|
||||
|
||||
/// <summary>Verifies that F-series and iQF family X inputs parse as octal.</summary>
|
||||
/// <param name="x">The X input address string to parse.</param>
|
||||
/// <param name="expected">The expected discrete coil address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("X0", (ushort)0)]
|
||||
[InlineData("X7", (ushort)7)]
|
||||
@@ -32,6 +36,8 @@ public sealed class MelsecAddressTests
|
||||
=> MelsecAddress.XInputToDiscrete(x, MelsecFamily.F_iQF).ShouldBe(expected);
|
||||
|
||||
/// <summary>Verifies that Q-series and iQR family Y outputs parse as hexadecimal.</summary>
|
||||
/// <param name="y">The Y output address string to parse.</param>
|
||||
/// <param name="expected">The expected coil address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("Y0", (ushort)0)]
|
||||
[InlineData("Y1F", (ushort)31)]
|
||||
@@ -39,6 +45,8 @@ public sealed class MelsecAddressTests
|
||||
=> MelsecAddress.YOutputToCoil(y, MelsecFamily.Q_L_iQR).ShouldBe(expected);
|
||||
|
||||
/// <summary>Verifies that F-series and iQF family Y outputs parse as octal.</summary>
|
||||
/// <param name="y">The Y output address string to parse.</param>
|
||||
/// <param name="expected">The expected coil address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("Y0", (ushort)0)]
|
||||
[InlineData("Y17", (ushort)15)]
|
||||
@@ -58,6 +66,7 @@ public sealed class MelsecAddressTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that non-octal X input addresses are rejected for F-series and iQF families.</summary>
|
||||
/// <param name="bad">An invalid X input address string that should be rejected.</param>
|
||||
[Theory]
|
||||
[InlineData("X8")] // 8 is non-octal
|
||||
[InlineData("X12G")] // G is non-hex
|
||||
@@ -65,6 +74,7 @@ public sealed class MelsecAddressTests
|
||||
=> Should.Throw<ArgumentException>(() => MelsecAddress.XInputToDiscrete(bad, MelsecFamily.F_iQF));
|
||||
|
||||
/// <summary>Verifies that non-hexadecimal X input addresses are rejected for Q-series and iQR families.</summary>
|
||||
/// <param name="bad">An invalid X input address string that should be rejected.</param>
|
||||
[Theory]
|
||||
[InlineData("X12G")]
|
||||
public void XInputToDiscrete_QLiQR_rejects_non_hex(string bad)
|
||||
@@ -84,6 +94,8 @@ public sealed class MelsecAddressTests
|
||||
// --- M-relay (decimal, both families) ---
|
||||
|
||||
/// <summary>Verifies that M relay addresses parse as decimal.</summary>
|
||||
/// <param name="m">The M relay address string to parse.</param>
|
||||
/// <param name="expected">The expected coil address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("M0", (ushort)0)]
|
||||
[InlineData("M10", (ushort)10)] // M addresses are DECIMAL, not hex or octal
|
||||
@@ -109,6 +121,8 @@ public sealed class MelsecAddressTests
|
||||
// --- D-register (decimal, both families) ---
|
||||
|
||||
/// <summary>Verifies that D register addresses parse as decimal.</summary>
|
||||
/// <param name="d">The D register address string to parse.</param>
|
||||
/// <param name="expected">The expected holding register address after parsing.</param>
|
||||
[Theory]
|
||||
[InlineData("D0", (ushort)0)]
|
||||
[InlineData("D100", (ushort)100)]
|
||||
|
||||
Reference in New Issue
Block a user