name: Test Ace Diff
on:
  workflow_dispatch:
  push:
  pull_request:

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Setup Node.js
        uses: actions/setup-node@v4
        with:
          node-version: 20

      - name: Install and Build
        run: |
          npm ci
          npm install @parcel/rust-linux-x64-gnu
          npm install @parcel/watcher-linux-x64-glibc
          npm install @swc/core-linux-x64-gnu
          npm install lightningcss-linux-x64-gnu
          npm run build
      - name: Run static server in the background
        run: npm run serve &
      - name: Run tests
        run: npm test

      - name: Release?
        run: npm run semantic-release
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
