Home > @lynx-js/react/testing-library > renderHook

renderHook() function

Allows you to render a hook within a test React component without having to create that component yourself.

Signature:

export function renderHook<Result, Props>(
  render: (initialProps: Props) => Result,
  options?: RenderHookOptions<Props>,
): RenderHookResult<Result, Props>;

Parameters

Parameter Type Description
render (initialProps: Props) => Result
options RenderHookOptions<Props> (Optional)

Returns:

RenderHookResult<Result, Props>

Example

import { renderHook } from '@lynx-js/react/testing-library'

const Context = createContext('default');
function Wrapper({ children }) {
  return <Context.Provider value='provided'>{children}</Context.Provider>;
}
const { result } = renderHook(
  () => {
    return useContext(Context);
  },
  {
    wrapper: Wrapper,
  },
);

expect(result.current).toEqual('provided');
Except as otherwise noted, this work is licensed under a Creative Commons Attribution 4.0 International License, and code samples are licensed under the Apache License 2.0.