33 lines
860 B
TypeScript
33 lines
860 B
TypeScript
|
|
import { beforeEach, describe, expect, test } from 'vitest';
|
||
|
|
|
||
|
|
import { useEditorStore } from './editorStore';
|
||
|
|
|
||
|
|
|
||
|
|
describe('editorStore basics', () => {
|
||
|
|
beforeEach(() => {
|
||
|
|
useEditorStore.getState().reset();
|
||
|
|
});
|
||
|
|
|
||
|
|
test('clamps global gain to valid bounds', () => {
|
||
|
|
const state = useEditorStore.getState();
|
||
|
|
|
||
|
|
state.setGlobalGainDb(100);
|
||
|
|
expect(useEditorStore.getState().globalGainDb).toBe(24);
|
||
|
|
|
||
|
|
state.setGlobalGainDb(-100);
|
||
|
|
expect(useEditorStore.getState().globalGainDb).toBe(-24);
|
||
|
|
});
|
||
|
|
|
||
|
|
test('adds gain range to store', () => {
|
||
|
|
const state = useEditorStore.getState();
|
||
|
|
|
||
|
|
state.addGainRange(1.2, 2.4, 3.5);
|
||
|
|
|
||
|
|
const ranges = useEditorStore.getState().gainRanges;
|
||
|
|
expect(ranges.length).toBe(1);
|
||
|
|
expect(ranges[0].start).toBe(1.2);
|
||
|
|
expect(ranges[0].end).toBe(2.4);
|
||
|
|
expect(ranges[0].gainDb).toBe(3.5);
|
||
|
|
});
|
||
|
|
});
|