tracegrpo / tests /test_calibrate_code_margin.py
Dhruv1000's picture
Archive complete TraceGRPO project results and documentation (2026-10-09)
646ccfc verified
Raw History Blame Contribute Delete
613 Bytes
import pytest
from scripts.calibrate_code_margin import select_balanced_accuracy_threshold
def test_threshold_uses_balanced_accuracy_and_separates_both_classes():
result = select_balanced_accuracy_threshold([0, 0, 1, 1], [-2.0, -1.0, 1.0, 2.0])
assert result["threshold"] == 0.0
assert result["balanced_accuracy"] == 1.0
assert result["safe_accuracy"] == 1.0
assert result["vulnerable_accuracy"] == 1.0
def test_threshold_rejects_single_class_calibration_data():
with pytest.raises(ValueError, match="SAFE/VULNERABLE"):
select_balanced_accuracy_threshold([0, 0], [-1.0, 1.0])