Skip to content

Merge branch 'main' into 13871-move-useWebSocket-to-app-development #18754

Merge branch 'main' into 13871-move-useWebSocket-to-app-development

Merge branch 'main' into 13871-move-useWebSocket-to-app-development #18754

name: Frontend Tests
on:
push:
paths:
- 'frontend/**'
- '!frontend/testing/cypress/**'
- '!frontend/stats/**'
- 'testdata/**'
- '.github/workflows/frontend-unit-tests.yml'
- 'package.json'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
CYPRESS_INSTALL_BINARY: 0
jobs:
codeql:
name: 'CodeQL'
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: 'Checking Out Code'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 'Initialize CodeQL'
uses: github/codeql-action/init@v3
with:
languages: javascript
queries: +security-and-quality
config-file: .github/codeql/codeql-config.yml
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
with:
category: '/language:javascript'
typecheck:
name: 'Typechecking and linting'
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
steps:
- name: 'Checking Out Code'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 'Installing Dependencies'
uses: ./.github/actions/yarn-install
- name: 'Doing the typecheck'
run: yarn typecheck
- name: 'Running Eslint'
run: yarn lint --cache
- name: 'Checking code style'
run: yarn run codestyle:check
test:
name: 'Testing'
runs-on: ubuntu-latest
steps:
- name: 'Checking Out Code'
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: 'Installing Dependencies'
uses: ./.github/actions/yarn-install
- name: 'Running Unit Tests'
run: yarn test:ci
- name: 'Upload coverage reports to Codecov'
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
directory: frontend/coverage
fail_ci_if_error: true