mirror of
https://github.com/immich-app/immich.git
synced 2025-06-06 07:06:40 -04:00
* fix(web): admin settings number input validation * fix import by creating *.ts file * just ignore import error
31 lines
958 B
TypeScript
31 lines
958 B
TypeScript
import { render } from '@testing-library/svelte';
|
|
import userEvent from '@testing-library/user-event';
|
|
// @ts-expect-error the import works but tsc check errors
|
|
import SettingInputField, { SettingInputFieldType } from './setting-input-field.svelte';
|
|
|
|
describe('SettingInputField component', () => {
|
|
it('validates number input on blur', async () => {
|
|
const { getByRole } = render(SettingInputField, {
|
|
props: {
|
|
label: 'test-number-input',
|
|
inputType: SettingInputFieldType.NUMBER,
|
|
value: 0,
|
|
min: 0,
|
|
max: 100,
|
|
step: '0.1',
|
|
},
|
|
});
|
|
const user = userEvent.setup();
|
|
|
|
const numberInput = getByRole('spinbutton') as HTMLInputElement;
|
|
expect(numberInput.value).toEqual('0');
|
|
|
|
await user.click(numberInput);
|
|
await user.keyboard('100.1');
|
|
expect(numberInput.value).toEqual('100.1');
|
|
|
|
await user.click(document.body);
|
|
expect(numberInput.value).toEqual('100');
|
|
});
|
|
});
|