Files
QuantEngineByItz/src/dotnet/QuantEngine.Core.Tests/PipelineOrchestratorTests.cs
T
kjh2064 d6a2dca9c8
Validators (Pushes and Pull Requests) / validate-ui-and-storage (push) Successful in 18s
Validators (Pushes and Pull Requests) / validate-core (push) Failing after 1m44s
refactor(dotnet): structure pipeline orchestration steps
2026-07-13 01:24:10 +09:00

41 lines
1.5 KiB
C#

using System;
using System.IO;
using System.Threading.Tasks;
using Xunit;
using QuantEngine.Application.Services;
namespace QuantEngine.Core.Tests
{
public class PipelineOrchestratorTests
{
[Fact]
public async Task RunPipelineAsync_ExecutesAll7Steps_AndOutputsJson()
{
var orchestrator = new PipelineOrchestrator();
var result = await orchestrator.RunPipelineAsync();
Assert.NotNull(result);
Assert.Equal("PASS", result.Gate);
Assert.Equal(7, result.Steps.Count);
Assert.Contains(result.Steps, step => step.StepName == "scores_calculation");
Assert.Contains(result.Steps, step => step.StepName == "routing_decision");
Assert.Contains(result.Steps, step => step.StepName == "golden_check");
foreach (var step in result.Steps)
{
Assert.True(step.Success);
Assert.False(string.IsNullOrEmpty(step.StepName));
Assert.True(step.ElapsedMilliseconds > 0);
}
var tempRoot = Environment.GetEnvironmentVariable("QE_TEMP_ROOT")
?? Path.Combine(Directory.GetCurrentDirectory(), "Temp");
var expectedJsonPath = Path.Combine(tempRoot, "dotnet_pipeline_e2e_v1.json");
Assert.True(File.Exists(expectedJsonPath));
var jsonContent = File.ReadAllText(expectedJsonPath);
Assert.Contains("\"gate\": \"PASS\"", jsonContent);
}
}
}