diff --git a/.github/workflows/standard-test-coverage.yml b/.github/workflows/standard-test-coverage.yml index a3c1eed..3ca97af 100644 --- a/.github/workflows/standard-test-coverage.yml +++ b/.github/workflows/standard-test-coverage.yml @@ -1,4 +1,5 @@ name: PSR-12 coding standard, Test, Coverage + on: pull_request: push: @@ -9,31 +10,47 @@ on: jobs: coding-standard: name: PSR-12 coding standard + + + runs-on: ubuntu-latest + + + steps: - name: Checkout code uses: actions/checkout@v2 + + - uses: shivammathur/setup-php@v2 with: php-version: 8.1 + + - name: Install PHP code sniffer run: composer global require squizlabs/php_codesniffer + + - name: Check against PSR12 standard run: | `composer global config bin-dir --absolute --quiet`/phpcs --standard=PSR12 ./src + tests: name: PHP [${{ matrix.php }}] - Lumen [${{ matrix.lumen }}] + + + runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: - os: [ ubuntu-latest ] - php: [ 7.2, 7.3, 7.4, 8.0, 8.1 ] - lumen: [ 6, 7, 8, 9 ] + os: [ubuntu-latest] + php: [7.2, 7.3, 7.4, 8.0, 8.1, '8.2'] + lumen: [6, 7, 8, 9] exclude: - php: 8.0 lumen: 6 @@ -52,41 +69,63 @@ jobs: - php: 7.4 lumen: 9 + + steps: - name: Checkout code uses: actions/checkout@v2 + + - uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} + + - name: Install dependencies run: | composer require laravel/lumen:^${{ matrix.lumen }} --no-interaction --prefer-dist + + - name: Run test suite run: ./vendor/bin/phpunit --testdox --verbose coverage: name: Coverage - if: github.ref != 'refs/heads/dev' + + if: "github.ref != 'refs/heads/dev'" + + + runs-on: ubuntu-latest + + steps: - name: Checkout code uses: actions/checkout@v2 + + - uses: shivammathur/setup-php@v2 with: coverage: pcov php-version: 8.1 + + - name: Install dependencies run: composer require laravel/lumen:"^9" --no-interaction --prefer-dist + + - name: Run tests for coverage run: ./vendor/bin/phpunit --coverage-clover=coverage.xml + + - name: Push to Codecov run: bash <(curl -s https://codecov.io/bash) env: diff --git a/composer.json b/composer.json index 101f6f5..3af8aec 100644 --- a/composer.json +++ b/composer.json @@ -9,7 +9,7 @@ "type": "library", "require": { "php": "^7.2|^8.0", - "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0" + "illuminate/support": "^6.0|^7.0|^8.0|^9.0|^10.0|^11.0" }, "require-dev": { "anik/testbench-lumen": "^1.0"