chore(expect): clarify message() for custom matchers (#33321)

This commit is contained in:
Simon Knott 2024-11-04 16:58:20 +01:00 committed by GitHub
parent edf1eb154d
commit cb0171e571
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 2 additions and 2 deletions

View File

@ -254,7 +254,7 @@ Note that by default `toPass` has timeout 0 and does not respect custom [expect
You can extend Playwright assertions by providing custom matchers. These matchers will be available on the `expect` object.
In this example we add a custom `toHaveAmount` function. Custom matcher should return a `message` callback and a `pass` flag indicating whether the assertion passed.
In this example we add a custom `toHaveAmount` function. Custom matcher should return a `pass` flag indicating whether the assertion passed, and a `message` callback that's used when the assertion fails.
```js title="fixtures.ts"
import { expect as baseExpect } from '@playwright/test';
@ -279,7 +279,7 @@ export const expect = baseExpect.extend({
? () => this.utils.matcherHint(assertionName, undefined, undefined, { isNot: this.isNot }) +
'\n\n' +
`Locator: ${locator}\n` +
`Expected: ${this.isNot ? 'not' : ''}${this.utils.printExpected(expected)}\n` +
`Expected: not ${this.utils.printExpected(expected)}\n` +
(matcherResult ? `Received: ${this.utils.printReceived(matcherResult.actual)}` : '')
: () => this.utils.matcherHint(assertionName, undefined, undefined, { isNot: this.isNot }) +
'\n\n' +