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:
@@ -35,6 +35,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that the initial poll forces an event for every subscribed tag.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Initial_poll_force_raises_every_subscribed_tag()
|
||||
{
|
||||
@@ -54,6 +55,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that unchanged values are only raised once.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Unchanged_value_raises_only_once()
|
||||
{
|
||||
@@ -72,6 +74,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that value changes raise new events.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Value_change_raises_new_event()
|
||||
{
|
||||
@@ -92,6 +95,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that unsubscribe halts the polling loop.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Unsubscribe_halts_the_loop()
|
||||
{
|
||||
@@ -113,6 +117,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that intervals below the configured floor are clamped.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Interval_below_floor_is_clamped()
|
||||
{
|
||||
@@ -134,6 +139,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that multiple subscriptions operate independently.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Multiple_subscriptions_are_independent()
|
||||
{
|
||||
@@ -165,6 +171,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that reader exceptions do not crash the polling loop.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Reader_exception_does_not_crash_loop()
|
||||
{
|
||||
@@ -195,6 +202,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that unsubscribing an unknown handle returns false.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Unsubscribe_unknown_handle_returns_false()
|
||||
{
|
||||
@@ -206,6 +214,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that the active subscription count tracks lifecycle changes.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task ActiveSubscriptionCount_tracks_lifecycle()
|
||||
{
|
||||
@@ -225,6 +234,7 @@ public sealed class PollGroupEngineTests
|
||||
}
|
||||
|
||||
/// <summary>Verifies that disposing the engine cancels all active subscriptions.</summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task DisposeAsync_cancels_all_subscriptions()
|
||||
{
|
||||
@@ -253,6 +263,7 @@ public sealed class PollGroupEngineTests
|
||||
/// must fire only the initial change event, not a spurious event on every tick, even
|
||||
/// when the driver produces a fresh array instance on each read.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Array_valued_tag_unchanged_contents_raises_only_once()
|
||||
{
|
||||
@@ -289,6 +300,7 @@ public sealed class PollGroupEngineTests
|
||||
/// Core.Abstractions-001: an array-valued tag whose contents change between polls
|
||||
/// must fire a change event for each distinct set of contents.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Array_valued_tag_changed_contents_raises_event()
|
||||
{
|
||||
@@ -320,6 +332,7 @@ public sealed class PollGroupEngineTests
|
||||
/// violates the documented contract. The engine must throw a descriptive exception
|
||||
/// rather than silently stalling.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Reader_short_result_list_raises_descriptive_exception_and_loop_continues()
|
||||
{
|
||||
@@ -366,6 +379,7 @@ public sealed class PollGroupEngineTests
|
||||
/// must continue to swallow exceptions (backward compatible). When an error callback IS
|
||||
/// supplied, every exception caught during a poll cycle must be routed to it.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Reader_exception_is_reported_to_onError_callback()
|
||||
{
|
||||
@@ -401,6 +415,7 @@ public sealed class PollGroupEngineTests
|
||||
/// must also be routed to the error callback so the driver health surface can observe
|
||||
/// repeated contract violations.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task Reader_contract_violation_routes_to_onError_callback()
|
||||
{
|
||||
@@ -433,6 +448,7 @@ public sealed class PollGroupEngineTests
|
||||
/// that itself throws — otherwise a buggy health-surface forwarder would crash the poll
|
||||
/// loop and silently stall the subscription, defeating the whole point of the callback.
|
||||
/// </summary>
|
||||
/// <returns>A task that represents the asynchronous operation.</returns>
|
||||
[Fact]
|
||||
public async Task OnError_handler_that_throws_does_not_crash_loop()
|
||||
{
|
||||
@@ -463,7 +479,7 @@ public sealed class PollGroupEngineTests
|
||||
|
||||
private sealed record DummyHandle : ISubscriptionHandle
|
||||
{
|
||||
/// <summary>Gets a diagnostic identifier for this handle.</summary>
|
||||
/// <inheritdoc />
|
||||
public string DiagnosticId => "dummy";
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user