Files
openchamber/packages/ui/src/stores/useUIStore.notificationTemplates.test.ts
T

30 lines
969 B
TypeScript

import { afterEach, describe, expect, test } from 'bun:test';
import { useUIStore } from './useUIStore';
const initialTemplates = useUIStore.getState().notificationTemplates;
afterEach(() => {
useUIStore.setState({ notificationTemplates: initialTemplates });
});
describe('useUIStore notification templates', () => {
test('preserves rapid updates to separate template fields', () => {
const { setNotificationTemplates } = useUIStore.getState();
setNotificationTemplates((current) => ({
...current,
completion: { ...current.completion, title: 'Completed' },
}));
setNotificationTemplates((current) => ({
...current,
error: { ...current.error, message: 'Failed' },
}));
expect(useUIStore.getState().notificationTemplates).toEqual({
...initialTemplates,
completion: { ...initialTemplates.completion, title: 'Completed' },
error: { ...initialTemplates.error, message: 'Failed' },
});
});
});