consolidate the tests locations

This commit is contained in:
StellaOps Bot
2025-12-26 01:48:24 +02:00
parent 17613acf57
commit 39359da171
2031 changed files with 2607 additions and 476 deletions

View File

@@ -8,8 +8,8 @@ on:
branches: [main, develop]
paths:
- 'src/**'
- 'tests/integration/**'
- 'bench/golden-corpus/**'
- 'src/__Tests/Integration/**'
- 'src/__Tests/__Benchmarks/golden-corpus/**'
push:
branches: [main]
workflow_dispatch:
@@ -60,14 +60,14 @@ jobs:
dotnet-version: "10.0.100"
- name: Restore dependencies
run: dotnet restore tests/integration/**/*.csproj
run: dotnet restore src/__Tests/Integration/**/*.csproj
- name: Build integration tests
run: dotnet build tests/integration/**/*.csproj --configuration Release --no-restore
run: dotnet build src/__Tests/Integration/**/*.csproj --configuration Release --no-restore
- name: Run Proof Chain Tests
run: |
dotnet test tests/integration/StellaOps.Integration.ProofChain \
dotnet test src/__Tests/Integration/StellaOps.Integration.ProofChain \
--configuration Release \
--no-build \
--logger "trx;LogFileName=proofchain.trx" \
@@ -77,7 +77,7 @@ jobs:
- name: Run Reachability Tests
run: |
dotnet test tests/integration/StellaOps.Integration.Reachability \
dotnet test src/__Tests/Integration/StellaOps.Integration.Reachability \
--configuration Release \
--no-build \
--logger "trx;LogFileName=reachability.trx" \
@@ -85,7 +85,7 @@ jobs:
- name: Run Unknowns Workflow Tests
run: |
dotnet test tests/integration/StellaOps.Integration.Unknowns \
dotnet test src/__Tests/Integration/StellaOps.Integration.Unknowns \
--configuration Release \
--no-build \
--logger "trx;LogFileName=unknowns.trx" \
@@ -93,7 +93,7 @@ jobs:
- name: Run Determinism Tests
run: |
dotnet test tests/integration/StellaOps.Integration.Determinism \
dotnet test src/__Tests/Integration/StellaOps.Integration.Determinism \
--configuration Release \
--no-build \
--logger "trx;LogFileName=determinism.trx" \
@@ -139,7 +139,7 @@ jobs:
import hashlib
import os
manifest_path = 'bench/golden-corpus/corpus-manifest.json'
manifest_path = 'src/__Tests/__Benchmarks/golden-corpus/corpus-manifest.json'
with open(manifest_path) as f:
manifest = json.load(f)
@@ -148,7 +148,7 @@ jobs:
errors = []
for case in manifest.get('cases', []):
case_path = os.path.join('bench/golden-corpus', case['path'])
case_path = os.path.join('src/__Tests/__Benchmarks/golden-corpus', case['path'])
if not os.path.isdir(case_path):
errors.append(f'Missing case directory: {case_path}')
else:
@@ -168,7 +168,7 @@ jobs:
- name: Run corpus scoring tests
run: |
dotnet test tests/integration/StellaOps.Integration.Determinism \
dotnet test src/__Tests/Integration/StellaOps.Integration.Determinism \
--filter "Category=GoldenCorpus" \
--configuration Release \
--logger "trx;LogFileName=corpus.trx" \
@@ -194,7 +194,7 @@ jobs:
- name: Run full determinism suite
run: |
dotnet test tests/integration/StellaOps.Integration.Determinism \
dotnet test src/__Tests/Integration/StellaOps.Integration.Determinism \
--configuration Release \
--logger "trx;LogFileName=determinism-full.trx" \
--results-directory ./TestResults
@@ -203,7 +203,7 @@ jobs:
run: |
# Run scoring 3 times and compare hashes
for i in 1 2 3; do
dotnet test tests/integration/StellaOps.Integration.Determinism \
dotnet test src/__Tests/Integration/StellaOps.Integration.Determinism \
--filter "FullyQualifiedName~IdenticalInput_ProducesIdenticalHash" \
--results-directory ./TestResults/run-$i
done
@@ -236,7 +236,7 @@ jobs:
- name: Run tests with coverage
run: |
dotnet test tests/integration/**/*.csproj \
dotnet test src/__Tests/Integration/**/*.csproj \
--configuration Release \
--collect:"XPlat Code Coverage" \
--results-directory ./TestResults/Coverage
@@ -312,7 +312,7 @@ jobs:
- name: Run performance tests
run: |
dotnet test tests/integration/StellaOps.Integration.Performance \
dotnet test src/__Tests/Integration/StellaOps.Integration.Performance \
--configuration Release \
--logger "trx;LogFileName=performance.trx" \
--results-directory ./TestResults
@@ -323,15 +323,15 @@ jobs:
name: performance-report
path: |
TestResults/**
tests/integration/StellaOps.Integration.Performance/output/**
src/__Tests/Integration/StellaOps.Integration.Performance/output/**
- name: Check for regressions
run: |
# Check if any test exceeded 20% threshold
if [ -f "tests/integration/StellaOps.Integration.Performance/output/performance-report.json" ]; then
if [ -f "src/__Tests/Integration/StellaOps.Integration.Performance/output/performance-report.json" ]; then
python3 -c "
import json
with open('tests/integration/StellaOps.Integration.Performance/output/performance-report.json') as f:
with open('src/__Tests/Integration/StellaOps.Integration.Performance/output/performance-report.json') as f:
report = json.load(f)
regressions = [m for m in report.get('Metrics', []) if m.get('DeltaPercent', 0) > 20]
if regressions:
@@ -363,7 +363,7 @@ jobs:
- name: Run air-gap tests
run: |
dotnet test tests/integration/StellaOps.Integration.AirGap \
dotnet test src/__Tests/Integration/StellaOps.Integration.AirGap \
--configuration Release \
--logger "trx;LogFileName=airgap.trx" \
--results-directory ./TestResults