feature: add handoff report
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
import { describe, it, expect } from 'vitest'
|
||||
import {
|
||||
buildVitalsObservations,
|
||||
isPlausibleValue,
|
||||
validateVitalsForm,
|
||||
} from '@/composables/vitalsForm'
|
||||
|
||||
describe('vitalsForm', () => {
|
||||
it('validatesPlausibleRanges', () => {
|
||||
expect(isPlausibleValue('HEART_RATE', 78)).toBe(true)
|
||||
expect(isPlausibleValue('HEART_RATE', 350)).toBe(false)
|
||||
expect(isPlausibleValue('TEMP_C', 37.2)).toBe(true)
|
||||
expect(isPlausibleValue('TEMP_C', 10)).toBe(false)
|
||||
})
|
||||
|
||||
it('requiresAtLeastOneValue', () => {
|
||||
const result = validateVitalsForm({
|
||||
heartRate: '',
|
||||
respRate: '',
|
||||
systolicBp: '',
|
||||
diastolicBp: '',
|
||||
spo2: '',
|
||||
tempC: '',
|
||||
avpu: '',
|
||||
})
|
||||
expect(result.valid).toBe(false)
|
||||
expect(result.errors._form).toBeTruthy()
|
||||
})
|
||||
|
||||
it('buildsBatchObservations', () => {
|
||||
const observations = buildVitalsObservations({
|
||||
heartRate: '88',
|
||||
respRate: '18',
|
||||
systolicBp: '120',
|
||||
diastolicBp: '80',
|
||||
spo2: '97',
|
||||
tempC: '37.1',
|
||||
avpu: '0',
|
||||
}, '2026-06-23T12:00:00Z')
|
||||
|
||||
expect(observations).toHaveLength(7)
|
||||
expect(observations[0]).toMatchObject({
|
||||
observationCode: 'HEART_RATE',
|
||||
value: 88,
|
||||
unit: 'bpm',
|
||||
source: 'Manual',
|
||||
recordedAt: '2026-06-23T12:00:00Z',
|
||||
})
|
||||
expect(observations.find(obs => obs.observationCode === 'AVPU')?.value).toBe(0)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user