Skip to content

Merge pull request #834 from carstingaxion/feature/new-general-lintin… #1012

Merge pull request #834 from carstingaxion/feature/new-general-lintin…

Merge pull request #834 from carstingaxion/feature/new-general-lintin… #1012

Workflow file for this run

name: JavaScript Unit Tests
on:
push:
branches:
- main
pull_request:
paths:
- '.github/workflows/jest-tests.yml'
- 'src/**'
- 'test/unit/js**'
- '*.js'
- 'package.*'
jobs:
test-js:
name: Jest Tests
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Log debug information
run: |
npm --version
node --version
git --version
php --version
composer --version
- name: Install NodeJS
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
# Enable built-in functionality for caching and restoring dependencies, which is disabled by default.
# The actions/setup-node uses actions/cache under the hood.
# https://github.com/actions/setup-node#caching-global-packages-data
cache: 'npm'
# Restoring the short lived node_modules cache
# to be used across all workflows running on the last commit.
# https://github.com/actions/cache/blob/main/caching-strategies.md#creating-a-short-lived-cache
- uses: actions/cache/restore@v4
id: node_modules-cache
with:
path: |
./node_modules
key: ${{ runner.os }}-node_modules-${{ github.sha }}-${{ hashFiles('package-lock.json') }}
- name: NPM install
if: steps.node_modules-cache.outputs.cache-hit != 'true'
run: npm ci --legacy-peer-deps
# Creating a short lived node_modules cache
- uses: actions/cache/save@v4
if: steps.node_modules-cache.outputs.cache-hit != 'true'
with:
path: |
./node_modules
key: ${{ steps.node_modules-cache.outputs.cache-primary-key }}
- name: Run Jest Tests
run: npm run test:unit:js
if: ${{ success() || failure() }}