frigate/web/src/api/__tests__/ws.test.jsx

150 lines
4.6 KiB
React
Raw Normal View History

2021-02-16 07:10:20 +03:00
import { h } from 'preact';
import { WS, WsProvider, useWs } from '../ws';
2021-02-16 07:10:20 +03:00
import { useCallback, useContext } from 'preact/hooks';
2022-03-06 07:16:31 +03:00
import { fireEvent, render, screen } from 'testing-library';
2021-02-16 07:10:20 +03:00
function Test() {
const { state } = useContext(WS);
2021-02-16 07:10:20 +03:00
return state.__connected ? (
<div data-testid="data">
{Object.keys(state).map((key) => (
2022-02-26 22:11:00 +03:00
<div key={key} data-testid={key}>
{JSON.stringify(state[key])}
</div>
2021-02-16 07:10:20 +03:00
))}
</div>
) : null;
}
const TEST_URL = 'ws://test-foo:1234/ws';
describe('WsProvider', () => {
2021-02-16 07:10:20 +03:00
let createWebsocket, wsClient;
beforeEach(() => {
wsClient = {
Update web deps (#4383) * 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>
2022-11-13 19:31:36 +03:00
close: vi.fn(),
send: vi.fn(),
2021-02-16 07:10:20 +03:00
};
Update web deps (#4383) * 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>
2022-11-13 19:31:36 +03:00
createWebsocket = vi.fn((url) => {
2021-02-16 07:10:20 +03:00
wsClient.args = [url];
return new Proxy(
{},
{
2022-02-26 22:11:00 +03:00
get(_target, prop, _receiver) {
2021-02-16 07:10:20 +03:00
return wsClient[prop];
},
2022-02-26 22:11:00 +03:00
set(_target, prop, value) {
Update web deps (#4383) * 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>
2022-11-13 19:31:36 +03:00
wsClient[prop] = typeof value === 'function' ? vi.fn(value) : value;
2021-02-16 07:10:20 +03:00
if (prop === 'onopen') {
wsClient[prop]();
}
return true;
},
}
);
});
});
test('connects to the ws server', async () => {
2021-02-16 07:10:20 +03:00
render(
<WsProvider config={mockConfig} createWebsocket={createWebsocket} wsUrl={TEST_URL}>
2021-02-16 07:10:20 +03:00
<Test />
</WsProvider>
2021-02-16 07:10:20 +03:00
);
await screen.findByTestId('data');
expect(wsClient.args).toEqual([TEST_URL]);
expect(screen.getByTestId('__connected')).toHaveTextContent('true');
});
test('receives data through useWs', async () => {
2021-02-16 07:10:20 +03:00
function Test() {
const {
value: { payload, retain },
connected,
} = useWs('tacos');
2021-02-16 07:10:20 +03:00
return connected ? (
<div>
<div data-testid="payload">{JSON.stringify(payload)}</div>
<div data-testid="retain">{JSON.stringify(retain)}</div>
</div>
) : null;
}
const { rerender } = render(
<WsProvider config={mockConfig} createWebsocket={createWebsocket} wsUrl={TEST_URL}>
2021-02-16 07:10:20 +03:00
<Test />
</WsProvider>
2021-02-16 07:10:20 +03:00
);
await screen.findByTestId('payload');
wsClient.onmessage({
data: JSON.stringify({ topic: 'tacos', payload: JSON.stringify({ yes: true }), retain: false }),
});
rerender(
<WsProvider config={mockConfig} createWebsocket={createWebsocket} wsUrl={TEST_URL}>
2021-02-16 07:10:20 +03:00
<Test />
</WsProvider>
2021-02-16 07:10:20 +03:00
);
expect(screen.getByTestId('payload')).toHaveTextContent('{"yes":true}');
expect(screen.getByTestId('retain')).toHaveTextContent('false');
});
test('can send values through useWs', async () => {
2021-02-16 07:10:20 +03:00
function Test() {
const { send, connected } = useWs('tacos');
2021-02-16 07:10:20 +03:00
const handleClick = useCallback(() => {
send({ yes: true });
}, [send]);
return connected ? <button onClick={handleClick}>click me</button> : null;
}
render(
<WsProvider config={mockConfig} createWebsocket={createWebsocket} wsUrl={TEST_URL}>
2021-02-16 07:10:20 +03:00
<Test />
</WsProvider>
2021-02-16 07:10:20 +03:00
);
await screen.findByRole('button');
fireEvent.click(screen.getByRole('button'));
await expect(wsClient.send).toHaveBeenCalledWith(
2022-04-25 14:59:52 +03:00
JSON.stringify({ topic: 'tacos', payload: JSON.stringify({ yes: true }), retain: false })
2021-02-16 07:10:20 +03:00
);
});
test('prefills the recordings/detect/snapshots state from config', async () => {
Update web deps (#4383) * 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>
2022-11-13 19:31:36 +03:00
vi.spyOn(Date, 'now').mockReturnValue(123456);
const config = {
cameras: {
front: { name: 'front', detect: { enabled: true }, record: { enabled: false }, snapshots: { enabled: true } },
side: { name: 'side', detect: { enabled: false }, record: { enabled: false }, snapshots: { enabled: false } },
},
};
render(
<WsProvider config={config} createWebsocket={createWebsocket} wsUrl={TEST_URL}>
<Test />
</WsProvider>
);
await screen.findByTestId('data');
2022-02-26 22:11:00 +03:00
expect(screen.getByTestId('front/detect/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"ON","retain":false}'
2022-02-26 22:11:00 +03:00
);
expect(screen.getByTestId('front/recordings/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"OFF","retain":false}'
2022-02-26 22:11:00 +03:00
);
expect(screen.getByTestId('front/snapshots/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"ON","retain":false}'
2022-02-26 22:11:00 +03:00
);
expect(screen.getByTestId('side/detect/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"OFF","retain":false}'
2022-02-26 22:11:00 +03:00
);
expect(screen.getByTestId('side/recordings/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"OFF","retain":false}'
2022-02-26 22:11:00 +03:00
);
expect(screen.getByTestId('side/snapshots/state')).toHaveTextContent(
2022-04-25 14:59:52 +03:00
'{"lastUpdate":123456,"payload":"OFF","retain":false}'
2022-02-26 22:11:00 +03:00
);
});
2021-02-16 07:10:20 +03:00
});
const mockConfig = {
cameras: {},
};