Fix build and code structure improvements. New but essential UI functionality. CI improvements. Documentation improvements. AI module improvements.

This commit is contained in:
StellaOps Bot
2025-12-26 21:54:17 +02:00
parent 335ff7da16
commit c2b9cd8d1f
3717 changed files with 264714 additions and 48202 deletions

View File

@@ -35,7 +35,7 @@ public class OrchestratorEndpointsTests : IClassFixture<WebApplicationFactory<Pr
var seeded = await client.GetFromJsonAsync<JsonElement>("/internal/orchestrator/sources?tenant=tenant-a");
seeded.TryGetProperty("items", out var items).Should().BeTrue();
items.GetArrayLength().Should().BeGreaterOrEqualTo(1);
items.GetArrayLength().Should().BeGreaterThanOrEqualTo(1);
var request = new RegisterOrchestratorSourceRequest(
TenantId: "tenant-a",

View File

@@ -37,7 +37,7 @@ public class ResolverFeedExportTests : IClassFixture<WebApplicationFactory<Progr
// verify deterministic ordering by first and last line comparison
var first = lines.First();
var last = lines.Last();
first.Should().BeLessOrEqualTo(last, Comparer<string>.Create(StringComparer.Ordinal.Compare));
string.Compare(first, last, StringComparison.Ordinal).Should().BeLessThanOrEqualTo(0);
// spot-check a known candidate
var candidates = await client.GetFromJsonAsync<List<ResolverCandidate>>("/internal/sbom/resolver-feed");

View File

@@ -164,7 +164,7 @@ public class SbomEndpointsTests : IClassFixture<WebApplicationFactory<Program>>
payload.ArtifactId.Should().Be("ghcr.io/stellaops/sample-api");
payload.Versions.Should().NotBeEmpty();
payload.DependencyPaths.Should().NotBeEmpty();
payload.Hash.Should().StartWith("sha256:", StringComparison.Ordinal);
payload.Hash.Should().StartWith("sha256:");
}
[Trait("Category", TestCategories.Unit)]

View File

@@ -29,7 +29,7 @@ public class SbomEventEndpointsTests : IClassFixture<WebApplicationFactory<Progr
var backfillPayload = await backfillResponse.Content.ReadFromJsonAsync<JsonElement>();
backfillPayload.TryGetProperty("published", out var publishedProp).Should().BeTrue();
publishedProp.GetInt32().Should().BeGreaterOrEqualTo(1);
publishedProp.GetInt32().Should().BeGreaterThanOrEqualTo(1);
var events = await client.GetFromJsonAsync<List<SbomVersionCreatedEvent>>("/internal/sbom/events");
events.Should().NotBeNull();

View File

@@ -47,7 +47,7 @@ public class SbomInventoryEventsTests : IClassFixture<WebApplicationFactory<Prog
var post = await client.GetFromJsonAsync<List<SbomInventoryEvidence>>("/internal/sbom/inventory");
post.Should().NotBeNull();
post!.Count.Should().BeGreaterOrEqualTo(pre!.Count);
post!.Count.Should().BeGreaterThanOrEqualTo(pre!.Count);
}
[Trait("Category", TestCategories.Unit)]

View File

@@ -1,4 +1,4 @@
using System.Net;
using System.Net;
using System.Net.Http.Json;
using System.Text.Json;
using FluentAssertions;
@@ -93,7 +93,6 @@ public sealed class SbomLedgerEndpointsTests : IClassFixture<WebApplicationFacto
private static SbomUploadRequest CreateUploadRequest(string artifactRef, string sbomJson)
{
using var document = JsonDocument.Parse(sbomJson);
using StellaOps.TestKit;
return new SbomUploadRequest
{
ArtifactRef = artifactRef,

View File

@@ -3,15 +3,18 @@
<TargetFramework>net10.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<UseConcelierTestInfra>false</UseConcelierTestInfra>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.12.0" />
<PackageReference Include="FluentAssertions" />
<PackageReference Include="xunit.runner.visualstudio" >
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
<PrivateAssets>all</PrivateAssets>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="../StellaOps.SbomService/StellaOps.SbomService.csproj" />
<ProjectReference Include="../../__Libraries/StellaOps.TestKit/StellaOps.TestKit.csproj" />
</ItemGroup>
</Project>
</Project>