diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0184c21..bc61029 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -9,18 +9,20 @@ on: - cron: '0 0 * * *' jobs: - test: - runs-on: ${{ matrix.os }} + ubuntu-latest: + runs-on: ubuntu-latest strategy: - fail-fast: true + fail-fast: false matrix: - os: [ubuntu-latest, windows-latest] php: [8.2] laravel: [10] coverage-driver: [pcov] stability: [prefer-lowest, prefer-stable] + exclude: + - laravel: '11' + php: 8.1 - name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} - ${{ matrix.os }} + name: Ubuntu - P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} steps: - name: Checkout code @@ -51,3 +53,48 @@ jobs: with: token: ${{ secrets.CODECOV_TOKEN }} slug: sertxudeveloper/laravel-counters + + windows-latest: + runs-on: windows-latest + strategy: + fail-fast: false + matrix: + php: [8.1, 8.2] + laravel: [10, '11'] + coverage-driver: [pcov] + stability: [prefer-lowest, prefer-stable] + exclude: + - laravel: '11' + php: 8.1 + + name: Windows - P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.stability }} + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, imagick, fileinfo + coverage: ${{ matrix.coverage-driver }} + + - name: Setup problem matchers + run: | + echo "::add-matcher::${{ runner.tool_cache }}/php.json" + echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" + + - name: Install dependencies + run: | + composer require "illuminate/contracts=${{ matrix.laravel }}.*" --no-interaction --no-update + composer update --${{ matrix.stability }} --prefer-dist --no-interaction + + - name: Execute tests + run: vendor/bin/phpunit --coverage-clover=coverage.xml + + - name: Send code coverage report to Codecov.io + uses: codecov/codecov-action@v4.1.0 + with: + token: ${{ secrets.CODECOV_TOKEN }} + slug: sertxudeveloper/laravel-counters diff --git a/composer.json b/composer.json index b34c3ab..073a56d 100644 --- a/composer.json +++ b/composer.json @@ -12,13 +12,13 @@ } ], "require": { - "php": "^8.2", - "illuminate/support": "^10.0" + "php": "^8.1|^8.2", + "illuminate/support": "^10.0|^11.0" }, "require-dev": { "laravel/pint": "^1.13", - "orchestra/testbench": "^8.0", - "phpunit/phpunit": "^10.0" + "orchestra/testbench": "^8.0|^9.0", + "phpunit/phpunit": "^9.5|^10.0" }, "autoload": { "psr-4": {