Custom Matchers for Jest
Learn what a matcher is, why we need them, and how to develop your own.
We'll cover the following...
What is a matcher?
A matcher (or an assertion) is a function that is used to check for a specific condition. Most often, it compares two values. Here are some of the basic matches available in Jest:
Why do we need custom matchers?
While Jest is very powerful out-of-box, there is always something specific to the project that you can add. It should improve readability and reduce the amount of code by creating a custom Jest matcher for a common use case.
In one of my projects, I had to test whether a certain value was a correctly formatted ISO date. It can be done with a regular expression, but I had to test it so many times, it was worth moving this logic to a custom Jest matcher.
Add a setup file
Before we add the matcher itself, it is important to add a setup file for Jest. A setup file is a file that is ...