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:
Joseph Doherty
2026-05-27 14:20:10 -04:00
parent 382861c602
commit 615b487a77
110 changed files with 1473 additions and 192 deletions
@@ -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("")]