{"_id":"@playwright-testing-library/test","_rev":"21-60aad94fe783d045f7cbf4c6bc6a07b6","name":"@playwright-testing-library/test","dist-tags":{"beta":"4.4.0-beta.6","latest":"4.5.0"},"versions":{"4.0.0-beta.6":{"name":"@playwright-testing-library/test","version":"4.0.0-beta.6","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.15.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.15.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"ade8e7ac67b75756338a9ee061073b195d82bb22","_id":"@playwright-testing-library/test@4.0.0-beta.6","_nodeVersion":"14.17.6","_npmVersion":"7.24.1","dist":{"integrity":"sha512-Kh3r4Mv/zyPyG3PiBR39gGR+nhRCDh7+zFtJbtRxxiqx6yvRlsDCrcejrinOupaOUHo3Zi4gLJBvkcLca43SEw==","shasum":"a53f238329fb748828390853fdc76fc891c7aa84","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.0-beta.6.tgz","fileCount":39,"unpackedSize":959496,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDfP9ZfHRRdmjta3BmDklJCcb0zIQaEKXE/YqAn9GIwoAiAE218n0qJ6ucY6fWvAUJxQo7SCII6C4CaSDJlYQLqUiA=="}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.0-beta.6_1633377334634_0.3523053977138533"},"_hasShrinkwrap":false},"4.0.0-beta.7":{"name":"@playwright-testing-library/test","version":"4.0.0-beta.7","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.15.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.15.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Package Version][npm-badge]][npm-link]\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Dependencies Status][david-badge]][david-link]\n[![MIT License][license-badge]][license-link] <br>\n[![Code Style][prettier-badge]][prettier-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\n> ⚠️ Note: this is a fork of [pptr-testing-library](https://github.com/testing-library/pptr-testing-library) modified to accomodate for some subtle API differences.\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\nnpm install --save-dev playwright-testing-library\n```\n\nor\n\n```bash\nyarn add --dev playwright-testing-library\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `getQueriesForElement`\n  const {getByLabelText} = $form.getQueriesForElement()\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  expect($email).toHaveValue('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/hover-javascript#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"4329ce47aab45247e8456b3e760d094cb2c9aca5","_id":"@playwright-testing-library/test@4.0.0-beta.7","_nodeVersion":"14.18.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-KshqP/0ltJzleUfEVZjbKHbKjS/YVvyfstvRd+Ydzc0MKPT3IoY5Cs5YImkRWU5rL4WwABpxMl1O08npuDouNg==","shasum":"e8de0cdd23c0a2dfe723a6140ebebfcd3f3076d1","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.0-beta.7.tgz","fileCount":38,"unpackedSize":599855,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCm6+93xCnBwlMRYWVNqU+Bx/mHITYyDqj8ZX9aaX5OSgIhAJM6M0rCQswrw3aU8rwZUNRh8vdHpdwMLSziX1IKUFiL"}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.0-beta.7_1633381022821_0.3727709433021631"},"_hasShrinkwrap":false},"4.0.0-beta.9":{"name":"@playwright-testing-library/test","version":"4.0.0-beta.9","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.15.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.15.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Package Version][npm-badge]][npm-link]\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Dependencies Status][david-badge]][david-link]\n[![MIT License][license-badge]][license-link] <br>\n[![Code Style][prettier-badge]][prettier-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\n> ⚠️ Note: this is a fork of [pptr-testing-library](https://github.com/testing-library/pptr-testing-library) modified to accomodate for some subtle API differences.\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\nnpm install --save-dev playwright-testing-library\n```\n\nor\n\n```bash\nyarn add --dev playwright-testing-library\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `getQueriesForElement`\n  const {getByLabelText} = $form.getQueriesForElement()\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  expect($email).toHaveValue('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/hover-javascript#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"20fd768ae9b78b818b13a1e4a0e2f82058f0c701","_id":"@playwright-testing-library/test@4.0.0-beta.9","_nodeVersion":"14.18.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-4xE45ikrFU0W2qBYzhCg/cMxbXsx3KWng6WVzBFKo7UnMSGwXA6RDBu3PYcP85y5Zg4yZo1cpFkbF9/uS36Vzw==","shasum":"a97ec9eb67f982bd252233187c739b8da1d3ab50","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.0-beta.9.tgz","fileCount":38,"unpackedSize":600315,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC/4mbefvnwK8Gm2cZhfJMGoToNYNZif3UpbRPLZp46OwIhAP9eCHxglA6AYxfKDJNgbYQ083pv1jdt9JqNGsj2oYUU"}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.0-beta.9_1633463484738_0.9227362295133879"},"_hasShrinkwrap":false},"4.0.0-beta.10":{"name":"@playwright-testing-library/test","version":"4.0.0-beta.10","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.15.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.15.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Package Version][npm-badge]][npm-link]\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Dependencies Status][david-badge]][david-link]\n[![MIT License][license-badge]][license-link] <br>\n[![Code Style][prettier-badge]][prettier-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\n> ⚠️ Note: this is a fork of [pptr-testing-library](https://github.com/testing-library/pptr-testing-library) modified to accomodate for some subtle API differences.\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\nnpm install --save-dev playwright-testing-library\n```\n\nor\n\n```bash\nyarn add --dev playwright-testing-library\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `getQueriesForElement`\n  const {getByLabelText} = $form.getQueriesForElement()\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  expect($email).toHaveValue('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/hover-javascript#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"1edcd570918b25bb052b2ac706629a6410f1a08d","_id":"@playwright-testing-library/test@4.0.0-beta.10","_nodeVersion":"14.18.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-Tp3tEad3IyzDaSTKImauYmWCG3ZEe+x8G569LvKcWfSdzk4uNCInehb1zH3gpQI/4avU4Iqx9b7Fnn87WqulzQ==","shasum":"1e6a0c9552d002f5cfb30c00795e165fc10833c9","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.0-beta.10.tgz","fileCount":42,"unpackedSize":601210,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBikFb4CHYU34VE7xW23fI5uYRpWUxzmvQXZHvthVNx0AiAbJgQdBzq/Ky4i8r04NgLpWv5089B/8hz9Eq98nOF5cQ=="}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.0-beta.10_1633479574913_0.3531532899849703"},"_hasShrinkwrap":false},"4.0.1":{"name":"@playwright-testing-library/test","version":"4.0.1","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.16.3","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.16.3","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"81a74b10beb13a750464e2c6fdee522406fd136f","_id":"@playwright-testing-library/test@4.0.1","_nodeVersion":"14.18.1","_npmVersion":"7.24.2","dist":{"integrity":"sha512-81mI2WNFqTzwHjTE5vL3gu0YoaKGpkfpVYhT0HfauLJyGbj+0ueWUYuVIEookTOs03EJi/A6eDw1ySDcjR6h9A==","shasum":"7bea88109904a69a8dd45e57662e99f42206a8dd","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.1.tgz","fileCount":42,"unpackedSize":601362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2Wk9CRA9TVsSAnZWagAAZ+sP/1D7pktsRCCGJWkpSoGx\nbylQHdRlgL/2skkuhOlkUkgSqgaMNwVrIGiti6jcIz6wdZvl64icSHQPmNiv\nL4Ej9MgtHWUEoqNc2Eks/vJCCMv3E5SJqU1RUzTmzBd69zl2NC9WDZzCWfUH\nxzErxDhT6P46H9I9h3m4Jop2Sm2vmYA7NZTdq41gZXdDzWCgJyIXVBWHzvob\nw1G2L878Opr4y5YeGpxrN9bxWeoTt+VSlXHlbOu6D32wsIF80joa2+hXqWQ2\n4BxP1h+SUi89kFV4Viku5J/B1x1rpMPnAGxtgMmAJ6wCqmOM3PpF0slE/9b8\nZHgMn5ZF/z+RWsET/jpdXAain/mjnT1LNVvU0B8Lpu+krwbmnHDeS0sNK3QQ\nePl9Y8b1RCpC98kWQGHWu0aqUhsIJ3g3fUPk3Uz9D3zLn1wfK23s53P2wz9n\n0CB8nIbJ0HayfLUSEtxQTvL3XuwaPYs9kguYZM4+J3ix/c7PPYcvnAypM4Jw\n/IsRqUKX3Vya2g/M1J+lSJrwjdiBQTjJq2gm8/daOTrgTuFrJH+ReTp45A/p\nsDm1mfYRY7SI+eESQinWyNja4Hvii5bcbyoB68oiiMyRfc8JrZnX5/q7jkIx\nltKXHsL87MxCKArqt0n0YCtOrWqQvVIa+/zYJFb10jLdlPYTGtNAlGgNdB6g\n9RDU\r\n=rGIF\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDflRVOUztikGokoEmvbFvNegZ7u4XvbwZtsWftGjIFEAIhAM2/8ZOhB9GjscolxXs/+3hkujX6UA3QScPu7O7qPQO4"}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.1_1635887802489_0.6412778004705832"},"_hasShrinkwrap":false},"4.0.2":{"name":"@playwright-testing-library/test","version":"4.0.2","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.19.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.19.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"3c562f38312daa8d0439436804fac521276e07da","_id":"@playwright-testing-library/test@4.0.2","_nodeVersion":"14.19.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-/YQUQFFGZAJx96U0j/ItHG0nRdXpxFX7CXRlgG0f463rgXDLuhZFY2gPLqUTrH9iY39IJe/7Lt/sRIxShVvDIQ==","shasum":"9d2b7ccbf3ca64c81f1413cc52c593362b243ac1","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.0.2.tgz","fileCount":42,"unpackedSize":602405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiEFuvACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq4bA/+LcQSqANUNUAlseyJ2baQhTsSdU18H7CQK2KsI+MgP66Kx3oa\r\ngB8Xa56V3JRadvVjc37KZQ7sfUaVuE00HsXTfNps3hrfe8uBMz8GBwzLvDZq\r\nntuP1QGL4xRZUAieREpu/eB6f/zXu2I2TCIzyZ0Og0TeQQ+mGvJL922bIMVs\r\niZWmTG8O6fKnXoxIeZfLPBCD/qp8BmdWVghTMjRbk3r2ZbcR77DX1n4IT8h5\r\nbzClhyhgNqV1kIzFK2pn1piF1NN6VafBKiS80OhMI90VAoLDSoYqoTJTwSeS\r\n6g/WXwKFQvaF0yNKyjqZ/zgEzYSYPgMDjWwjYVNGzL0bqpa+HdQL9mWdHF+f\r\n/30ndC8I8XRYf8/5mas8DSqw3CeTlXY8FekoFmntgtl8xLhdXpgXD61la5vN\r\nAp/nGw4RtDdLUcuW2w24AspoEeGU4aRkVjFtV5+PJlMY7LMdrMGPgZ9CDeP9\r\n7XiKj5EzV80SihomQgtZ2z2Np4/1GHMpn0WEfl25QsW1gfi6Og5edG2WqfFs\r\nv/1YNOF8WOrzNQtd83+UxEDJ5w+c9dO/47IoUR5lTHdAYpdq9PDlEqs3qe/2\r\ncCJx9YQ/lLXL3cya3W3MKTWwmpCDHLuqZrnTLUW+SN8F0iDIgj23ebCVvIJG\r\nQJDxmYYMnn/v16RQ6hxRCtrznA1V4N9vfok=\r\n=j/FP\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCzqA75XOMKRkVnZYrLkLx9StIt8XE4wNFcou/3suF7OAIgZFB9ZQFWDOmdsiYyjnYhutP/78yzM8XrSL/bMtqPnKY="}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.0.2_1645239214820_0.09950318391279134"},"_hasShrinkwrap":false},"4.1.0":{"name":"@playwright-testing-library/test","version":"4.1.0","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.22.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.19.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.19.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"59a6c953ed98d4516cf768a73a82bca91b7e575c","_id":"@playwright-testing-library/test@4.1.0","_nodeVersion":"14.19.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-gwOP+qWml0px5qkphwpgjzkNP2wR231lu4KE2OGSYLHU8m34B/wF+N3xUeX8Ol7jPe1M8CuEx1Mq6tKq6fYcZQ==","shasum":"8b1b401fbd3539080b3669aed61dcec463f2fb6c","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.1.0.tgz","fileCount":42,"unpackedSize":602451,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFRbkACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmpf1g/+M4rjGqvFH9zuIueHmIj5eGiA5MocOk4yk2K/xdRI46vPg7Pv\r\nELkbdOT6P+Uhzx7iLR5J8NnFohGvR8wyY44M260W9xDHh2+ooaaQqXqZsGgj\r\nLTbuNq8lQ69Z5QMlZFvPsn7JLCRe8bqg9TF3JCxkUQHMaJnuzqLP0jNfm7oK\r\ns9sBEKhCcvShDYunokVaW3QgcbFYNYtg59n4Oh6THwoylTHvH+K2CxlvJ14t\r\ncsWfTNykuFxZ4mh2/YPYlEqozrXGbldBcglNZwjubHGAzDIYlvoUoLztFieS\r\nW1jViCpHeSFeM1HxY+UH1rXFKGDVcV0c32rUKewXNUGKGB73XgeqDWlIYds0\r\nKdXmGNgi+sHs9HZisofQTC/EWefDxssFoS0KnLrklcIQQ+5IqadbZTZikQ2s\r\n11YRwFNlOPTrdVO9KHyCigWCXWmB5jxmDZ5ojhBq2K4Tk+T/C1xu+Lv2SNhN\r\nPgCMpLHXmTPn0PYlkm7q8bCOaORWKrdMk9uC9xdZb6oti1VsYI57YTdRG6iO\r\nsiYXEq5g3LHbZJ2BOqKA+p0zRA9JnXx4lvxFwUjxM9gCOvnBGz9Z/ZddvkPD\r\ngUiDV4kSXjyTmQHR0a4yFpOpAjlagLiXreZXl7WFfixFl9ChxNVb0moxjYMi\r\nlwIgZLu4E1w3lf+I8cumm7m5spwzCOrGRbk=\r\n=iMHR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIElK/wyiZsdAaHgRAjTZqAythSr036Evo7cQ9woGS9wYAiAzyNXGYa4hv1iND+MG/KHTlg1gY9W/hcNpmFhf07yvww=="}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.1.0_1645549284399_0.3826498913277312"},"_hasShrinkwrap":false},"4.2.0":{"name":"@playwright-testing-library/test","version":"4.2.0","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.19.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.19.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"1805c1c7787d1fe3dcd646e8ee47246e55a1fbdf","_id":"@playwright-testing-library/test@4.2.0","_nodeVersion":"14.19.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-yJVpYCzJ/TR0coZBC/LNNMXj3cq0GDp9e665ztTuT0qgWcQ80Bk6EIsFzIaNPdFAX4ul1ghIPQAxdq08MSdQIA==","shasum":"9bd43bafa8511dc0765af44cfcad5c4cba7a4270","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.2.0.tgz","fileCount":42,"unpackedSize":643895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiFVUWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMNg//QokvBpCXNr/MvrBanTURydMZd8Ptk/ayJ6aMO/utCyhcc9Xu\r\nHgYhgbSEQx07XDHAXmSdlMD6Sb6VHh0hK0Sy+D6Z749AkWC87lul9U9Jfi5A\r\n6gy/oIs2dnIcQy3J0kUU81/1KSb72x2IBx1nbPxvGxx5uuNxxfSKuJU/4s4J\r\nLyA3kHsGWQCcTQ3pWup025Ic8KKSIdpVSzS0W+flI08yMv17zUNOZCbP98Fe\r\npWFLVQzcr9RbB/7Slw1Oyagp1w4yKlTKTE6bTTMt78iIws1Hs11ieB7uREL9\r\npvP3xl64X4FtaARO9sTNqMMqpTjTsEm7ymt58j+pjseJrHEvVyJOaTAgxfpx\r\nM/Zs8Emor/ZWMtE8S2ku1k2CdwoBwRQRAQm+PfkXti380C5Gp7X7qWmXyz0L\r\nlMZGFx4dWHJxH/ncMIWKOdc4L+5/orM8CxGcRxh8/WaTMP8Zbl7ZI+WYBypH\r\neuKonJMGEZBepuI7i0VJAQauulDp0u0pPVf98qVpUUrzBhGhZqnt7yZMsbNW\r\nZ0kWRqm/bspK3DcuJsqDPFjrTMQ476SFmIorpjsouX/I31br4n/oKgEXh3Wq\r\n2fDNpyYzmoVL2opYdqI17S3I8q5+lf5V1T6Uidcq/9a2NG5NjJpgz7ViBr97\r\nZVSCApGMACkOyjwsbyqxyH5/K8jPf8AXmNs=\r\n=6ZzU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCJKl4CM2L9ApYfS5u6SaI4XsMyMXPGWVf/IDRmppouyAIgSuLr1LaagO1z5PVaV8xfMSGzPVxOkMqwaQ837mAOF1Y="}]},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.2.0_1645565206786_0.40773863194003845"},"_hasShrinkwrap":false},"4.2.1":{"name":"@playwright-testing-library/test","version":"4.2.1","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.21.0","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.21.0","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"f61714b6b355d515ad07f0e39583840708045016","_id":"@playwright-testing-library/test@4.2.1","_nodeVersion":"14.19.1","_npmVersion":"7.24.2","dist":{"integrity":"sha512-95EJjXMYETxc2LgMGH9FEQE8AoUV8roWvK79Cu+qEg3ZrZkScROWp60L/0ow60RnvUMXTMdr0tgPhidIAsvKpA==","shasum":"4f77e4827fadbcd74d078e2f0f7818a3d4ddf76d","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.2.1.tgz","fileCount":42,"unpackedSize":643899,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF5jqL51I2wLsErAxNbuIdIS50uUDkacpE0oWx+CRNaXAiEAwwBYKPvZTaUaqF2wt2CjKJZeJNX4hKtTc/Vji1dQq0U="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiVyqmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoRBw/9H8Cg+MVfHHtyJzU6YLUL0IC0SvQsydrBwmrhH33cACLR3qXj\r\n/A5u8mzr8aYf+xUYil5h9EWNTqylfrrPUDfo8VS6EJrN+qT11TIYj2U79ucY\r\nB1KWuM7jzji0BVqY597ygZWSaBZOu4Icu7K1BtRtSBrQf8/CfxtNddT9oEaf\r\n/LU2L38pEFq5LK92A//jBWz03UxdzOaIKak1GBVley1sysgaM+6PkazVv6vk\r\n3faLu6hPZEGsDFPB/B7xPMo2mgu4EwyvjGoIyOg2Wp2OhH0dYs8RJwxH7TYK\r\nY0M1kYxpTLDYvW1MCqW2m75UZog26HmC5PJcFjQufgSuPvc1iJcSrUI7eb3U\r\ngkbqwmKQCi/dYs4H//Uij5xdyh7Swf4TDpQNtrwf4UKSFrlcZv3k7R7gtwxQ\r\nVJud/C3xQjBfM16JO2fqdhT29HCHI2VPXQukjgG3FfnMOYIKs6i6CwsGIHXR\r\ndwKpnPfntB+mfym8O2EfTwR8qZR2FoldSJYID2pdp94MroIKuH3r3FLUwiGx\r\nPcQZ2JG5y+U6rpuoNYCLCgZ8eS/NYKIPLm63mNjNoTsnWRFWFPeYoJdNWqs8\r\nhQyjsfEZdqJYuWxzfpJrcvlXEle2UhzuuLjmOp7vQ1rAUT7pg8kyqF51Um/k\r\nIVL0/bOyEAQE9JxvQrDVIBAS+bItg9oVz3w=\r\n=TaUs\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.2.1_1649879718226_0.2958196812753324"},"_hasShrinkwrap":false},"4.3.0-beta.1":{"name":"@playwright-testing-library/test","version":"4.3.0-beta.1","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.22.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.22.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\n> ⚠️ Note: this is a fork of [pptr-testing-library](https://github.com/testing-library/pptr-testing-library) modified to accomodate for some subtle API differences.\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"19c9ebd37917ec04eedf02e6dbe8d55b45f0855b","_id":"@playwright-testing-library/test@4.3.0-beta.1","_nodeVersion":"14.19.2","_npmVersion":"7.24.2","dist":{"integrity":"sha512-iNd+brm0v5hwxcChU/bds7pJ7ANUZTu5tP7n8fQa+q/75lXDE1xsJ6Ake4QRCZavAoUfLTSYBlQjBYF/NPX7UA==","shasum":"37b6013c9e09ca15ac6e465f1a44ddcbb5d3ddb0","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.3.0-beta.1.tgz","fileCount":58,"unpackedSize":664666,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC39e/0AoB8R3hRsF/YeVbm24a1ItbvFyDfASlJCNk7cgIgYZmkDPeSxZxPuzk3Y0/Ssh+waXTW/rU7kS6qBYvWCxQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJil+ISACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmr1MBAApMYkvt3kVL1JBBcbVO/SBZa9ahphxZRlOjkVpttE2/2f77TR\r\n0O9T/D043tvs58bh/UJnoWLqK/mfkeTj2ggUlYeBRrZ6alxRKD+RZQS9NhpO\r\n1E91bVf7hkPBqellJ0rfpIyTZFEepqil2SwZcMam4q3uYrj5tnMboOUouZKT\r\n+62gFI6EC0seQ7C0XSsdtc0+3zAz8SLXnfgj7v7IoDgPtx8GJyM1z2gmL8pG\r\nYzu9HMv68XgPNuWnay9SN+cErxiAdnGIwjnsBfEiI4ewVsXnXuOaVNVS/ZQM\r\nG/2ZCnb5eso2B8yhqin+nVkJ0ISv/VrY2hSAWFNPvHz+iEKihMnH7wUQTfbe\r\nEeajp1dcFd6ichcC2S0tUBIxztJDKz/BqYe4+ucQqcdMDLaqsZH3/Oy4X084\r\nv/825d5uMnOsDfEf4eym4dL0jP84wP/JjmOrJeDfRVNw05CiK8ptKx2gE4BK\r\nflb6J+H9ToJsKekQrC/HlSj0Y2zBfXUt9IluJH3b5n6SA4X2SO2IVkjGFTlK\r\nR1IzGVviQMxrFGSfmlfEpYfVS8TIJjHmwytbVIclKfsCe8c29g12qqisYVIQ\r\nWjgbnNcXxFn6YsRdxV+IZ44qNLqwdk4OOUotvTtySX5h2i5cwz/rT0it48wB\r\nzeuBllUWr/CvZsH1yE7Bc54tgJ0rr/8OEIM=\r\n=8MGR\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.3.0-beta.1_1654120977969_0.09890315963925378"},"_hasShrinkwrap":false},"4.3.0":{"name":"@playwright-testing-library/test","version":"4.3.0","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.24.0","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.24.0","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"081814d07c9d1e9b504e018daa29be8ccb7a913b","_id":"@playwright-testing-library/test@4.3.0","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-WwcbqjRMeF7DhDDdoXTPUiIghaonsewDYLxQd2gYDvMHRhCUaZyOpK0GUc8UJPU+S7tgyZs2+T0zdljx1m1skw==","shasum":"bd9bedba7e01c39db2dc3b83ee2b521897d79c0e","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.3.0.tgz","fileCount":42,"unpackedSize":644804,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0pSamYPQrya0IYY1dH45S2yGPh0Nv+X9fxephNXr5JQIhAPBlc46O6b+olyg+7yDtdjxaBg6JkAdFocREjjGH6nwx"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi3xk7ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmru7RAAnU92n56WvdEEw7sak2/gR2G9uiwgzclui2vaL0u23+r6AB1h\r\n8iuH31GGfHY1900pHh+iNNlEfmksXuPSwBx/KzH/LdlKvQTl47US1a7R+KF1\r\nFpO/VOOYt2cPXvGM7WqZhLr3mij6BZHQQvKAW3lnSG93nCz8ZmtQYK15Za9f\r\nq2zzugbJa33X+YPxpJhWO5Qg0tp5Ea960OwXECqH9HRpXauOAv2SWTYKVi4n\r\ngXpILfCcMio6K8gjwB98/ja0xLqAcYPwv68gyJUFP1d9PVAbEhOnVz306Mzo\r\nd33E9snea473voEXiIOXGMgb6Ds2sfCDUFYPNXvvkqyRRVypsfKgMEUCIQgu\r\nM4S1fW/Ev1R+VLkvz1PTPDB7b3/de8vGYxeFDCB6rVERQtJFsF/Qx4Tt1hIT\r\nwAVFvVu7IGWfGyVg5h04TKTG1anJa/psdVfaBTbNIDpIARB0/x0ZtSzl+cBG\r\npDldU3khRUAarhMFfdn068IOFQYpAViVpfEavEzgHQuWvQJmugSQGgZECHWQ\r\nfjPS9n1LrGiFULq0DblsT1NqQTFMaUwRImOWfJ3PQELwQOLYuH7XUKkYENwW\r\nm/qMZdZjyZqP6q4RWhr+5NN0BVN1gkeYnfNJgxmPL94MKp8QaVLUkr6OWkE/\r\nQD+ZUwmtswqst00Yo0gBfhE/aVAVipIouTA=\r\n=YGpN\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.3.0_1658788155089_0.10501361492933747"},"_hasShrinkwrap":false},"4.3.1":{"name":"@playwright-testing-library/test","version":"4.3.1","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:fixture":"playwright test","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit","validate":"run-s test"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"e5b3e6f6aa72c8478fd5dbabd0546e0e4339807c","_id":"@playwright-testing-library/test@4.3.1","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-HOhrnVjo6jzMbR3T/2sIZCKzW4LqzOCk82Sx0AYgCeSB+wgZQWbesITTy0QGRy5IzBQOBYoiy0jjYoYzUwvBRQ==","shasum":"c44ff5138ae795f96a374a414924d79617d1a47f","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.3.1.tgz","fileCount":42,"unpackedSize":644659,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCExM9QZjkjoLcmuSCiWqJOwOhWt+qrRPNme3xHRCGSVgIgBhNF3SAR8dspH9PMY+Qw9vB+1NzvPYBmx6eaCjYqhrQ="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjBswVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqOgBAAm6I9BnZH+8xYZY7Dgy37+uFsP1Z0TnU9A+QdFYKsbg9enBsH\r\nLEoyOv/1hFKVry+NYCRjMpZU4ePPeHLJIWQAGaxwXHVhuiB0tuShkdzedLYj\r\nErHmK0teYJyAw9eLgX2pmdKR+DxQejhpFV5SZQ4fJNQUOxDNWIQxY1XsaxQZ\r\nghGBju8b+BpfUUW4rvc9IsBo0AMo6U93PlEMR8qInfmEpjePgy1+EZOdv1Kv\r\ncrCylyucaerh+axyyzNurh+fK861iwrKdLYVLimGznYs1CYlYLQ5ZTzlkH/T\r\n35GiQ5mTekcvBohjUZ0o27kgm1Fzl7SvTneKr4QofAbXxHP0akeq7RtcxFSA\r\n8ApoWumiwlpXBoB3Ee7GT8oqKTk0lpXTvCchNwD3GrRgfYKfU2Kxa0vc9Nw9\r\n0FzDEZ9yO1Ge63eDMnMVy0erFBqD/uXhU0bsGLL4A+z9Fx551zPGLWsXLBzF\r\ne2sRPiZTauP8+C2uMNI461Ks4ih7Qu3I/Ki+nlcDJ81uIAV1K9Gt+lIs+/Vr\r\nNAbtbMgahofs0Af28uO6ZeAdiDLewU9Si4nW7ohXO/IxkIye8Hp/vs6Myps5\r\njEo210V3F6WAiFCZliFVnQr1YFNvqKP9sH5JCIZJdPIwdgJhEd/IJAnFQAeC\r\n9Rcaf8WZx2ZyoUhoOsUsHSE3Mi7mmcahK2o=\r\n=5/OO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.3.1_1661389845091_0.3590365858739468"},"_hasShrinkwrap":false},"4.4.0-beta.1":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.1","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:*","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"f4f6e8d83c246a7d18953c92832e92357c7ca7a7","_id":"@playwright-testing-library/test@4.4.0-beta.1","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-EiioG/YYTsBSurNv6OLqbuiJ51gmDifLkUusk/z2RgdevHrXcV/PJAL+njul4b/ZJtgEy/WDDb2ZK/KCleDfyA==","shasum":"b3dd41d25c02f0b5ced185661e97073af4166532","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.1.tgz","fileCount":58,"unpackedSize":665247,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDOmuKZD6NHLUjEkU24P8IE3eDqKvs9CpuiSY+C1D7HagIhAMqX4R6/Fjn8mdy69LZLexHbK8MBr6RjPhl0BuiECsIV"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjB+yZACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoMWxAAi2wSJuS1QbA62OFposJoTgdB3I5ytgbA67HrerCJGotnBrho\r\nrY3MxA5XbB+bb6WGZDQnqap559GKvmSW88AJbZZz7svlV0QOaF4Ri+IppCVu\r\n+VfxMrIKNqUvSH5MKx5dIyjAnkfFTXyhCq5UGClQPPyezidoHEtIlDPAeDtB\r\nP37bhAlc3wE9pbUmXyY7jM9KlSOI2bgEuIBZJkFCtji1Ad4CMnzJMlVR+by4\r\nf5N8SkqV5aVjTCWTuiBVAuWenWCxkbbltKhLjBO2IBDJD8+O6hZOTIVkbeC4\r\n/SgKj8PQ/k7LaZgQQznID6a9+rkWtS91gIcqy+koHTJY3XJRuzA+WFx0T0wO\r\nIugpFln6fEW2YM8DbtcHSvlRZ+a7gEU5RhCI9i9SjFYM4O2v0VqlLYlj8i/Z\r\n5C82pp550voOkjZ+gaab/iFbWiyMYKaTJp4UD94fg3jET15+O5CSrVvdG1JQ\r\nONk/eHsiHFRHjm/Fn6H4ICuTd2R+MYKpm2Ty6CttT6PnbqEhgKVB+aFLWVt1\r\njtR4FcSH8tjRn1H5tiPGoxe3CwN0WyN/HPTroFR3aZO7r7dbtGsvHS2ULIAR\r\nUX0MOLYs+mB5InRfrzP+Uwc0SAbP4ERgHCZCklwhD5Qb+RkA5LDsE18TRQYh\r\n7a1rcru/Mfx1xn82rqbARrXvKiirbpuJtWQ=\r\n=SAqq\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.1_1661463705689_0.19247494188309489"},"_hasShrinkwrap":false},"4.4.0-beta.2":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.2","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.1","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^7.0.2","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.1","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`** and **`query*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"375a6a91848e77b188e79fd52070abae52c4f48d","_id":"@playwright-testing-library/test@4.4.0-beta.2","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-YrBIv4KTV3JRHDQpCxbRTpYD3QWdHZ1fz4YSlstUJcmzGKRyL0psFm4g6jtUCYKESHpnTerPBekyk0/sxWcDaw==","shasum":"04ca797ad7788d34c89a8ac76237116b799acf2a","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.2.tgz","fileCount":66,"unpackedSize":672511,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDWvIpI3cx8pWpjuoA5enQkoKoBz15XtzxgllOM8wqbEwIgAIbNMdIEcZyyLnRF0I2nwkqy21o62/A8pH66WebGI7w="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjCSiHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmra+Q/8CXTlyTMW6C8nqWhTEt6uKpAVhz60+H4iD1fPTr0PUyiM3Ceh\r\nO2keBWqeIUhbBc6PuLqVzcdxLcwllXBDwxjIpPsPRwcO2mcErx4SZaLaazRp\r\n7qOyANmT9A2E3wFhNuAAf4xyO8elyaMiP4lkKnb+lE4+kOG0I3TLGt1ONupJ\r\no508+RdBQrnGQ/eTp0lt/Jt32HZxc0rTM50R1UkV8hHBQ4jovWdmY+FG40kI\r\nkwZh/jYzIZObo4/u3CiJ32YonIKl/1aSXIq6P4hWiiBLV3nzIm9owGCUgiDS\r\nvQY2x3/iwndcEkA5VsihyvzsNJxY4qWy5BzVBBPcKpKgDVCkVV39ZgzfWCi9\r\noqDZv3jGKcd5uvuievXGSgTwUOqrHmX/fSKG54aK9DsAdDq90AADzbixmih8\r\nlu0NSD46I0CQKWPOJW7h1FRN3TFlWOO7B2eWcUMhHgU+1eP5P/PnzzwbFS9C\r\ngj4C6ArbLckRppoqyGbeLv/D8UyK1TV9EaDb8uJlus0Zy37D6QA65kdIdLSA\r\nn1CAiK9FS9648xYAuj0hxK/7eXJDvBd3NIQcm3XYt4WcLfBsmEmzH98RyFia\r\n2vget588ngQ99IaLQPLyw8VLSxqgARw5jKhakOLyDgHq21epb2xM1rWSDocx\r\nUyEoSPr9AaIY27Jo0Q+CoCQodmtSvc+5XJs=\r\n=TINk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.2_1661544583189_0.7509543519036375"},"_hasShrinkwrap":false},"4.4.0-beta.3":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.3","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.0","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.0","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`**, **`query*`**, and **`find*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"72255c65aae1552c7d35ef3c60bb4709e84ff766","_id":"@playwright-testing-library/test@4.4.0-beta.3","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"integrity":"sha512-ynxmxpM4x7HKOXZNgFb7/q2+aeANqpTyMffWyjAx5XPg2tbD3N8zttpJoU5fES+Sbc2965iGcIWbs+Kq9z4dNQ==","shasum":"8bc0d129407b9bd7f0b7fbdd981728b5698a8052","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.3.tgz","fileCount":67,"unpackedSize":1044437,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFngNXXbyAgBIkN8E4kRSB0NgQXXTjr0XEZK/MVa02WeAiACdogVOpg1wKUTz4pBVV+0mrY5fw3zirQV7+Yb/86tLw=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGE/8ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrO6g//XYJeDh5zWmYVaIxtVzRgeMdBE1i5mYDeTpiSZYK17XjJhLKg\r\nvodg72FFJ2qiH4hNF7KisYDEIfamQW+YN9UTDdtJFgq951ZTPTdxKBa+OIGX\r\nf+Tt9YnxBUj1LJztaICN3fbH+abPIvhbV1bL/+3TmSOzgYtt1Oid17i2COiq\r\no7mFVhSwTxpL5z8CtvfMWZm4lXgu+KkD22nA8SH3cO+jtgV3MgLNQRAV35EU\r\nWDo4P/I+IVGOH2UH07GLzIqmnq//iImTMtR2V4rI1k04p3pb/UPpGB5nlNPG\r\nqsiPadtIY3SYCQO7SZfuO/ZVux27pNdWV+LFTJ1iDS01zz5akgcYqWtjYvH1\r\n7gCz0W08qooPNzi8H5TZm9HhF+CCju3YLD7JPU5RgySXpgL1q+ZXyVgSXg7x\r\nGixdGj5xdTVV6oKZ74Ciw8Msv5AS163WT39yAt+8LAzx7aCNud519TRy2yrF\r\nnNH6VkrxHtnnGlKsnQ5bQR6yJuRQj8O/+IKrT38v/bwttSoGGTsnddK587r/\r\nG7d9gAQy01VAvVS6PCCdi9V3W4C47ud+oxv8kO1Eei0xAecdYR0RuZbV0kLq\r\ns2h6fAOhQ9OXbg4GcZV2nLTH8s705NYZGXv/TDoQrrU8dHAKngqWpucmRb17\r\nxYfIzq46klSJ7UicYAQPg/9OmKWvWBCgup8=\r\n=z0lF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.3_1662537723922_0.9746170156149767"},"_hasShrinkwrap":false},"4.4.0-beta.4":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.4","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`**, **`query*`**, and **`find*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"72255c65aae1552c7d35ef3c60bb4709e84ff766","_id":"@playwright-testing-library/test@4.4.0-beta.4","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-2ilpEbPp+mY3/fxym0XurzMfl+VwSSY4xgkEcbHGpGR8PIzSUnphrBm0jbPHcow3bRyFvyEvCzVMLy5OzbgJhg==","shasum":"8868850120eb43b7bdee6db8ea85f23307b20b7b","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.4.tgz","fileCount":66,"unpackedSize":684271,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCmnvqO7lw/XMHWZvj5lizuv3I29X3UYVSoYdeFocBhbgIhAOTmALAFbp9WNvW4q8U6ENkiVOPaOG/ICtgyRpyOx0cV"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGRb5ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2VRAAgSTEG45VrUZuGW+bBnkOopGEKOkvyOguiwQaUW8jdZIgvlJq\r\n8URRGplzkU0vJ8wmyrpi8uv3lRZzg4hFec4IUzM2tizQUXZi0Hk++FwKvdmS\r\ntsBX+qSeNQKeOgj6hQi7v6vMWHqXMgJlyEAX7eYeC/IDvyM6n5swwNO15/+4\r\nI7Kr9WipIIQ8y1vCgU97O+cMDpFA9l5MH9UB20u3uBB+Ca2riEPILEblr6HI\r\nepM2pp7NN09FWESDdlehorcupUwh0hFTxIVY34Cry/DS/h+dwtusFfcKGi2p\r\nTiByjmH0sC/qPS6eXtzKYrA+uHt+WSwlrCB0/W1tCfc+JUWdWPPjv27s84aB\r\ndmvb8UGEnOwvBBEIo6guMSm9vvTwRgO+CUdB7hpdagZPW8iq8vzKQzdqFVdA\r\n7mDOYR9bJ1jo+nABu3zY3fb6tYm02lO4VJeGo7reLninFcBWFaxsY7Rr6wHb\r\nDdneP3Q5O13MgZ8j95e5Z1c2tGLUGYLulkYi1rQyDVIP2D4FTY+RwJXRKEeH\r\nJcQ8VfVVvbLPV8aH9MWSk1pSpRUWbox8hOnJPh+PYNOWYScPVYIQskAfdDkw\r\nizc8Syj8d49972tHtru8BOXWWsQHedji4TxWKNAxusyRWXPZyRACtYC1pE+w\r\nXeKbbUy31iOPQFQprikDgrtx+5VhZfLgvfo=\r\n=igXb\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.4_1662588664677_0.0983741275774539"},"_hasShrinkwrap":false},"4.4.0-beta.5":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.5","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`**, **`query*`**, and **`find*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"348344b814ae7dcfa788086fc5e1b646617b1400","_id":"@playwright-testing-library/test@4.4.0-beta.5","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-3upragk/PcGoOqA22lO7eBPieiW3NGylwXWMXlquKLTiWGXXNweAHbEmFe5qgfiBzy5+WNRri1dqqWcZ+hnKZw==","shasum":"9296d66d6161b98bd0ae2943543db38ec2074268","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.5.tgz","fileCount":70,"unpackedSize":689455,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGlDm6qfNTzlT+WxuF/MMk+kzx1dKcAZD4mgKlHfsssGAiAO8z/e8aHDhk5wifd1iI+zd7JjqNvL0gowsLpQqjMyvQ=="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjGiupACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrRdQ/9FG4k0JYeqPwibF/mcGSG6GsaHSFFx/NDgZ7pj4hU+Fz4mKx9\r\nLQwOj+nP46xlR6oC28wQDZXBmTLhJC7yFYqXpFZ9F1gjyTOKNCEts7Exp3w6\r\njmJOIry9RJFTQeDimi4BC6P9+TokUcOnF08jWLy4Ea0742b279WeJyxHNzcX\r\nORIzPfKeZlTFlKaStA2id80JrhW+vpdTrH4mwDfRaWYICNtT1VsEN6hrvcIF\r\nxHueKTJweZfJNS1DWnlROmLKWkQpM/ZE/teayMSf93buyuWO+4FDFlS+SZ44\r\nDWPXTzyYFkCXUQf5XD91Qu/8tGr/wuDvpietzQ32DroL3eZ7WM1+hFvJzwfC\r\n1P2Dur3ji2MRFXemZZp3lGm1FTKqA/8fECc7pemHFzlgNZ/APkT7tRrnSc7h\r\ns8hR2RWyo7Ztctauogsx/pDkx5zQ6G+th1txUNKSiOU8tevIzz3duzOMsRFF\r\ne0AeYbb7BduTtOPAznZsVcFE9wjBeNMjyDr/LVz3g+QFxt2gpLStb7dgiZvr\r\nd7ZyXX7Qp5jfhor4QWJHe9NQ3ZI/p1QKJMKFKhsVkEub5hChBQe9Lyo8I9b7\r\n0Wti5tToiBxcyg2F3zTXSUGxwbAPHMpYp+6doa4zQ8Ppx50htD6hUpcG4xOD\r\n8Pzuwe5W00W7APE657Vs656uHOTSFvFEQ4Y=\r\n=oWWp\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.5_1662659497452_0.6774379419382122"},"_hasShrinkwrap":false},"4.4.0-beta.6":{"name":"@playwright-testing-library/test","version":"4.4.0-beta.6","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^3.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## ✨ Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from Playwright!\n\n- Playwright Test [fixture](https://playwright.dev/docs/test-fixtures) — **`@playwright-testing-library/test/fixture`** or...\n- Standalone queries — **`playwright-testing-library`**/**`@playwright-testing-library/test`**\n- Asynchronous assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Getting Started\n\n### 1. Install\n\n```bash\n# For use with Playwright\nnpm install --save-dev playwright-testing-library\n\n# For use with Playwright Test\nnpm install --save-dev @playwright-testing-library/test\n```\n\nor\n\n```bash\n# For use with Playwright\nyarn add --dev playwright-testing-library\n\n# For use with Playwright Test\nyarn add --dev @playwright-testing-library/test\n```\n\n### 2a. Use _Playwright Test [fixture](https://playwright.dev/docs/test-fixtures)_\n\n```ts\nimport {test as baseTest} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\n// As only fixture\nconst test = baseTest.extend<TestingLibraryFixtures>(fixtures)\n\n// Alternatively, with other fixtures\ninterface Fixtures extends TestingLibraryFixtures {\n  // ... additional fixture types\n}\n\nconst test = baseTest.extend<Fixtures>({\n  ...fixtures,\n  // ... additional fixtures\n})\n\nconst {expect} = test\n\n// Query methods are available in `test` blocks\ntest('my form', async ({queries: {getByTestId}}) => {\n  const $form = await getByTestId('my-form')\n\n  // Scope queries with `within`\n  const {getByLabelText} = within($form)\n\n  const $email = await getByLabelText('Email')\n\n  // Interact with Playwright like usual\n  await $email.type('playwright@example.com')\n\n  // ...\n})\n```\n\n### 2b. Use _standalone queries_\n\n```js\nconst {webkit} = require('playwright') // or 'firefox' or 'chromium'\nconst {getDocument, queries} = require('playwright-testing-library')\n\nconst {getByTestId, getByLabelText} = queries\n\nconst browser = await webkit.launch()\nconst page = await browser.newPage()\n\n// Grab ElementHandle for document\nconst $document = await getDocument(page)\n\n// Your favorite query methods are available\nconst $form = await getByTestId($document, 'my-form')\n\n// Returned elements are ElementHandles too!\nconst $email = await getByLabelText($form, 'Email')\n\n// Interact with playwright like usual\nawait $email.type('playwright@example.com')\n\n// ...\n```\n\n## 🔌 API\n\nUnique methods, not part of **@testing-library/dom**\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n---\n\nThe **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** — All **`get*`**, **`query*`**, and **`find*`** methods are supported.\n\n- `getQueriesForElement(handle: ElementHandle): ElementHandle & QueryUtils` - extend the input object with the query API and return it\n- `getNodeText(handle: ElementHandle): Promise<string>` - get the text content of the element\n- `queries: QueryUtils` - the query subset of `@testing-library/dom` exports\n  - `queryByPlaceholderText`\n  - `queryAllByPlaceholderText`\n  - `getByPlaceholderText`\n  - `getAllByPlaceholderText`\n  - `findByPlaceholderText`\n  - `findAllByPlaceholderText`\n  - `queryByText`\n  - `queryAllByText`\n  - `getByText`\n  - `getAllByText`\n  - `findByText`\n  - `findAllByText`\n  - `queryByLabelText`\n  - `queryAllByLabelText`\n  - `getByLabelText`\n  - `getAllByLabelText`\n  - `findByLabelText`\n  - `findAllByLabelText`\n  - `queryByAltText`\n  - `queryAllByAltText`\n  - `getByAltText`\n  - `getAllByAltText`\n  - `findByAltText`\n  - `findAllByAltText`\n  - `queryByTestId`\n  - `queryAllByTestId`\n  - `getByTestId`\n  - `getAllByTestId`\n  - `findByTestId`\n  - `findAllByTestId`\n  - `queryByTitle`\n  - `queryAllByTitle`\n  - `getByTitle`\n  - `getAllByTitle`\n  - `findByTitle`\n  - `findAllByTitle`\n  - `queryByDisplayValue`,\n  - `queryAllByDisplayValue`,\n  - `getByDisplayValue`,\n  - `getAllByDisplayValue`,\n  - `findByDisplayValue`,\n  - `findAllByDisplayValue`,\n\n## Known Limitations\n\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query.\n- `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- `expect` assertion extensions are not available.\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library) of course!\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n- Yours! Name TBD, PR welcome ;)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md","gitHead":"77960b27a54dd11fefc459252cbd87eff0087b70","_id":"@playwright-testing-library/test@4.4.0-beta.6","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-pxD0Y/EyLNmVPVsDNwgIHgvSjKFY5U8Yvs0WsvM7KXIl5vjNhQAC7ahhNfgEI+DmaM/Hp5Le4SqNIWREwTC1ZA==","shasum":"7a2517edb844a3e85882f798f9702a439ecff765","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0-beta.6.tgz","fileCount":70,"unpackedSize":695316,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC03AhQrQMyNA2v9/flw4fUfdhoKhFmKJkN+gzu4HNL+AIgRdQZ0Qel4SvDM1wIDHPgn4xRyByYUmhnbb8C39y+jRE="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjISxsACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmrdaA/9H0QXnKJeAMhqokfwr+GgwS+AXsbXwY5rXN9rl02X2tBrn8u+\r\nKDXLyEAMyHkPinX9kVgSIKofHE/+DoMkR1+V68mUZ9o9rZ984mtdxwHmN5a+\r\n78Jt9BUctRQzKneBDQMwOcinTLvOfGlYSNxRhZ/ulWih9ymR1nw6qx9R/gjF\r\nUleENEWpQRt1BCGvqY90yAMJGE9OlvnMsMFi6s4ZOXqQ2YlIWbEWWNr3PTa5\r\nnTiSMMi+p57Iddj4WXPY1nasLhlKXFBN+WAYkzCaK+WA4Owx0/rRLXyTBPyS\r\nHwqqMNR3+5CVAB0/hFNLbjLaIvFTXvLLEVB8BkiXA0MBteGPi+tTQ6BXDuvD\r\nqDXG5pKvWnWyguYs8jIKbgpAqy7E8zaAguQ46IVqIapxxdJ1uHjJF18VMM4n\r\nlGA2l+WEMo8UtuqbtFdD9AHjseocoNTOWJSjZvwlqDF3cATx7XHYDnMN80sI\r\nN3px/w7BvV2eTpB2WxDHbVK6jpENj5SYSTvfRyGc4Mq1S5Vo9dIrFPERBgEA\r\nBQIMo4UGF5H1CZuUJ4tNiiFrCwihvj3pytfPBgUbUDc4V0/qdO7sQafFbA7D\r\noO0Y4CP8wj0jd7VRx6UhLfU68omuyqQmmznttlbkoS5drsAi9EfH+wcRTsPI\r\n2Fl0NUe6/jvzLa9ExIaDGp67Wn/RD8O6Bns=\r\n=ozHQ\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0-beta.6_1663118444380_0.1862916174871465"},"_hasShrinkwrap":false},"4.4.0":{"name":"@playwright-testing-library/test","version":"4.4.0","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.2","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^4.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.2","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"1b41bd5e5de2c22d618b07ff5982997da043bd7c","_id":"@playwright-testing-library/test@4.4.0","_nodeVersion":"14.20.0","_npmVersion":"7.24.2","dist":{"integrity":"sha512-xMC7LV8wLOdxL7nbBttXjfMXdy1LVrS1AOhJ7Uy0UBFospM8hTCFfiXOGyQoKzXgrr0fbri8X88kCbgDgR9CVg==","shasum":"d623d06574900e296f22aae1b006953aab1004c5","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.4.0.tgz","fileCount":70,"unpackedSize":700175,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAsiS52hJhLIs8D8Yq+wAJnHSpHd9dLfCHpPF1n246JTAiEAwTJPiQqvLDvIKYNqM0+rBMRR02kuuSBiqfrAcTBaFmo="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjJweKACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqzRw/+K9eKr9v5TWl214d9hCzGbtzPaHHamods/pckjiNNYe0MRhPg\r\n7/q+9PKlk9atCxkLRMbU+IrgtR3ZSlYtOOD7yXxOOs5oJS0KdmQP7nP0w+T5\r\n10+AxXAvr8a//dE+iLyq2o4mDIYWggm2iyx7Epr3wHkANGt8VjzuxmufGXrO\r\nkcwCsyivY3WYQB1o2llWliqW0zFsGKdQqy6g4nSAHJkTLnGKwSFq+Cs2Vg/T\r\nMC7OYqnjayMkMjJ5A7K4YlY8cxVkYmNMVRLhNinpNUhUXE6Vna35eQ/0ZGCs\r\n0GBLtH5iQzk1x3IrRFH6GdPQOVDBZGBaDQ/iQGUr3L87LY6a2OtadSs5jeb5\r\nxVAw2sjKQVTJ8YbwYA0sno39avL7qUnaNTgY7LYmwm4lekEj/zmTZ/KvP0Xn\r\nzf9FQCDbYuTPcgorM8nWIn99el3TwmK5pVPkEcbvIq559gpzj+pfYZr5FWIg\r\nOk3Ln4nboiu7y64U3fa6CkA2NrgL1UuGcf4dzX7gt0VEl3Y45EwSw2ddUzAF\r\nSmlbEVSl4OuxsikDDTew/8vqTUx2a5K0xHtQqLlGfexmtqw4taWgZXzOyNaq\r\n/LE5FuV/NMAmHL4YbhhqoXJ1MEpNuGlf0+2fTbFovslMH03NdYUGeHrf9dOn\r\nvhvOiwRY1ai4RUddhyGZ+3c2/4YlLjHn5vY=\r\n=g//K\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.4.0_1663502217820_0.19840480108106728"},"_hasShrinkwrap":false},"4.5.0":{"name":"@playwright-testing-library/test","version":"4.5.0","description":"playwright + dom-testing-library","main":"./dist/index.js","scripts":{"build":"run-s clean build:testing-library build:source","build:source":"tsc","build:testing-library":"rollup -c","ci-after-success":"hover-scripts ci-after-success","clean":"rimraf dist/*","commit-msg":"hover-scripts commit-msg","lint":"hover-scripts lint","pre-commit":"hover-scripts pre-commit --no-toc","prepare":"husky install","prepare:playwright-test":"run-s prepare:playwright-test:package prepare:playwright-test:imports build:source prepare:playwright-test:entries","prepare:playwright-test:entries":"generate-export-aliases","prepare:playwright-test:imports":"./playwright-test/prepare-package.js","prepare:playwright-test:package":"jscodeshift -t ./playwright-test/rename-imports.ts --extensions=ts --parser=ts ./lib","prepublishOnly":"npm run build","start:standalone":"hover-scripts test","test":"run-s build:testing-library test:standalone test:fixture","test:legacy":"run-s build:testing-library test:standalone test:fixture:legacy","test:fixture":"playwright test","test:fixture:legacy":"playwright test test/fixture/element-handles.test.ts","test:fixture:locator":"playwright test test/fixture/locators.test.ts","test:standalone":"hover-scripts test --no-watch","test:types":"tsc --noEmit"},"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"license":"MIT","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"config":{"exportAliases":{"fixture":"./dist/fixture"}},"dependencies":{"@testing-library/dom":"^7.31.2","wait-for-expect":"^3.0.2"},"devDependencies":{"@hover/javascript":"^6.53.0","@playwright/test":"^1.25.0","@rollup/plugin-commonjs":"^21.0.0","@rollup/plugin-node-resolve":"^13.0.5","@rollup/plugin-replace":"^4.0.0","@types/jest":"^27.0.2","@types/jscodeshift":"^0.11.2","generate-export-aliases":"^1.1.0","husky":"^8.0.1","jscodeshift":"^0.13.0","npm-run-all":"^4.1.5","playwright":"^1.25.0","rimraf":"^3.0.2","rollup":"^2.58.0","setimmediate":"^1.0.5","typescript":"^4.4.3"},"peerDependencies":{"@playwright/test":"^1.12.0","playwright":"^1.12.0"},"peerDependenciesMeta":{"playwright":{"optional":true},"@playwright/test":{"optional":true}},"engines":{"node":">=12"},"types":"./dist/index.d.ts","gitHead":"9904217dd30933afcc17a3a2381b6da53234c3ee","_id":"@playwright-testing-library/test@4.5.0","_nodeVersion":"16.17.0","_npmVersion":"8.15.0","dist":{"integrity":"sha512-jdGlDJyRhQ/fD10EuQr5D65aNzLn6rQIoVj6jVwXP6ebdr2PFiftf/zBF/rmCAcLo6XjHpE2MkSX59JvY+CCWA==","shasum":"62f5c21f1eb1bbb7a08e9bf1f73302844c1bd791","tarball":"https://registry.npmjs.org/@playwright-testing-library/test/-/test-4.5.0.tgz","fileCount":70,"unpackedSize":714844,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDaUQqAZ3R09pUYzBjOC0xoki1lcYxl64xZ5gOR1DQKdwIhAISh0vnGN0EXUNowv0E/k/jl5Ja4UNok736Ux402gB/O"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjNKU2ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmryKxAAh01kkVhSb405JKvS2GHRXlG96GUXS/2ryxb1U39ROQpAoLob\r\niZvj3Xzydnts5tU6qC6IzOcKZocQa8tQmy/z4vt1vYgF5Xj3/sfqPom3Bgie\r\nBpIjgGnrOaDAYxt5q6vSotzlPH6Di7qeQAdcZJr6UOteuk18LlVnld8e/fYx\r\nrvdZ9KGknywaNm+xJjBv6JOlFLHeKcW0AMH8WztJdpXI0lOslxa3fBds6TLC\r\n1/vYYquD2WjY/2pNroCCTH3Er02g+iBnRwA/K7c4VV5FWHlAG+YcToCbib4o\r\nmL+RMZPQ+G/dJfH6UuOdFHF00bX+JWRF01APaNFcK4uyqqJE6gA2LL137Thb\r\nzRtLb8UhH0zH7te6SwcsDgwe0UjdBXXW/lMrSo9wgmO2WW0iVf+2DULQyJse\r\n4ool+3KKT6IPxzxUnSLddRIEkZ+yPEBF3qMgTuxk8oLFOO6v4oKDFzj4HHAZ\r\nRRPx0dINL33JFrwYa4jPrCuXFW2FbNMGvIz5YJ2n9zrGivxAVysNJKeGwoRA\r\nDxH1GfbRLrGKh/Z2sOcMtt9pGYBwQJZuLdLoGkiBEDBguhKjoa1CBioNtLyc\r\ntWcRJhtK70yRPJvPYqgPupjOR/XYOFs/1MpEPvO2PKX1v3SCtmY3owBLnL8p\r\nMt8NEzcxU/5Aqsp5j1eAGQuXXoKfIZzHScY=\r\n=hFgF\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"jrolfs","email":"jamie.rolfs@gmail.com"},"directories":{},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/test_4.5.0_1664394550309_0.6471383508284856"},"_hasShrinkwrap":false}},"time":{"created":"2021-10-04T19:55:34.588Z","4.0.0-beta.6":"2021-10-04T19:55:34.808Z","modified":"2022-09-28T19:49:10.592Z","4.0.0-beta.7":"2021-10-04T20:57:02.995Z","4.0.0-beta.9":"2021-10-05T19:51:24.884Z","4.0.0-beta.10":"2021-10-06T00:19:35.067Z","4.0.1":"2021-11-02T21:16:42.642Z","4.0.2":"2022-02-19T02:53:35.002Z","4.1.0":"2022-02-22T17:01:24.585Z","4.2.0":"2022-02-22T21:26:46.965Z","4.2.1":"2022-04-13T19:55:18.472Z","4.3.0-beta.1":"2022-06-01T22:02:58.130Z","4.3.0":"2022-07-25T22:29:15.255Z","4.3.1":"2022-08-25T01:10:45.312Z","4.4.0-beta.1":"2022-08-25T21:41:45.844Z","4.4.0-beta.2":"2022-08-26T20:09:43.366Z","4.4.0-beta.3":"2022-09-07T08:02:04.149Z","4.4.0-beta.4":"2022-09-07T22:11:04.991Z","4.4.0-beta.5":"2022-09-08T17:51:37.624Z","4.4.0-beta.6":"2022-09-14T01:20:44.568Z","4.4.0":"2022-09-18T11:56:58.046Z","4.5.0":"2022-09-28T19:49:10.503Z"},"maintainers":[{"name":"jrolfs","email":"jamie.rolfs@gmail.com"}],"description":"playwright + dom-testing-library","homepage":"https://github.com/hoverinc/playwright-testing-library#readme","keywords":["playwright","dom-testing-library","testing-library","testing","utility"],"repository":{"type":"git","url":"git+https://github.com/hoverinc/playwright-testing-library.git"},"author":{"name":"Patrick Hulce","email":"patrick.hulce@gmail.com"},"bugs":{"url":"https://github.com/hoverinc/playwright-testing-library/issues"},"license":"MIT","readme":"<div align=\"center\">\n  <br>\n  <header>\n    <img src=\"https://user-images.githubusercontent.com/288160/126050717-dd76eb80-ef06-40e0-97e8-72c20c9f8f20.png\" height=\"64\" />\n  </header>\n  <br>\n  <h1>playwright-testing-library</h1>\n  <p>🔍 Find elements in <strong>playwright</strong> like your users  with queries from <strong>@testing-library/dom</strong></p>\n</div>\n\n<div align=\"center\">\n\n[![Build Status][build-badge]][build-link]\n[![Test Coverage][codecov-badge]][codecov-link]\n[![Code Style][prettier-badge]][prettier-link]\n[![Package Version][npm-badge]][npm-link] <br>\n[![MIT License][license-badge]][license-link]\n[![Conventional Commits][conventional-commits-badge]][conventional-commits-link]\n[![Maintenance][maintenance-badge]][maintenance-link]\n\n</div>\n\n<br>\n\n## 🎛 Features\n\nAll of your favorite user-centric querying functions from **@testing-library/react** and **@testing-library/dom** available from within Playwright!\n\n- Test [fixture](https://playwright.dev/docs/test-fixtures) for **@playwright/test** via **@playwright-testing-library/test**\n  - ✨ **New** — `Locator` queries fixture (`locatorFixtures`) [↓](#playwright-test-fixture)\n  - `ElementHandle` queries fixture (`fixtures`) [↓](#legacy-playwright-test-fixture)\n- Standalone queries for **playwright** via **playwright-testing-library**\n  - `ElementHandle` queries (`getDocument` + `queries`) [↓](#standalone-playwright-queries)\n  - Asynchronous `waitFor` assertion helper (via **[wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect)**)\n\n## 🌱 Installation\n\n```bash\n# For use with Playwright Test (@playwright/test)\nnpm install --save-dev @playwright-testing-library/test\n\n# For use with Playwright (playwright)\nnpm install --save-dev playwright-testing-library\n```\n\n## 📝 Usage\n\nThere are currently a few different ways to use Playwright Testing Library, depending on how you use Playwright. However, the recommended approach is to use the `Locator` [queries fixture](#playwright-test-fixture) with Playwright Test (**@playwright/test**).\n\n> ⚠️ The `ElementHandle` query APIs were created before Playwright introduced its `Locator` API and will be replaced in the next major version of Playwright Testing Library. If you can't use **@playwright/test** at the moment, you'll need to use the `ElementHandle` query API, but a migration path will be provided when we switch to the new `Locator` APIs.\n\n### Playwright Test Fixture\n\n> 🔖 Added in [**4.4.0**](https://github.com/testing-library/playwright-testing-library/releases/tag/v4.4.0)\n\nUsing the `Locator` Playwright Test (**@playwright/test**) fixture with **@playwright-testing-library/test**.\n\n#### Setup\n\n```ts\nimport {test as base} from '@playwright/test'\nimport {\n  locatorFixtures as fixtures,\n  LocatorFixtures as TestingLibraryFixtures,\n} from '@playwright-testing-library/test/fixture'\n\nconst test = base.extend<TestingLibraryFixtures>(fixtures)\n\nconst {expect} = test\n\ntest('my form', async ({screen, within}) => {\n  // Screen provides `Locator` queries scoped to current Playwright `Page`\n  const formLocator = screen.getByTestId('my-form')\n\n  // Scope queries to `Locator` with `within`\n  // (note that this is a fixture from `test`, not the `within` import)\n  const emailInputLocator = within(formLocator).getByLabelText('Email')\n\n  // Interact via `Locator` API 🥳\n  await emailInputLocator.fill('email@playwright.dev')\n  await emailInputLocator.press('Enter')\n\n  // Screen also provides Playwright's `Page` API\n  screen.goto('/account')\n\n  const emailLocator = screen.getByRole('heading', {level: 2})\n\n  // Assert via `Locator` APIs 🎉\n  await expect(emailLocator).toHaveText('email@playwright.dev')\n})\n```\n\n#### Async Methods\n\nThe `findBy` queries work the same way as they do in [Testing Library](https://testing-library.com/docs/dom-testing-library/api-async) core in that they return `Promise<Locator>` and are intended to be used to defer test execution until an element appears on the page.\n\n```ts\ntest('my modal', async ({screen, within}) => {\n  // Here we wait for a modal to appear asynchronously before continuing\n  // Note: the timeout for `findBy` queries is configured with `asyncUtilTimeout`\n  const modalLocator = await screen.findByRole('dialog')\n\n  // Once the modal is visible, we can interact with its contents and assert\n  await expect(modalLocator).toHaveText(/My Modal/)\n  await within(modalLocator).getByRole('button', {name: 'Okay'}).click()\n\n  // We can also use `queryBy` methods to take advantage of Playwright's `Locator` auto-waiting\n  // See: https://playwright.dev/docs/actionability\n  // Note: this will use Playwright's timeout, not `asyncUtilTimeout`\n  await expect(screen.queryByRole('dialog')).toBeHidden()\n})\n```\n\n#### Chaining\n\n> 🔖 Added in [**4.5.0**](https://github.com/testing-library/playwright-testing-library/releases/tag/v4.5.0)\n\nAs an alternative to the `within(locator: Locator)` function you're familiar with from Testing Library, Playwright Testing Library also supports chaining queries together.\n\nAll synchronous queries (`get*` + `query*`) return `Locator` instances augmented with a `.within()` method (`TestingLibraryLocator`). All asynchronous queries (`find*`) return a special `LocatorPromise` that also supports `.within()`. This makes it possible to chain queries, including chaining `get*`, `query*` and `find*` interchangeably.\n\n> ⚠️ Note that including any `find*` query in the chain will make the entire chain asynchronous\n\n##### Synchronous\n\n```ts\ntest('chaining synchronous queries', async ({screen}) => {\n  const locator = screen.getByRole('figure').within().findByRole('img')\n\n  expect(await locator.getAttribute('alt')).toEqual('Some image')\n})\n```\n\n##### Synchronous + Asynchronous\n\n```ts\ntest('chaining synchronous queries + asynchronous queries', ({screen}) => {\n  //              ↓↓↓↓↓ including any `find*` queries makes the whole chain asynchronous\n  const locator = await screen\n    .getByTestId('modal-container') // Get \"modal container\" or throw (sync)\n    .within()\n    .findByRole('dialog') // Wait for modal to appear (async, until `asyncUtilTimeout`)\n    .within()\n    .getByRole('button', {name: 'Close'}) // Get close button within modal (sync)\n\n  expect(await locator.textContent()).toEqual('Close')\n})\n```\n\n#### Configuration\n\nThe `Locator` query API is configured using Playwright's `use` API. See Playwright's documentation for [global](https://playwright.dev/docs/api/class-testconfig#test-config-use), [project](https://playwright.dev/docs/api/class-testproject#test-project-use), and [test](https://playwright.dev/docs/api/class-test#test-use).\n\n##### Global\n\nConfiguring Testing Library globally in `playwright.config.ts`\n\n```ts\nimport type {PlaywrightTestConfig} from '@playwright/test'\n\nconst config: PlaywrightTestConfig = {\n  use: {\n    // These are the defaults\n    testIdAttribute: 'data-testid',\n    asyncUtilTimeout: 1000,\n    asyncUtilExpectedState: 'visible',\n  },\n}\n\nexport default config\n```\n\n##### Local\n\nScoping Testing Library configuration to test suites or `describe` blocks\n\n```ts\nimport {test as base} from '@playwright/test'\nimport {\n  locatorFixtures as fixtures,\n  LocatorFixtures as TestingLibraryFixtures,\n} from '@playwright-testing-library/test/fixture'\n\nconst test = base.extend<TestingLibraryFixtures>(fixtures)\n\nconst {describe, expect, use} = test\n\n// Entire test suite\nuse({testIdAttribute: 'data-custom-test-id'})\n\ndescribe(() => {\n  // Specific block\n  use({\n    testIdAttribute: 'some-other-test-id',\n    asyncUtilsTimeout: 5000,\n    asyncUtilExpectedState: 'attached',\n  })\n\n  test('my form', async ({screen}) => {\n    // ...\n  })\n})\n```\n\n### Legacy Playwright Test Fixture\n\nUsing the `ElementHandle` Playwright Test (**@playwright/test**) fixture with **@playwright-testing-library/test**.\n\n> ⚠️ See note in [Usage](#-usage) as you should be using the `Locator` fixture if possible\n\n#### Setup\n\n```ts\nimport {test as base} from '@playwright/test'\nimport {fixtures, within, TestingLibraryFixtures} from '@playwright-testing-library/test/fixture'\n\nconst test = base.extend<TestingLibraryFixtures>(fixtures)\n\nconst {expect} = test\n\ntest('my form', async ({page, queries}) => {\n  // Query methods are available in `test` blocks\n  const formHandle = await queries.getByTestId('my-form')\n\n  // Scope queries to an `ElementHandle` with `within`\n  const emailInputHandle = await within(formHandle).getByLabelText('Email')\n\n  // Interact via `ElementHandle` API\n  await emailInputHandle.fill('email@playwright.dev')\n  await emailInputHandle.press('Enter')\n\n  page.goto('/account')\n\n  const emailHandle = queries.getByRole('heading', {level: 2})\n\n  // Assert via `ElementHandle` APIs\n  expect(await emailHandle.textContent()).toEqual('email@playwright.dev')\n})\n```\n\n#### Configuration\n\n```ts\nimport {test as base} from '@playwright/test'\nimport {\n  configure,\n  fixtures,\n  within,\n  TestingLibraryFixtures,\n} from '@playwright-testing-library/test/fixture'\n\nconst test = base.extend<TestingLibraryFixtures>(fixtures)\n\nconst {beforeEach, describe, expect} = test\n\n// Global (these are the defaults)\nconfigure({asyncUtilTimeout: 1000, testIdAttribute: 'data-testid'})\n\n// Specific block\ndescribe('my page', () => {\n  beforeEach(() => configure({asyncUtilTimeout: 5000, testIdAttribute: 'data-custom-test-id'}))\n\n  afterEach(() => configure({}))\n\n  test('my form', async ({page, queries}) => {\n    // ...\n  })\n})\n```\n\n### Standalone Playwright Queries\n\nUsing the `ElementHandle` queries with Playwright (**playwright**) and **playwright-testing-library**.\n\n> ⚠️ See note in [Usage](#-usage) as you should be using **@playwright/test** with the `Locator` fixture if possible. The `Locator` queries will be made available for standalone **playwright** in the next major release.\n\n```ts\nimport {beforeAll, expect, jest, test} from '@jest/globals'\nimport {webkit} from 'playwright' // or 'firefox' or 'chromium'\nimport {getDocument, queries, within} from 'playwright-testing-library'\n\nlet browser: playwright.Browser\nlet page: playwright.Page\n\nbeforeAll(() => {\n  const browser = await webkit.launch()\n  const page = await browser.newPage()\n})\n\ntest('my form', () => {\n  // Get `ElementHandle` for document from `Page`\n  const documentHandle = await getDocument(page)\n\n  // Global query methods take document handle as the first parameter\n  const formHandle = await queries.getByTestId(documentHandle, 'my-form')\n\n  // Scope queries to an `ElementHandle` with `within`\n  const emailInputHandle = await within(formHandle).getByLabelText('Email')\n\n  // Interact via `ElementHandle` API\n  await emailInputHandle.fill('email@playwright.dev')\n  await emailInputHandle.press('Enter')\n\n  page.goto('/account')\n\n  const accountHandle = getDocument(page)\n  const emailHandle = queries.getByRole(accountHandle, 'heading', {level: 2})\n\n  // Assert via `ElementHandle` APIs\n  expect(await emailHandle.textContent()).toEqual('email@playwright.dev')\n})\n```\n\n#### Configuration\n\n```ts\nimport {beforeEach, afterEach, expect, jest, test} from '@jest/globals'\nimport {configure, getDocument, queries, within} from 'playwright-testing-library'\n\n// Global (these are the defaults)\nconfigure({asyncUtilTimeout: 1000, testIdAttribute: 'data-testid'})\n\n// Specific block\ndescribe('my page', () => {\n  beforeEach(() => configure({asyncUtilTimeout: 5000, testIdAttribute: 'data-custom-test-id'}))\n\n  afterEach(() => configure({}))\n\n  test('my form', async ({page, queries}) => {\n    // ...\n  })\n})\n```\n\n## 🔌 API\n\n### Testing Library\n\nAll queries from **[@testing-library/dom](https://github.com/testing-library/dom-testing-library#usage)** are supported.\n\n> 📝 The **`find*`** queries for the `Locator` queries return `Promise<Locator>` which resolves when the element is found before the timeout specified via `asyncUtilTimeout`\n\n### Additional\n\nUnique methods, not part of **@testing-library/dom**\n\n> ⚠️ These only apply to the `ElementHandle` queries\n\n- Get an `ElementHandle` for the document\n\n  ```ts\n  getDocument(page: playwright.Page): ElementHandle\n  ```\n\n- Wait for an assertion (wrapper around [wait-for-expect](https://github.com/TheBrainFamily/wait-for-expect))\n\n  ```ts\n  waitFor(\n    expectation: () => void | Promise<void>,\n    timeout?: number,\n    interval?: number\n  ): Promise<{}>\n  ```\n\n## Known Limitations\n\n- Only `testIdAttribute` and `asyncUtilTimeout` are supported as configuration options\n- Async utilities `waitForElement`, `waitForElementToBeRemoved` and `waitForDomChange` are not exposed. Consider using a `find*` query or a Playwright built-in like [`Locator.waitFor()`](https://playwright.dev/docs/api/class-locator#locator-wait-for).\n- The `fireEvent` method is not exposed, use Playwright's built-ins instead.\n- Assertion extensions from [**jest-dom**](https://testing-library.com/docs/ecosystem-jest-dom/) are not compatible, use Playwright Test if possible.\n\n### Locator Queries\n\n- The [`getNodeText()`](https://testing-library.com/docs/dom-testing-library/api-custom-queries/#getnodetext) function is currently unsupported.\n- When using a function for [`TextMatch`](https://testing-library.com/docs/queries/about/#textmatch), the function cannot reference its closure scope\n\n  ```ts\n  // ✅ This is supported\n  screen.getByText(content => content.startsWith('Foo'))\n\n  // ❌ This is not supported\n  const startsWithFoo = (content: string) => content.startsWith('Foo')\n\n  screen.getByText(content => startsWithFoo(content))\n  ```\n\n## Special Thanks\n\n- [pptr-testing-library](https://github.com/testing-library/pptr-testing-library)\n- [@testing-library/dom](https://github.com/testing-library/dom-testing-library)\n\n## Related Playwright Test Utilities\n\n- [jest-playwright](https://github.com/playwright-community/jest-playwright)\n- [expect-playwright](https://github.com/playwright-community/expect-playwright)\n\n## LICENSE\n\nMIT\n\n## Maintenance\n\nThis project is actively maintained by engineers at\n[@hoverinc](https://github.com/hoverinc/) 😀.\n\n[codecov-badge]: https://codecov.io/gh/hoverinc/playwright-testing-library/branch/main/graph/badge.svg\n[codecov-link]: https://codecov.io/gh/hoverinc/playwright-testing-library\n[conventional-commits-badge]: https://img.shields.io/badge/Conventional%20Commits-1.0.0-yellow.svg\n[conventional-commits-link]: https://conventionalcommits.org\n[david-badge]: https://david-dm.org/hoverinc/playwright-testing-library.svg\n[david-link]: https://david-dm.org/hoverinc/playwright-testing-library\n[license-badge]: https://img.shields.io/npm/l/@hover/javascript.svg\n[license-link]: https://github.com/hoverinc/hover-javascript/blob/master/LICENSE\n[maintenance-badge]: https://img.shields.io/badge/maintenance-active-247ddc?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAAcCAYAAACUJBTQAAAB1ElEQVRIibWWPUtdQRCGH0VNF/wCCVjYCxr/gZWdhYVgLQYbm/wACTYxxA8SSBDtbKwUbfQWkiJFAgkkmHBBY6U2CXaCGlDDG1buxePOnt17bsgD28zOzjtnZvbuRVKR1SFpVdKepEe1njOGnOWCz0q60B1lSa05/oVE2iTNSfqdCZ7lSyWB0NmkSJekeUmXJqzlayWZUJxckUUTJs23mFAjlhNjSdMHfAQ6g54hZUnDdXyN44ek7iKNH4w0PMaeX7pQ8Ox6HQkWww3Dw1hPWoAJ4BxoB4aNR5oB4APQ5vekUdITSceZDLcreyORrGPcfpEL0CBpVNJRwLmUSWLS7NbGpju8FXEteT2qR+jQ9aS3QK2XgUljjXPpRC6iLpYV4KmxRghNVy28Aqb+t4jjLbBhrAH+RcRxZSwBUiINxlIHKZE/xlIHTTlHBDwHjoDPwHtgF/gEnBnvFJVfzSrXkpYyfxKGvIu14F3ONXP1LOWmzEPjpuWl92j55XyQyDnEjRN5AbwD9gMOPkV7tAPMOJE3ZuuOFmOpjS3gGfCdQDl8fgGnGVtzwt8F7wdGqgKOvOmq4iarB3gMjAFlb78qug5MAwehIO4tKViJe4wDP4FSrgfwF/ntR8JxRSf3AAAAAElFTkSuQmCC\n[maintenance-link]: https://github.com/hoverinc/playwright-testing-library#maintenance\n[npm-badge]: https://img.shields.io/npm/v/playwright-testing-library\n[npm-link]: https://www.npmjs.com/package/playwright-testing-library\n[prettier-badge]: https://img.shields.io/badge/code_style-prettier-ff69b4.svg?logo=prettier\n[prettier-link]: https://prettierjs.org/en/download/\n[build-badge]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml/badge.svg\n[build-link]: https://github.com/hoverinc/playwright-testing-library/actions/workflows/build.yml\n","readmeFilename":"README.md"}