@@ -2,56 +2,89 @@ on: push
22name : CI
33
44jobs :
5- pest-php81 :
6- name : PHP 8.1
7- runs-on : ubuntu-latest
8- container :
9- image : kirschbaumdevelopment/laravel-test-runner:8.1
5+ pest :
6+ runs-on : ubuntu-24.04
7+ timeout-minutes : 5
108
11- steps :
12- - uses : actions/checkout@v1
13- with :
14- fetch-depth : 1
15-
16- - name : Install composer dependencies
17- run : |
18- composer install --prefer-dist --no-interaction --no-scripts
19-
20- - name : Run Testsuite
21- run : composer pest
9+ strategy :
10+ fail-fast : true
11+ matrix :
12+ php : [ 8.1, 8.2, 8.3, 8.4 ]
13+ laravel : [ 10.*, 11.*, 12.* ]
14+ include :
15+ - php : 8.1
16+ laravel : 10.*
17+ pest : 2.*
18+ testbench : 8.*
19+ - php : 8.2
20+ laravel : 10.*
21+ pest : 2.*
22+ testbench : 8.*
23+ - php : 8.3
24+ laravel : 10.*
25+ pest : 2.*
26+ testbench : 8.*
27+ - php : 8.4
28+ laravel : 10.*
29+ pest : 2.*
30+ testbench : 8.*
31+ - php : 8.2
32+ laravel : 11.*
33+ pest : 3.*
34+ testbench : 9.*
35+ - php : 8.3
36+ laravel : 11.*
37+ pest : 3.*
38+ testbench : 9.*
39+ - php : 8.4
40+ laravel : 11.*
41+ pest : 3.*
42+ testbench : 9.*
43+ - php : 8.2
44+ laravel : 12.*
45+ pest : 3.*
46+ testbench : 10.*
47+ - php : 8.3
48+ laravel : 12.*
49+ pest : 3.*
50+ testbench : 10.*
51+ - php : 8.4
52+ laravel : 12.*
53+ pest : 3.*
54+ testbench : 10.*
55+ exclude :
56+ - php : 8.1
57+ laravel : 11.*
58+ - php : 8.1
59+ laravel : 12.*
2260
23- pest-php82 :
24- name : PHP 8.2
25- runs-on : ubuntu-latest
26- container :
27- image : kirschbaumdevelopment/laravel-test-runner:8.2
61+ name : Mail Intercept Tests - PHP ${{ matrix.php }} - Laravel ${{ matrix.laravel }}
2862
29- steps :
30- - uses : actions/checkout@v1
31- with :
32- fetch-depth : 1
33-
34- - name : Install composer dependencies
35- run : |
36- composer install --prefer-dist --no-interaction --no-scripts
37-
38- - name : Run Testsuite
39- run : composer pest
63+ steps :
64+ - name : Checkout code
65+ uses : actions/checkout@v4
4066
41- pest-php83 :
42- name : PHP 8.3
43- runs-on : ubuntu-latest
44- container :
45- image : kirschbaumdevelopment/ laravel-test-runner:8.3
67+ - name : Cache dependencies
68+ uses : actions/cache@v4
69+ with :
70+ path : ~/.composer/cache/files
71+ key : dependencies-${{ matrix. laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
4672
47- steps :
48- - uses : actions/checkout@v1
73+ - name : Setup PHP
74+ uses : shivammathur/setup-php@v2
4975 with :
50- fetch-depth : 1
76+ php-version : ${{ matrix.php }}
77+ extensions : curl, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, iconv
78+ coverage : none
79+ tools : composer:v2
5180
52- - name : Install composer dependencies
81+ - name : Install dependencies
5382 run : |
54- composer install --prefer-dist --no-interaction --no-scripts
83+ composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
84+ composer require "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update
85+ composer require "pestphp/pest:${{ matrix.pest }}" "pestphp/pest-plugin-laravel:${{ matrix.pest }}" "pestphp/pest-plugin-type-coverage:${{ matrix.pest }}" --no-interaction --no-update
86+ composer update --prefer-dist --no-interaction
87+ composer dump
5588
56- - name : Run Testsuite
89+ - name : Execute tests
5790 run : composer pest
0 commit comments