(page: Page, selector: string, text: string)
| 9 | }; |
| 10 | |
| 11 | export const clickByText = async (page: Page, selector: string, text: string): Promise<void> => { |
| 12 | await waitForExists(page, selector, text); |
| 13 | text = text.toLowerCase(); |
| 14 | await page.evaluate( |
| 15 | (_selector, _text) => { |
| 16 | ( |
| 17 | Array.from(document.querySelectorAll(_selector)).filter( |
| 18 | (element) => element.textContent?.toLowerCase().trim() === _text |
| 19 | )[0] as HTMLButtonElement |
| 20 | ).click(); |
| 21 | }, |
| 22 | selector, |
| 23 | text |
| 24 | ); |
| 25 | }; |
| 26 | |
| 27 | export const count = async (page: Page, selector: string): Promise<number> => |
| 28 | page.$$(selector).then((elements) => elements.length); |
searching dependent graphs…