sds/haml-lint

View on GitHub
.github/workflows/tests.yml

Summary

Maintainability
Test Coverage
name: Tests
on:
  push:
    branches: [main]
  pull_request:
    branches: [main]

jobs:
  rspec:
    timeout-minutes: 10
    runs-on: ${{ matrix.os }}-latest

    strategy:
      matrix:
        ruby-version:
          - "3.0"
          - "3.1"
          - "3.2"
          - "3.3"
        gemfile:
          - haml5.0
          - haml5.1
          - haml5.2
          - haml6.0
          - haml6.1
          - haml6.2
          - haml6.3
          - rubocop1.0
        os:
          - ubuntu

    env:
      BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile

    steps:
      - uses: actions/checkout@v4

      - name: Set up Ruby ${{ matrix.ruby-version }}
        uses: ruby/setup-ruby@v1
        with:
          ruby-version: ${{ matrix.ruby-version }}
          bundler-cache: true

      - name: Run tests
        # We prefer to run without debug to catch errors in the "not debug" code
        run: HAML_LINT_DEBUG=false bundle exec rspec

      - name: Code coverage reporting
        uses: coverallsapp/github-action@v2
        with:
          github-token: ${{ secrets.github_token }}
          flag-name: ruby${{ matrix.ruby-version }}-${{ matrix.gemfile }}-${{ matrix.os }}
          parallel: true

  finish:
    needs: rspec
    runs-on: ubuntu-latest

    steps:
      - name: Finalize code coverage report
        uses: coverallsapp/github-action@v2
        with:
          github-token: ${{ secrets.github_token }}
          parallel-finished: true