Files
upstream-hocuspocus/tests/utils/newHocuspocusProvider.ts
upstream-mirror e0c588ca1c
Some checks failed
build / lint (22) (push) Failing after 17s
build / test (22) (push) Failing after 8s
build / lint (23) (push) Failing after 2s
build / build (22) (push) Has been skipped
build / build (23) (push) Has been skipped
build / test (23) (push) Failing after 4s
docsearch / docsearch (push) Failing after 1s
snapshot of https://github.com/ueberdosis/hocuspocus.git @ cf3cfa355b4d3bb61c6b6c80071f71783e32470e (2026-09-15)
2026-09-15 17:21:35 +05:00

33 lines
1.0 KiB
TypeScript

import type { ExecutionContext } from "ava";
import {
HocuspocusProvider,
type HocuspocusProviderConfiguration,
type HocuspocusProviderWebsocket,
type HocuspocusProviderWebsocketConfiguration,
} from "@hocuspocus/provider";
import type { Hocuspocus } from "@hocuspocus/server";
import { newHocuspocusProviderWebsocket } from "./newHocuspocusProviderWebsocket.ts";
export const newHocuspocusProvider = (
t: ExecutionContext,
server: Hocuspocus,
options: Partial<HocuspocusProviderConfiguration> = {},
websocketOptions: Partial<HocuspocusProviderWebsocketConfiguration> = {},
websocketProvider?: HocuspocusProviderWebsocket,
): HocuspocusProvider => {
const provider = new HocuspocusProvider({
websocketProvider:
websocketProvider ??
newHocuspocusProviderWebsocket(t, server, websocketOptions),
// Just use a generic document name for all tests.
name: "hocuspocus-test",
// Add or overwrite settings, depending on the test case.
...options,
});
provider.attach();
t.teardown(() => provider.destroy());
return provider;
};