diff --git a/src/__tests__/element-queries.js b/src/__tests__/element-queries.js index 4161f3fe..43326413 100644 --- a/src/__tests__/element-queries.js +++ b/src/__tests__/element-queries.js @@ -95,6 +95,20 @@ test('using jest helpers to assert element states', () => { expect(() => expect(queryByTestId('count-value2')).toHaveTextContent('2'), ).toThrowError() + + // negative test cases wrapped in throwError assertions for coverage. + expect(() => + expect(queryByTestId('count-value')).not.toBeInTheDOM(), + ).toThrowError() + expect(() => + expect(queryByTestId('count-value1')).toBeInTheDOM(), + ).toThrowError() + expect(() => + expect(queryByTestId('count-value')).toHaveTextContent('3'), + ).toThrowError() + expect(() => + expect(queryByTestId('count-value')).not.toHaveTextContent('2'), + ).toThrowError() }) /* eslint jsx-a11y/label-has-for:0 */ diff --git a/src/jest-extensions.js b/src/jest-extensions.js index 69e1e92c..c94e29f6 100644 --- a/src/jest-extensions.js +++ b/src/jest-extensions.js @@ -18,7 +18,7 @@ const extensions = { getDisplayName(received) if (received) { return { - message: + message: () => `${matcherHint( '.not.toBeInTheDOM', 'received', @@ -29,7 +29,7 @@ const extensions = { } } else { return { - message: + message: () => `${matcherHint( '.toBeInTheDOM', 'received', @@ -53,22 +53,24 @@ const extensions = { const pass = matches(textContent, htmlElement, checkWith) if (pass) { return { - message: assertMessage( - '.not.toHaveTextContent', - 'Expected value not equals to', - htmlElement, - checkWith, - ), + message: () => + assertMessage( + '.not.toHaveTextContent', + 'Expected value not equals to', + htmlElement, + checkWith, + ), pass: true, } } else { return { - message: assertMessage( - '.toHaveTextContent', - 'Expected value equals to', - htmlElement, - checkWith, - ), + message: () => + assertMessage( + '.toHaveTextContent', + 'Expected value equals to', + htmlElement, + checkWith, + ), pass: false, } }