41 lines
1.2 KiB
YAML
41 lines
1.2 KiB
YAML
name: Unit tests
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
node-version: [18.x, 20.x]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: ${{ matrix.node-version }}
|
|
- name: Install dependencies and Chrome
|
|
run: |
|
|
npm ci
|
|
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
|
|
sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'
|
|
sudo apt-get update
|
|
sudo apt-get --only-upgrade install google-chrome-stable
|
|
google-chrome --version
|
|
- name: Browser versions
|
|
run: |
|
|
google-chrome --version
|
|
firefox --version
|
|
- name: Verify clean CSS
|
|
run: npm run build:css && test -z "$(git status --porcelain lib/plugins/html/assets/css/index.css)"
|
|
- name: Verify lint
|
|
run: npm run lint
|
|
- name: Lint pug
|
|
run: npm run pug-lint
|
|
- name: Run unit tests
|
|
run: npm test
|