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

40 lines
1.1 KiB
JavaScript

import { describe, it, expect, beforeEach, vi } from 'vitest'
import { createPinia, setActivePinia } from 'pinia'
import { useAlertStore } from '@/stores/alerts'
describe('alert store notifications', () => {
beforeEach(() => {
setActivePinia(createPinia())
})
it('queuesBannerAlertsForNewCriticalItems', () => {
const store = useAlertStore()
const critical = {
id: 'alert-1',
severity: 'Critical',
status: 'Open',
alertType: 'SofaSepsis',
}
expect(store.applyPollResults([critical])).toEqual([])
expect(store.bannerAlerts).toEqual([])
const next = {
id: 'alert-2',
severity: 'Critical',
status: 'Open',
alertType: 'GcsCritical',
}
const newAlerts = store.applyPollResults([critical, next])
expect(newAlerts.map(alert => alert.id)).toEqual(['alert-2'])
expect(store.bannerAlerts.map(alert => alert.id)).toEqual(['alert-2'])
})
it('dismissesBannerAlert', () => {
const store = useAlertStore()
store.bannerAlerts = [{ id: 'alert-1' }]
store.dismissBannerAlert('alert-1')
expect(store.bannerAlerts).toEqual([])
})
})