Files
memind/health-observation-validate.test.mjs
T
john f96fdcb3b9 feat(health): add P0 health channel kernel and encrypted health zone.
Lock health recording behind confirm-only state machines, reject public publishes for the health category, and ship the 14-day experiment Page Data templates with tests.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-09 18:04:26 +08:00

28 lines
1.1 KiB
JavaScript

import assert from 'node:assert/strict';
import test from 'node:test';
import {
inferBloodPressureContext,
markSuspectVsBaseline,
resolveQualityAfterConfirm,
validateBloodPressurePair,
} from './health-observation-validate.mjs';
test('blood pressure range and ordering', () => {
assert.equal(validateBloodPressurePair(128, 76).ok, true);
assert.equal(validateBloodPressurePair(50, 40).ok, false);
assert.equal(validateBloodPressurePair(120, 130).ok, false);
});
test('context is inferred from clock hour', () => {
assert.equal(inferBloodPressureContext('2026-09-02T07:20:00+08:00'), 'morning');
assert.equal(inferBloodPressureContext('2026-09-02T21:10:00+08:00'), 'evening');
assert.equal(inferBloodPressureContext('2026-09-02T14:00:00+08:00'), 'other');
});
test('large baseline deviation is suspect until the user confirms', () => {
const marked = markSuspectVsBaseline(190, 120);
assert.equal(marked.suspect, true);
assert.equal(resolveQualityAfterConfirm({ suspect: true, userCorrected: false }), 'ok');
assert.equal(resolveQualityAfterConfirm({ suspect: true, userCorrected: true }), 'user_corrected');
});