mirror of
https://github.com/blakeblackshear/frigate.git
synced 2025-09-23 17:52:05 +02:00
* Bump jest from 27.5.1 to 29.3.1 in /web Bumps [jest](https://github.com/facebook/jest/tree/HEAD/packages/jest) from 27.5.1 to 29.3.1. - [Release notes](https://github.com/facebook/jest/releases) - [Changelog](https://github.com/facebook/jest/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/jest/commits/v29.3.1/packages/jest) --- updated-dependencies: - dependency-name: jest dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump msw from 0.38.2 to 0.48.0 in /web Bumps [msw](https://github.com/mswjs/msw) from 0.38.2 to 0.48.0. - [Release notes](https://github.com/mswjs/msw/releases) - [Changelog](https://github.com/mswjs/msw/blob/main/CHANGELOG.md) - [Commits](https://github.com/mswjs/msw/compare/v0.38.2...v0.48.0) --- updated-dependencies: - dependency-name: msw dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump idb-keyval from 6.1.0 to 6.2.0 in /web Bumps [idb-keyval](https://github.com/jakearchibald/idb-keyval) from 6.1.0 to 6.2.0. - [Release notes](https://github.com/jakearchibald/idb-keyval/releases) - [Changelog](https://github.com/jakearchibald/idb-keyval/blob/main/CHANGELOG.md) - [Commits](https://github.com/jakearchibald/idb-keyval/compare/v6.1.0...v6.2.0) --- updated-dependencies: - dependency-name: idb-keyval dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @babel/preset-typescript from 7.16.7 to 7.18.6 in /web Bumps [@babel/preset-typescript](https://github.com/babel/babel/tree/HEAD/packages/babel-preset-typescript) from 7.16.7 to 7.18.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.18.6/packages/babel-preset-typescript) --- updated-dependencies: - dependency-name: "@babel/preset-typescript" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump typescript from 4.6.2 to 4.8.4 in /web Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.6.2 to 4.8.4. - [Release notes](https://github.com/Microsoft/TypeScript/releases) - [Commits](https://github.com/Microsoft/TypeScript/compare/v4.6.2...v4.8.4) --- updated-dependencies: - dependency-name: typescript dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @testing-library/user-event from 13.5.0 to 14.4.3 in /web Bumps [@testing-library/user-event](https://github.com/testing-library/user-event) from 13.5.0 to 14.4.3. - [Release notes](https://github.com/testing-library/user-event/releases) - [Changelog](https://github.com/testing-library/user-event/blob/main/CHANGELOG.md) - [Commits](https://github.com/testing-library/user-event/compare/v13.5.0...v14.4.3) --- updated-dependencies: - dependency-name: "@testing-library/user-event" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump preact-router from 4.0.1 to 4.1.0 in /web Bumps [preact-router](https://github.com/preactjs/preact-router) from 4.0.1 to 4.1.0. - [Release notes](https://github.com/preactjs/preact-router/releases) - [Commits](https://github.com/preactjs/preact-router/compare/4.0.1...4.1.0) --- updated-dependencies: - dependency-name: preact-router dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump axios from 0.26.0 to 1.1.3 in /web Bumps [axios](https://github.com/axios/axios) from 0.26.0 to 1.1.3. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v0.26.0...v1.1.3) --- updated-dependencies: - dependency-name: axios dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @preact/preset-vite from 2.1.7 to 2.4.0 in /web Bumps [@preact/preset-vite](https://github.com/preactjs/preset-vite) from 2.1.7 to 2.4.0. - [Release notes](https://github.com/preactjs/preset-vite/releases) - [Commits](https://github.com/preactjs/preset-vite/compare/v2.1.7...v2.4.0) --- updated-dependencies: - dependency-name: "@preact/preset-vite" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Bump @testing-library/jest-dom from 5.16.2 to 5.16.5 in /web Bumps [@testing-library/jest-dom](https://github.com/testing-library/jest-dom) from 5.16.2 to 5.16.5. - [Release notes](https://github.com/testing-library/jest-dom/releases) - [Changelog](https://github.com/testing-library/jest-dom/blob/main/CHANGELOG.md) - [Commits](https://github.com/testing-library/jest-dom/compare/v5.16.2...v5.16.5) --- updated-dependencies: - dependency-name: "@testing-library/jest-dom" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> * revamp frontend * disable broken tests * disable a few more tests * update typescript * couple docs updates Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
54 lines
1.8 KiB
JavaScript
54 lines
1.8 KiB
JavaScript
import { h } from 'preact';
|
|
import Select from '../Select';
|
|
import { fireEvent, render, screen } from '@testing-library/preact';
|
|
|
|
describe('Select', () => {
|
|
test('on focus, shows a menu', async () => {
|
|
const handleChange = vi.fn();
|
|
render(
|
|
<Select
|
|
label="Tacos"
|
|
type="dropdown"
|
|
onChange={handleChange}
|
|
options={['all', 'tacos', 'burritos']}
|
|
paramName={['dinner']}
|
|
selected=""
|
|
/>
|
|
);
|
|
|
|
expect(screen.queryByRole('listbox')).not.toBeInTheDocument();
|
|
fireEvent.click(screen.getByRole('textbox'));
|
|
expect(screen.queryByRole('listbox')).toBeInTheDocument();
|
|
expect(screen.queryByRole('option', { name: 'all' })).toBeInTheDocument();
|
|
expect(screen.queryByRole('option', { name: 'tacos' })).toBeInTheDocument();
|
|
expect(screen.queryByRole('option', { name: 'burritos' })).toBeInTheDocument();
|
|
|
|
fireEvent.click(screen.queryByRole('option', { name: 'tacos' }));
|
|
expect(handleChange).toHaveBeenCalledWith({ dinner: 'tacos' });
|
|
});
|
|
|
|
test('allows keyboard navigation', async () => {
|
|
const handleChange = vi.fn();
|
|
render(
|
|
<Select
|
|
label="Tacos"
|
|
type="dropdown"
|
|
onChange={handleChange}
|
|
options={['tacos', 'burritos']}
|
|
paramName={['dinner']}
|
|
selected=""
|
|
/>
|
|
);
|
|
|
|
expect(screen.queryByRole('listbox')).not.toBeInTheDocument();
|
|
const input = screen.getByRole('textbox');
|
|
fireEvent.focus(input);
|
|
fireEvent.keyDown(input, { key: 'Enter', code: 'Enter' });
|
|
expect(screen.queryByRole('listbox')).toBeInTheDocument();
|
|
|
|
fireEvent.keyDown(input, { key: 'ArrowDown', code: 'ArrowDown' });
|
|
fireEvent.keyDown(input, { key: 'Enter', code: 'Enter' });
|
|
expect(handleChange).toHaveBeenCalledWith({ dinner: 'burritos' });
|
|
});
|
|
});
|