docs+ui: backfill XML doc comments and finish dashboard layout pass
Adds missing <summary>/<param> XML docs across 99 server, worker, and test files so CommentChecker reports zero issues (TreatWarningsAsErrors needs the analyzer clean). Bundles in WIP dashboard work: NavSection extraction, MainLayout/site.css/js styling alignment, and DashboardOptions/Auth tweaks.
This commit is contained in:
@@ -35,6 +35,7 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
private const string EmptyXml =
|
||||
"<?xml version=\"1.0\"?><ALARM_RECORDS COUNT=\"0\"></ALARM_RECORDS>";
|
||||
|
||||
/// <summary>Verifies that empty XML payload returns an empty dictionary.</summary>
|
||||
[Fact]
|
||||
public void ParseSnapshotXml_WithEmptyPayload_ReturnsEmptyDictionary()
|
||||
{
|
||||
@@ -42,6 +43,7 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Empty(records);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that null or whitespace payload returns an empty dictionary.</summary>
|
||||
[Fact]
|
||||
public void ParseSnapshotXml_WithNullOrWhitespace_ReturnsEmptyDictionary()
|
||||
{
|
||||
@@ -49,6 +51,7 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Empty(WnWrapAlarmConsumer.ParseSnapshotXml(" "));
|
||||
}
|
||||
|
||||
/// <summary>Verifies that single alarm XML payload decodes the record correctly.</summary>
|
||||
[Fact]
|
||||
public void ParseSnapshotXml_WithSingleActiveAlarm_DecodesRecord()
|
||||
{
|
||||
@@ -74,6 +77,7 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Equal(26, record.TransitionTimestampUtc.Minute);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that invalid GUIDs in XML payload are silently dropped.</summary>
|
||||
[Fact]
|
||||
public void ParseSnapshotXml_WithInvalidGuids_SilentlyDropsRecords()
|
||||
{
|
||||
@@ -83,6 +87,9 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Empty(WnWrapAlarmConsumer.ParseSnapshotXml(xml));
|
||||
}
|
||||
|
||||
/// <summary>Verifies that dashless 32-character hex GUIDs parse correctly.</summary>
|
||||
/// <param name="hex">The dashless hex string.</param>
|
||||
/// <param name="expected">The expected canonical GUID form.</param>
|
||||
[Theory]
|
||||
[InlineData("BCC4705395424D65BDAABCDEA6A32A73", "BCC47053-9542-4D65-BDAA-BCDEA6A32A73")]
|
||||
[InlineData("00000000000000000000000000000000", "00000000-0000-0000-0000-000000000000")]
|
||||
@@ -92,6 +99,8 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Equal(new Guid(expected), guid);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that canonical dashed GUID format is accepted.</summary>
|
||||
/// <param name="canonical">The canonical GUID form.</param>
|
||||
[Theory]
|
||||
[InlineData("BCC47053-9542-4D65-BDAA-BCDEA6A32A73")]
|
||||
public void TryParseHexGuid_WithCanonicalDashedForm_Accepts(string canonical)
|
||||
@@ -100,6 +109,8 @@ public sealed class WnWrapAlarmConsumerXmlTests
|
||||
Assert.Equal(new Guid(canonical), guid);
|
||||
}
|
||||
|
||||
/// <summary>Verifies that invalid GUID inputs are rejected.</summary>
|
||||
/// <param name="hex">The invalid GUID hex string.</param>
|
||||
[Theory]
|
||||
[InlineData(null)]
|
||||
[InlineData("")]
|
||||
|
||||
Reference in New Issue
Block a user