From 6b70ccd759e41d03169cce464512695438e1cada Mon Sep 17 00:00:00 2001 From: Brandon Ferens Date: Wed, 12 Mar 2025 15:24:41 -0700 Subject: [PATCH] Updated actions and pint rules --- .github/workflows/ci.yml | 57 --------------- .github/workflows/code-style.yml | 21 ------ .github/workflows/run-tests.yml | 119 +++++++++++++++++++++++++++++++ pint.json | 6 ++ 4 files changed, 125 insertions(+), 78 deletions(-) delete mode 100644 .github/workflows/ci.yml delete mode 100644 .github/workflows/code-style.yml create mode 100644 .github/workflows/run-tests.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml deleted file mode 100644 index 8458b74..0000000 --- a/.github/workflows/ci.yml +++ /dev/null @@ -1,57 +0,0 @@ -on: push -name: CI - -jobs: - pest-php81: - name: PHP 8.1 - runs-on: ubuntu-latest - container: - image: kirschbaumdevelopment/laravel-test-runner:8.1 - - steps: - - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - - name: Install composer dependencies - run: | - composer install --prefer-dist --no-interaction --no-scripts - - - name: Run Testsuite - run: composer pest - - pest-php82: - name: PHP 8.2 - runs-on: ubuntu-latest - container: - image: kirschbaumdevelopment/laravel-test-runner:8.2 - - steps: - - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - - name: Install composer dependencies - run: | - composer install --prefer-dist --no-interaction --no-scripts - - - name: Run Testsuite - run: composer pest - - pest-php83: - name: PHP 8.3 - runs-on: ubuntu-latest - container: - image: kirschbaumdevelopment/laravel-test-runner:8.3 - - steps: - - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - - name: Install composer dependencies - run: | - composer install --prefer-dist --no-interaction --no-scripts - - - name: Run Testsuite - run: composer pest diff --git a/.github/workflows/code-style.yml b/.github/workflows/code-style.yml deleted file mode 100644 index b12129b..0000000 --- a/.github/workflows/code-style.yml +++ /dev/null @@ -1,21 +0,0 @@ -on: push -name: Code Style - -jobs: - pint: - runs-on: ubuntu-latest - container: - image: kirschbaumdevelopment/laravel-test-runner:8.2 - - steps: - - uses: actions/checkout@v1 - with: - fetch-depth: 1 - - - name: Install composer dependencies - run: | - composer install --prefer-dist --no-interaction --no-scripts - - - name: Check Coding Standards - run: composer pint-check - diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml new file mode 100644 index 0000000..12c9ef1 --- /dev/null +++ b/.github/workflows/run-tests.yml @@ -0,0 +1,119 @@ +on: push +name: CI + +jobs: + pest: + runs-on: ubuntu-24.04 + timeout-minutes: 5 + + strategy: + fail-fast: true + matrix: + php: [ 8.1, 8.2, 8.3, 8.4 ] + laravel: [ 10.*, 11.*, 12.* ] + include: + - php: 8.1 + laravel: 10.* + pest: 2.* + testbench: 8.* + - php: 8.2 + laravel: 10.* + pest: 2.* + testbench: 8.* + - php: 8.3 + laravel: 10.* + pest: 2.* + testbench: 8.* + - php: 8.4 + laravel: 10.* + pest: 2.* + testbench: 8.* + - php: 8.2 + laravel: 11.* + pest: 3.* + testbench: 9.* + - php: 8.3 + laravel: 11.* + pest: 3.* + testbench: 9.* + - php: 8.4 + laravel: 11.* + pest: 3.* + testbench: 9.* + - php: 8.2 + laravel: 12.* + pest: 3.* + testbench: 10.* + - php: 8.3 + laravel: 12.* + pest: 3.* + testbench: 10.* + - php: 8.4 + laravel: 12.* + pest: 3.* + testbench: 10.* + exclude: + - php: 8.1 + laravel: 11.* + - php: 8.1 + laravel: 12.* + + name: Mail Intercept Tests - PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }} + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Cache dependencies + uses: actions/cache@v4 + with: + path: ~/.composer/cache/files + key: dependencies-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }} + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: ${{ matrix.php }} + extensions: curl, mbstring, zip, pcntl, iconv + coverage: none + tools: composer:v2 + + - name: Install dependencies + run: | + composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update + composer require "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update + composer require "pestphp/pest:${{ matrix.pest }}" "pestphp/pest-plugin-laravel:${{ matrix.pest }}" "pestphp/pest-plugin-type-coverage:${{ matrix.pest }}" --no-interaction --no-update + composer update --prefer-dist --no-interaction + composer dump + + - name: Execute tests + run: composer pest + + pint: + runs-on: ubuntu-24.04 + timeout-minutes: 5 + + name: Pint Style Check + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Cache dependencies + uses: actions/cache@v4 + with: + path: ~/.composer/cache/files + key: dependencies-composer-${{ hashFiles('composer.json') }} + + - name: Setup PHP + uses: shivammathur/setup-php@v2 + with: + php-version: 8.3 + tools: composer:v2 + + - name: Install dependencies + run: | + composer install --no-interaction + composer dump + + - name: Execute Pint + run: composer pint-check \ No newline at end of file diff --git a/pint.json b/pint.json index eb8cc3c..858164c 100644 --- a/pint.json +++ b/pint.json @@ -38,6 +38,12 @@ "new_with_braces": true, "nullable_type_declaration_for_default_null_value": true, "ordered_traits": true, + "php_unit_method_casing": { + "case": "camel_case" + }, + "php_unit_test_annotation": { + "style": "prefix" + }, "phpdoc_separation": true, "single_line_empty_body": true }