Merge pull request #1763 from GSA/dev #431
This file contains 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: Run Cypress Tests | |
on: | |
pull_request: | |
workflow_dispatch: | |
push: | |
paths: | |
- benefit-finder/* | |
permissions: read-all | |
defaults: | |
run: | |
working-directory: ./benefit-finder | |
jobs: | |
tests-chrome: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./benefit-finder/package.json" | |
- name: Install Submodule | |
run: | | |
cd .. | |
git submodule init | |
git submodule update | |
- name: Cypress run (Chrome) | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
browser: chrome | |
env: NODE_ENV=test | |
build: "npm run cy:build:storybook" | |
start: "npm run cy:run:pipeline" | |
- name: Chrome Artifact(s) | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Chrome cypress screenshots | |
path: ./benefit-finder/cypress/screenshots | |
tests-firefox: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./benefit-finder/package.json" | |
- name: Install Submodule | |
run: | | |
cd .. | |
git submodule init | |
git submodule update | |
- name: Cypress run (Firefox) | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
browser: firefox | |
env: NODE_ENV=test | |
build: "npm run cy:build:storybook" | |
start: "npm run cy:run:pipeline" | |
- name: Firefox Artifact(s) | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Firefox cypress screenshots | |
path: ./benefit-finder/cypress/screenshots | |
tests-edge: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./benefit-finder/package.json" | |
- name: Install Submodule | |
run: | | |
cd .. | |
git submodule init | |
git submodule update | |
- name: Cypress run (edge) | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
browser: edge | |
env: NODE_ENV=test | |
build: "npm run cy:build:storybook" | |
start: "npm run cy:run:pipeline" | |
- name: Edge Artifact(s) | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Edge cypress screenshots | |
path: ./benefit-finder/cypress/screenshots | |
tests-webkit: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./benefit-finder/package.json" | |
- name: Install Submodule | |
run: | | |
cd .. | |
git submodule init | |
git submodule update | |
- name: Install dependencies | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
build: npx playwright-webkit install-deps | |
runTests: false | |
- name: Cypress run (WebKit) | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
install: false | |
browser: webkit | |
env: NODE_ENV=test | |
build: "npm run cy:build:storybook" | |
start: "npm run cy:run:pipeline" | |
- name: Webkit Artifact(s) | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Webkit cypress screenshots | |
path: ./benefit-finder/cypress/screenshots | |
tests-components: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./benefit-finder/package.json" | |
- name: Install Submodule | |
run: | | |
cd .. | |
git submodule init | |
git submodule update | |
- name: Cypress run (Chrome) | |
uses: cypress-io/github-action@v6 | |
with: | |
working-directory: ./benefit-finder | |
component: true | |
browser: chrome | |
env: NODE_ENV=test | |
build: "npm run cy:prebuild:storybook" | |
- name: Component Artifact(s) | |
if: failure() | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Component cypress screenshots | |
path: ./benefit-finder/cypress/screenshots |