0.1.0 • Published 3 years ago

rescript-hooks-testing-library v0.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
3 years ago

ReScript bindings for react-hooks-testing-library.

Installation

npm install --save-dev rescript-hooks-testing-library

Then add rescript-hooks-testing-library to bs-dev-dependencies in your bsconfig.json:

{
  "bs-dev-dependencies": ["@glennsl/bs-jest", "rescript-hooks-testing-library"]
}

Example

open Jest
open Expect
open Testing

type counterType = {
  counter: int,
  set: (int => int) => unit,
}

let useCounter = initial => {
  let (counter, set) = React.useState(() => initial)
  {counter: counter, set: set}
}

describe("useCounter", () => {
  open Result
  let container = renderHook(() => useCounter(0), ())
  test("counter is 0", () => expect(container.result.current.counter) |> toEqual(0))
  test("counter is 1", () => {
    act(() => container.result.current.set(prev => prev + 1))
    expect(container.result.current.counter) |> toEqual(1)
  })
  test("counter is 2", () => {
    act(() => container.result.current.set(prev => prev + 1))
    expect(container.result.current.counter) |> toEqual(2)
  })
})

More usage examples

  1. Tests
  2. react-hooks-testing-library documentation