30 lines
898 B
JavaScript
30 lines
898 B
JavaScript
import { queryHelpers, buildQueries } from "@testing-library/react";
|
|
|
|
// The queryAllByAttribute is a shortcut for attribute-based matchers
|
|
// You can also use document.querySelector or a combination of existing
|
|
// testing library utilities to find matching nodes for your query
|
|
const queryAllByDataCy = (...args) =>
|
|
queryHelpers.queryAllByAttribute("data-cy", ...args);
|
|
|
|
const getMultipleError = (c, dataCyValue) =>
|
|
`Found multiple elements with the data-cy attribute of: ${dataCyValue}`;
|
|
const getMissingError = (c, dataCyValue) =>
|
|
`Unable to find an element with the data-cy attribute of: ${dataCyValue}`;
|
|
|
|
const [
|
|
queryByDataCy,
|
|
getAllByDataCy,
|
|
getByDataCy,
|
|
findAllByDataCy,
|
|
findByDataCy,
|
|
] = buildQueries(queryAllByDataCy, getMultipleError, getMissingError);
|
|
|
|
export {
|
|
queryByDataCy,
|
|
queryAllByDataCy,
|
|
getByDataCy,
|
|
getAllByDataCy,
|
|
findAllByDataCy,
|
|
findByDataCy,
|
|
};
|