Files
vigilcare-clinical/vigilcare-dashboard/src/__tests__/thresholdForm.test.js
T

50 lines
1.2 KiB
JavaScript

import { describe, it, expect } from 'vitest'
import {
emptyThresholdForm,
thresholdFormToPayload,
validateThresholdForm,
} from '@/composables/thresholdForm'
describe('thresholdForm', () => {
it('validatesRequiredFields', () => {
const result = validateThresholdForm(emptyThresholdForm())
expect(result.valid).toBe(false)
expect(result.errors.observationCode).toBeTruthy()
})
it('validatesThresholdOrdering', () => {
const result = validateThresholdForm({
observationCode: 'HEART_RATE',
displayName: 'Heart Rate',
unit: 'bpm',
criticalLow: '60',
warningLow: '50',
warningHigh: '100',
criticalHigh: '130',
})
expect(result.valid).toBe(false)
expect(result.errors.warningLow).toBeTruthy()
})
it('buildsPayloadWithNullBounds', () => {
const payload = thresholdFormToPayload({
observationCode: 'SPO2',
displayName: 'SpO₂',
unit: '%',
criticalLow: '',
warningLow: '92',
warningHigh: '',
criticalHigh: '88',
})
expect(payload).toEqual({
observationCode: 'SPO2',
displayName: 'SpO₂',
unit: '%',
criticalLow: null,
warningLow: 92,
warningHigh: null,
criticalHigh: 88,
})
})
})