MagicMirror/.github/workflows/automated-tests.yaml
Kristjan ESPERANTO 76fac78909
Run code style checks in workflow only once (#3648)
It's enough if the code style checks are successful once, it's not
necessary to run them with every node version.

Also, if there is an error, we can see more quickly whether it is a code
style or a test-runner issue.
2024-12-07 18:29:49 +01:00

60 lines
1.6 KiB
YAML

# This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
name: "Run Automated Tests"
on:
push:
branches: [master, develop]
pull_request:
branches: [master, develop]
permissions:
contents: read
jobs:
code-style-check:
runs-on: ubuntu-latest
timeout-minutes: 15
steps:
- name: "Checkout code"
uses: actions/checkout@v4
- name: "Use Node.js"
uses: actions/setup-node@v4
with:
node-version: 23
cache: "npm"
- name: "Install dependencies"
run: |
npm run install-mm:dev
- name: "Run linter tests"
run: |
npm run test:prettier
npm run test:js
npm run test:css
npm run test:markdown
test:
runs-on: ubuntu-latest
timeout-minutes: 30
strategy:
matrix:
node-version: [20.9.0, 20.x, 22.x, 23.x]
steps:
- name: "Checkout code"
uses: actions/checkout@v4
- name: "Use Node.js ${{ matrix.node-version }}"
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
check-latest: true
cache: "npm"
- name: "Install dependencies"
run: |
npm run install-mm:dev
- name: "Run tests"
run: |
Xvfb :99 -screen 0 1024x768x16 &
export DISPLAY=:99
touch css/custom.css
npm run test