Skip to content

Commit b0eb675

Browse files
committed
test(fingerprint): expect missing payload to fail validation
1 parent dad95e1 commit b0eb675

1 file changed

Lines changed: 17 additions & 3 deletions

File tree

tests/test_fingerprint.py

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ def test_compute_hardware_id_consistency():
3131
assert id1 == id2
3232

3333
def test_validate_fingerprint_data_no_data():
34-
"""Verify handling of missing fingerprint data (legacy reduced)."""
34+
"""Missing fingerprint payload must fail validation."""
3535
passed, reason = validate_fingerprint_data(None)
36-
assert passed is True
37-
assert reason == "no_fingerprint_data_legacy_reduced"
36+
assert passed is False
37+
assert reason == "missing_fingerprint_data"
3838

3939
def test_validate_fingerprint_data_vm_detection():
4040
"""Verify detection of VM indicators."""
@@ -78,6 +78,20 @@ def test_validate_fingerprint_data_clock_drift_threshold():
7878
assert passed is False
7979
assert reason == "timing_too_uniform"
8080

81+
def test_validate_fingerprint_data_clock_drift_insufficient_samples():
82+
"""Clock drift cannot pass with extremely low sample count."""
83+
fingerprint = {
84+
"checks": {
85+
"clock_drift": {
86+
"passed": True,
87+
"data": {"cv": 0.02, "samples": 1}
88+
}
89+
}
90+
}
91+
passed, reason = validate_fingerprint_data(fingerprint)
92+
assert passed is False
93+
assert reason.startswith("clock_drift_insufficient_samples")
94+
8195
def test_validate_fingerprint_data_vintage_stability():
8296
"""Verify rejection of suspicious stability on vintage hardware."""
8397
claimed_device = {"device_arch": "G4"}

0 commit comments

Comments
 (0)