bnomei/kirby-mongodb

View on GitHub
.github/workflows/pest-tests.yml

Summary

Maintainability
Test Coverage
name: Pest Tests

on: [ 'push', 'pull_request' ]

jobs:
  test:
    runs-on: ubuntu-latest
    env:
      extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick, redis, xdebug, mongodb

    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Start MongoDB
        uses: supercharge/mongodb-github-action@1.11.0
        with:
          mongodb-version: latest

      - name: Setup cache environment
        id: extcache
        uses: shivammathur/cache-extensions@v1
        with:
          php-version: ${{ matrix.php }}
          extensions: ${{ env.extensions }}
          key: extensions-${{ hashFiles('composer.lock') }}

      - name: Cache extensions
        uses: actions/cache@v4
        with:
          path: ${{ steps.extcache.outputs.dir }}
          key: ${{ steps.extcache.outputs.key }}
          restore-keys: ${{ steps.extcache.outputs.key }}

      - name: Setup PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: 8.2
          tools: composer:v2
          coverage: xdebug

      - name: Cache composer dependencies
        uses: actions/cache@v4
        with:
          path: vendor
          key: composer-${{ hashFiles('composer.lock') }}

      - name: Install
        run: composer install --no-interaction --prefer-dist --optimize-autoloader

      - name: Test & publish code coverage
        uses: paambaati/codeclimate-action@v8.0.0
        with:
          coverageCommand: composer coverage
          coverageLocations: ${{github.workspace}}/tests/clover.xml:clover
        env:
          CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}