feat: allow plugins to register additional unhandledRejection filters #723
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Standalone Browser Integration Tests | |
| on: | |
| pull_request: | |
| branches: [master] | |
| jobs: | |
| integration-test: | |
| runs-on: ubuntu-latest | |
| env: | |
| DOCKER_IMAGE_NAME: html-reporter-browsers | |
| INTEGRATION_BROWSER_VERSION: "138.0" | |
| strategy: | |
| matrix: | |
| node-version: [24.x] | |
| browser: [chrome, firefox] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Use Node.js ${{ matrix.node-version }} | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ matrix.node-version }} | |
| cache: "npm" | |
| - name: Cache Testplane browsers and drivers | |
| uses: actions/cache@v3 | |
| with: | |
| path: ~/.testplane | |
| key: ${{ runner.os }}-testplane-browsers-${{ matrix.browser }}-${{ env.INTEGRATION_BROWSER_VERSION }} | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Build project | |
| run: npm run build | |
| - name: Preload Chrome browser | |
| if: ${{ matrix.browser == 'chrome' }} | |
| timeout-minutes: 10 | |
| env: | |
| BROWSER: ${{ matrix.browser }} | |
| run: TS_NODE_TRANSPILE_ONLY=1 node scripts/run-node-without-type-stripping.js -r ts-node/register scripts/preload-standalone-browser.ts | |
| - name: "Prepare screenshot tests: Cache browser docker image" | |
| if: ${{ matrix.browser == 'chrome' }} | |
| uses: actions/cache@v3 | |
| with: | |
| path: ~/.docker/cache | |
| key: docker-browser-image-testplane | |
| - name: "Prepare screenshot tests: Pull browser docker image" | |
| if: ${{ matrix.browser == 'chrome' }} | |
| run: | | |
| mkdir -p ~/.docker/cache | |
| if [ -f ~/.docker/cache/image.tar ]; then | |
| docker load -i ~/.docker/cache/image.tar | |
| else | |
| docker pull yinfra/html-reporter-browsers | |
| docker save yinfra/html-reporter-browsers -o ~/.docker/cache/image.tar | |
| fi | |
| - name: "Prepare screenshot tests: Run browser docker image" | |
| if: ${{ matrix.browser == 'chrome' }} | |
| run: docker run -d --name ${{ env.DOCKER_IMAGE_NAME }} -it --rm --network=host $(which colima >/dev/null || echo --add-host=host.docker.internal:0.0.0.0) yinfra/html-reporter-browsers | |
| - name: Run integration tests for ${{ matrix.browser }} | |
| env: | |
| BROWSER: ${{ matrix.browser }} | |
| run: npm run test-integration | |
| - name: "Screenshot tests: Stop browser docker image" | |
| if: ${{ always() && matrix.browser == 'chrome' }} | |
| run: | | |
| docker kill ${{ env.DOCKER_IMAGE_NAME }} || true | |
| docker rm ${{ env.DOCKER_IMAGE_NAME }} || true |