* Runs the AMP visual diff tests. * * @return {Promise }
()
| 628 | * @return {Promise<void>} |
| 629 | */ |
| 630 | async function performVisualTests() { |
| 631 | setDebuggingLevel(); |
| 632 | |
| 633 | const browser = await launchBrowser(); |
| 634 | const handlerProcess = createCtrlcHandler( |
| 635 | 'visual-diff:browser', |
| 636 | browser.process()?.pid |
| 637 | ); |
| 638 | await startServer( |
| 639 | {host: HOST, port: PORT}, |
| 640 | {quiet: !argv.webserver_debug}, |
| 641 | {minified: true} |
| 642 | ); |
| 643 | |
| 644 | try { |
| 645 | if (!argv.empty) { |
| 646 | // Load and parse the config. Use JSON5 due to JSON comments in file. |
| 647 | const visualTestsConfig = JSON5.parse( |
| 648 | fs.readFileSync( |
| 649 | path.resolve( |
| 650 | __dirname, |
| 651 | '../../../test/visual-diff/visual-tests.jsonc' |
| 652 | ), |
| 653 | 'utf8' |
| 654 | ) |
| 655 | ); |
| 656 | await runVisualTests(browser, visualTestsConfig.webpages); |
| 657 | } |
| 658 | await createEmptyBuild(browser); |
| 659 | } finally { |
| 660 | await browser.close(); |
| 661 | exitCtrlcHandler(handlerProcess); |
| 662 | await stopServer(); |
| 663 | } |
| 664 | } |
| 665 | |
| 666 | /** |
| 667 | * @return {Promise<void>} |
no test coverage detected