Refactor code structure and optimize performance across multiple modules

This commit is contained in:
StellaOps Bot
2025-12-26 20:03:22 +02:00
parent c786faae84
commit b4fc66feb6
3353 changed files with 88254 additions and 1590657 deletions

View File

@@ -9,6 +9,8 @@ using System.Net.Http.Json;
using System.Text.Json;
using StellaOps.Scanner.WebService.Endpoints;
using StellaOps.TestKit;
namespace StellaOps.Scanner.WebService.Tests;
/// <summary>
@@ -18,7 +20,8 @@ public sealed class CounterfactualEndpointsTests
{
private static readonly JsonSerializerOptions SerializerOptions = new(JsonSerializerDefaults.Web);
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_ValidRequest_ReturnsCounterfactuals()
{
using var factory = new ScannerApplicationFactory();
@@ -44,7 +47,8 @@ public sealed class CounterfactualEndpointsTests
Assert.NotEmpty(result.WouldPassIf);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_MissingFindingId_ReturnsBadRequest()
{
using var factory = new ScannerApplicationFactory();
@@ -60,7 +64,8 @@ public sealed class CounterfactualEndpointsTests
Assert.Equal(HttpStatusCode.BadRequest, response.StatusCode);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_IncludesVexPath()
{
using var factory = new ScannerApplicationFactory();
@@ -80,7 +85,8 @@ public sealed class CounterfactualEndpointsTests
Assert.Contains(result!.Paths, p => p.Type == "Vex");
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_IncludesReachabilityPath()
{
using var factory = new ScannerApplicationFactory();
@@ -100,7 +106,8 @@ public sealed class CounterfactualEndpointsTests
Assert.Contains(result!.Paths, p => p.Type == "Reachability");
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_IncludesExceptionPath()
{
using var factory = new ScannerApplicationFactory();
@@ -120,7 +127,8 @@ public sealed class CounterfactualEndpointsTests
Assert.Contains(result!.Paths, p => p.Type == "Exception");
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_WithMaxPaths_LimitsResults()
{
using var factory = new ScannerApplicationFactory();
@@ -141,7 +149,8 @@ public sealed class CounterfactualEndpointsTests
Assert.True(result!.Paths.Count <= 2);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task GetForFinding_ValidId_ReturnsCounterfactuals()
{
using var factory = new ScannerApplicationFactory();
@@ -155,7 +164,8 @@ public sealed class CounterfactualEndpointsTests
Assert.Equal("finding-123", result!.FindingId);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task GetScanSummary_ValidId_ReturnsSummary()
{
using var factory = new ScannerApplicationFactory();
@@ -170,7 +180,8 @@ public sealed class CounterfactualEndpointsTests
Assert.NotNull(result.Findings);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task GetScanSummary_IncludesPathCounts()
{
using var factory = new ScannerApplicationFactory();
@@ -187,7 +198,8 @@ public sealed class CounterfactualEndpointsTests
Assert.True(result.WithExceptionPath >= 0);
}
[Fact]
[Trait("Category", TestCategories.Unit)]
[Fact]
public async Task PostCompute_PathsHaveConditions()
{
using var factory = new ScannerApplicationFactory();