Files
wehub-resource-sync a06f331eb8
CI / benchmark (push) Has been skipped
install-script / posix-syntax (push) Successful in 6m1s
CI / build-onnx (push) Failing after 6m43s
init-smoke / dry-run (push) Failing after 15m57s
security / govulncheck (push) Has been cancelled
security / trivy-fs (push) Has been cancelled
CI / test (1.26, ubuntu-latest) (push) Has been cancelled
Scorecard supply-chain security / Scorecard analysis (push) Has been cancelled
CI / test (1.26, macos-latest) (push) Has been cancelled
CI / build-windows (push) Has been cancelled
CI / lint (push) Has been cancelled
install-script / powershell-syntax (push) Has been cancelled
install-script / install (macos-14) (push) Has been cancelled
install-script / install (ubuntu-latest) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 12:33:42 +08:00

55 lines
1.6 KiB
Go

package main
import (
"encoding/json"
"testing"
"github.com/zzet/gortex/internal/eval/parity"
)
func TestParityBaselineCheck(t *testing.T) {
base := parity.Baseline{"go": 0.95, "rust": 0.80}
// rust regressed well below baseline; go beats it.
regs := base.Check([]parity.LanguageCoverage{
{Language: "go", Coverage: 0.96},
{Language: "rust", Coverage: 0.70},
}, 0.005)
if len(regs) != 1 || regs[0].Language != "rust" {
t.Fatalf("expected a single rust regression, got %+v", regs)
}
// A dip within epsilon is not a regression; an at-baseline language is fine.
if r := base.Check([]parity.LanguageCoverage{
{Language: "go", Coverage: 0.949},
{Language: "rust", Coverage: 0.80},
}, 0.005); len(r) != 0 {
t.Errorf("within-epsilon dip was flagged: %+v", r)
}
// A baseline language missing from the measured set counts as a regression.
if r := base.Check([]parity.LanguageCoverage{{Language: "go", Coverage: 0.96}}, 0.005); len(r) != 1 || r[0].Language != "rust" {
t.Errorf("a dropped-out language should regress: %+v", r)
}
// The committed baseline parses (currently empty → nothing enforced).
if b, err := parity.LoadBaseline(); err != nil {
t.Errorf("LoadBaseline: %v", err)
} else if len(b) != 0 {
t.Logf("committed baseline carries %d languages", len(b))
}
// MarshalBaseline round-trips through JSON.
out, err := parity.MarshalBaseline([]parity.LanguageCoverage{{Language: "go", Coverage: 0.96}})
if err != nil {
t.Fatal(err)
}
var rt parity.Baseline
if err := json.Unmarshal(out, &rt); err != nil {
t.Fatal(err)
}
if rt["go"] != 0.96 {
t.Errorf("round-trip lost go coverage: %+v", rt)
}
}