reblend-testing-library
Version:
Simple and complete Reblendjs testing utilities that encourage good testing practices.
29 lines (28 loc) • 1.41 kB
TypeScript
import { BoundFunctions, PrettyDOMOptions, Queries } from "@testing-library/dom";
import { fireEvent } from "./fire-event";
import { getConfig, configure } from "./config";
import { ReblendNode } from "reblendjs";
export interface IRenderOption<C = HTMLElement, T extends Queries = {}> {
baseElement?: HTMLElement;
container?: C;
queries?: T;
wrapper?: ReblendNode;
}
export type IRenderReturnType<T = HTMLElement> = BoundFunctions<any> & {
container: T;
baseElement: HTMLElement;
debug: (dom?: never | unknown | Element | Document, maxLength?: number, options?: PrettyDOMOptions) => void;
unmount: () => Promise<void>;
rerender: (ui: ReblendNode) => Promise<void>;
asFragment: () => DocumentFragment;
};
declare function render<C = HTMLElement, T extends Queries = {}>(ui: ReblendNode, { baseElement, container, queries, wrapper, }?: IRenderOption<C> | undefined): Promise<IRenderReturnType<C>>;
declare function cleanup(): Promise<void>;
declare function renderHook<T>(useRenderCallback: (...args: any[]) => T, options?: {}): Promise<{
result: import("reblend-typing").Ref<T>;
rerender: (rerenderCallbackProps: any) => Promise<void>;
unmount: () => Promise<void>;
}>;
declare function act(callback: () => void | Promise<void>): Promise<void>;
export * from "@testing-library/dom";
export { act, render, renderHook, cleanup, fireEvent, getConfig, configure };