mirror of https://github.com/immich-app/immich.git
fix(web): admin settings number input validation (#9470)
* fix(web): admin settings number input validation * fix import by creating *.ts file * just ignore import errorpull/9480/head
parent
4d7aa7effd
commit
acc611a3d9
@ -0,0 +1,30 @@
|
|||||||
|
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');
|
||||||
|
});
|
||||||
|
});
|
||||||
Loading…
Reference in New Issue