docs(tests): fix CommentChecker findings across tests/ — 13,392 → 0 (repo-wide scan clean)
Comment/XML-doc changes only: - add summaries to ~10k test methods, fixtures, fakes and helpers (+ <param> on theories, <returns> on async Task methods, <inheritdoc/> on interface implementations the checker can resolve) - strip ~2.6k project-tracking references (WP*, P*-*, row-NN, Task N, #NN, Component-0NN) from comments, keeping the explanatory text; reword false positives in comments only - real docs on fakes implementing BCL/library interfaces (IDisposable, ILogger, IOptionsMonitor, IAsyncLifetime) - reword the last 5 src/ false positives (CWE-1236, failures-1, year-0001, M365) Only non-comment edits: four one-line nested classes split across lines so members can carry docs. Build 0 errors / 0 warnings.
This commit is contained in:
+5
-1
@@ -5,12 +5,14 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Tests.Interfaces.Protocol;
|
||||
/// <summary>
|
||||
/// Single-source-of-truth coverage for <see cref="AlarmCapableProtocols.IsAlarmCapable"/>.
|
||||
/// The OpcUa/MxGateway literal set previously lived inline in the Central UI
|
||||
/// (TemplateEdit / InstanceConfigure); #53 collapsed those copies into this helper,
|
||||
/// (TemplateEdit / InstanceConfigure); those copies were collapsed into this helper,
|
||||
/// so the literal set is pinned here rather than against page markup. Keep this in
|
||||
/// sync with the alarm-subscribable adapters registered in DataConnectionFactory.
|
||||
/// </summary>
|
||||
public class AlarmCapableProtocolsTests
|
||||
{
|
||||
/// <summary>Verifies that alarm-subscribable protocols are reported as alarm capable.</summary>
|
||||
/// <param name="protocol">The protocol name under test.</param>
|
||||
[Theory]
|
||||
[InlineData("OpcUa")]
|
||||
[InlineData("opcua")] // case-insensitive — matches DataConnectionFactory's OrdinalIgnoreCase key lookup
|
||||
@@ -22,6 +24,8 @@ public class AlarmCapableProtocolsTests
|
||||
Assert.True(AlarmCapableProtocols.IsAlarmCapable(protocol));
|
||||
}
|
||||
|
||||
/// <summary>Verifies that non-alarm-capable, null or blank protocols are not reported as alarm capable.</summary>
|
||||
/// <param name="protocol">The protocol name under test.</param>
|
||||
[Theory]
|
||||
[InlineData(null)]
|
||||
[InlineData("")]
|
||||
|
||||
+4
-1
@@ -6,11 +6,13 @@ using ICentralAuditWriter = ZB.MOM.WW.ScadaBridge.Commons.Interfaces.Services.IC
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Tests.Interfaces.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Reflection-level contract guards for the Audit Log (#23) writer interfaces.
|
||||
/// Reflection-level contract guards for the Audit Log writer interfaces.
|
||||
/// Locks in method signature so DI bindings + adapter implementations stay aligned.
|
||||
/// </summary>
|
||||
public class AuditWriterContractTests
|
||||
{
|
||||
/// <summary>Verifies that the writer interface exposes <c>WriteAsync</c> with the expected signature.</summary>
|
||||
/// <param name="writerType">The writer interface type under test.</param>
|
||||
[Theory]
|
||||
[InlineData(typeof(IAuditWriter))]
|
||||
[InlineData(typeof(ICentralAuditWriter))]
|
||||
@@ -27,6 +29,7 @@ public class AuditWriterContractTests
|
||||
Assert.True(parameters[1].HasDefaultValue);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that the site and central audit writer interfaces are distinct types.</summary>
|
||||
[Fact]
|
||||
public void IAuditWriter_AndICentralAuditWriter_AreDistinctTypes()
|
||||
{
|
||||
|
||||
+4
-2
@@ -3,7 +3,7 @@ using ZB.MOM.WW.ScadaBridge.Commons.Interfaces.Services;
|
||||
namespace ZB.MOM.WW.ScadaBridge.Commons.Tests.Interfaces.Services;
|
||||
|
||||
/// <summary>
|
||||
/// Tests for <see cref="ExternalCallResult"/>, in particular the Commons-021
|
||||
/// Tests for <see cref="ExternalCallResult"/>, in particular the
|
||||
/// thread-safe lazy parse of <c>Response</c>. The pre-fix implementation used
|
||||
/// two mutable fields (<c>_response</c>/<c>_responseParsed</c>) with no
|
||||
/// synchronization, so concurrent readers could each construct a fresh
|
||||
@@ -14,6 +14,7 @@ namespace ZB.MOM.WW.ScadaBridge.Commons.Tests.Interfaces.Services;
|
||||
/// </summary>
|
||||
public class ExternalCallResultTests
|
||||
{
|
||||
/// <summary>Verifies that a null or empty response JSON yields a null response.</summary>
|
||||
[Fact]
|
||||
public void Response_NullOrEmptyJson_ReturnsNull()
|
||||
{
|
||||
@@ -24,6 +25,7 @@ public class ExternalCallResultTests
|
||||
Assert.Null(withEmpty.Response);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that the response JSON is parsed into a dynamic element.</summary>
|
||||
[Fact]
|
||||
public void Response_ParsesJsonIntoDynamicElement()
|
||||
{
|
||||
@@ -37,7 +39,7 @@ public class ExternalCallResultTests
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Commons-021: concurrent readers must observe the same parsed instance
|
||||
/// Concurrent readers must observe the same parsed instance
|
||||
/// (a `Lazy<T>` invariant). Under the pre-fix code two threads could
|
||||
/// both produce a fresh `DynamicJsonElement` and one would win the race —
|
||||
/// `ReferenceEquals` would then occasionally fail. With the fix every
|
||||
|
||||
Reference in New Issue
Block a user