# 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