Files
git.stella-ops.org/src/Timeline/__Tests/StellaOps.Timeline.WebService.Tests/TimelineStartupRegistrationTests.cs
master 886ff6f9d2 refactor: JobEngine cleanup + crypto compose refactor + sprint plans + timeline merge prep
- Remove zombie JobEngine WebService (no container runs it)
- Remove dangling STELLAOPS_JOBENGINE_URL, replace with RELEASE_ORCHESTRATOR_URL
- Update Timeline audit paths to release-orchestrator
- Extract smremote to docker-compose.crypto-provider.smremote.yml
- Rename crypto compose files for consistent naming
- Add crypto provider health probe API (CP-001) + tenant preferences (CP-002)
- Create sprint plans: crypto picker, VulnExplorer merge, scheduler plugins
- Timeline merge prep: ingestion worker relocated to infrastructure lib

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 13:45:19 +03:00

41 lines
1.6 KiB
C#

using System.Net;
using FluentAssertions;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Mvc.Testing;
using Microsoft.Extensions.Configuration;
using Xunit;
namespace StellaOps.Timeline.WebService.Tests;
[Trait("Category", "Integration")]
public sealed class TimelineStartupRegistrationTests
{
[Fact]
public async Task Startup_WithPostgresStoreConfiguration_BuildsHost()
{
await using var factory = new WebApplicationFactory<StellaOps.Timeline.WebService.Program>()
.WithWebHostBuilder(builder =>
{
builder.UseEnvironment("Development");
builder.ConfigureAppConfiguration((_, config) =>
{
config.AddInMemoryCollection(new Dictionary<string, string?>
{
["Eventing:ServiceName"] = "timeline-tests",
["Eventing:UseInMemoryStore"] = "false",
["Eventing:ConnectionString"] = "Host=localhost;Port=5432;Database=timeline;Username=postgres;Password=postgres",
["Authority:ResourceServer:Authority"] = "http://localhost",
// Required by TimelineIndexer Postgres registration (merged from timeline-indexer)
["Postgres:Timeline:ConnectionString"] = "Host=localhost;Port=5432;Database=timeline;Username=postgres;Password=postgres",
});
});
});
using var client = factory.CreateClient();
var response = await client.GetAsync("/does-not-exist");
response.StatusCode.Should().Be(HttpStatusCode.NotFound);
}
}