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:
Joseph Doherty
2026-10-07 15:05:49 -04:00
parent 0ffd4bdbea
commit 513fa1aa16
998 changed files with 17896 additions and 2395 deletions
@@ -22,6 +22,8 @@ public class CentralActorPathTests : IAsyncLifetime
private string? _previousEnv;
private CentralDbTestEnvironment? _dbEnv;
/// <summary>Initializes the fixture before the tests run.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
public Task InitializeAsync()
{
_previousEnv = Environment.GetEnvironmentVariable("DOTNET_ENVIRONMENT");
@@ -49,7 +51,7 @@ public class CentralActorPathTests : IAsyncLifetime
["ScadaBridge:Cluster:MinNrOfMembers"] = "1",
["ScadaBridge:Database:SkipMigrations"] = "true",
["ScadaBridge:Security:JwtSigningKey"] = "test-signing-key-must-be-at-least-32-chars-long!",
// Task 1.4: LDAP settings nest under Security:Ldap (shared LdapOptions).
// LDAP settings nest under Security:Ldap (shared LdapOptions).
// ServiceAccountDn is now required by the library's LdapOptionsValidator
// (ValidateOnStart), so it must be present for the host to start.
["ScadaBridge:Security:Ldap:Server"] = "localhost",
@@ -88,6 +90,8 @@ public class CentralActorPathTests : IAsyncLifetime
return Task.CompletedTask;
}
/// <summary>Releases the fixture after the tests run.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
public async Task DisposeAsync()
{
// try/finally: a throwing host teardown must not strand the process-wide
@@ -107,38 +111,56 @@ public class CentralActorPathTests : IAsyncLifetime
await Task.CompletedTask;
}
/// <summary>Verifies that the dead letter monitor actor exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_DeadLetterMonitor_Exists()
=> await AssertActorExists("/user/dead-letter-monitor");
/// <summary>Verifies that the central communication actor exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_CentralCommunication_Exists()
=> await AssertActorExists("/user/central-communication");
/// <summary>Verifies that the management actor exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_Management_Exists()
=> await AssertActorExists("/user/management");
/// <summary>Verifies that the notification outbox singleton exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_NotificationOutboxSingleton_Exists()
=> await AssertActorExists("/user/notification-outbox-singleton");
/// <summary>Verifies that the notification outbox proxy exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_NotificationOutboxProxy_Exists()
=> await AssertActorExists("/user/notification-outbox-proxy");
/// <summary>Verifies that the audit log purge singleton exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_AuditLogPurgeSingleton_Exists()
=> await AssertActorExists("/user/audit-log-purge-singleton");
/// <summary>Verifies that the audit log purge proxy exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_AuditLogPurgeProxy_Exists()
=> await AssertActorExists("/user/audit-log-purge-proxy");
/// <summary>Verifies that the site audit reconciliation singleton exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_SiteAuditReconciliationSingleton_Exists()
=> await AssertActorExists("/user/site-audit-reconciliation-singleton");
/// <summary>Verifies that the site audit reconciliation proxy exists on a central node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task CentralActors_SiteAuditReconciliationProxy_Exists()
=> await AssertActorExists("/user/site-audit-reconciliation-proxy");
@@ -165,6 +187,8 @@ public class SiteActorPathTests : IAsyncLifetime
private string _tempDbPath = null!;
private string _tempLocalDbPath = null!;
/// <summary>Initializes the fixture before the tests run.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
public async Task InitializeAsync()
{
_tempDbPath = Path.Combine(Path.GetTempPath(), $"scadabridge_actor_test_{Guid.NewGuid()}.db");
@@ -206,6 +230,8 @@ public class SiteActorPathTests : IAsyncLifetime
_actorSystem = akkaService.ActorSystem;
}
/// <summary>Releases the fixture after the tests run.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
public async Task DisposeAsync()
{
if (_host != null)
@@ -217,22 +243,32 @@ public class SiteActorPathTests : IAsyncLifetime
try { File.Delete(_tempLocalDbPath); } catch { /* best effort */ }
}
/// <summary>Verifies that the dead letter monitor actor exists on a site node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task SiteActors_DeadLetterMonitor_Exists()
=> await AssertActorExists("/user/dead-letter-monitor");
/// <summary>Verifies that the data connection layer manager actor exists on a site node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task SiteActors_DclManager_Exists()
=> await AssertActorExists("/user/dcl-manager");
/// <summary>Verifies that the deployment manager singleton exists on a site node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task SiteActors_DeploymentManagerSingleton_Exists()
=> await AssertActorExists("/user/deployment-manager-singleton");
/// <summary>Verifies that the deployment manager proxy exists on a site node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task SiteActors_DeploymentManagerProxy_Exists()
=> await AssertActorExists("/user/deployment-manager-proxy");
/// <summary>Verifies that the site communication actor exists on a site node.</summary>
/// <returns>A task that represents the asynchronous operation.</returns>
[Fact]
public async Task SiteActors_SiteCommunication_Exists()
=> await AssertActorExists("/user/site-communication");