-
-
Notifications
You must be signed in to change notification settings - Fork 0
64 lines (56 loc) · 3.43 KB
/
run-tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
name: run-tests
on:
push:
branches: [master]
pull_request:
branches: [master]
jobs:
test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: true
matrix:
os: [ubuntu-latest, windows-latest]
stability: [prefer-lowest, prefer-stable]
php-laravel-testbench:
- {php: 8.0.2, laravel: ^9.47, testbench: 7.*, larastan: ^2.4.0, testbenchc: 7.*}
- {php: 8.1, laravel: ^9.47, testbench: 7.*, larastan: ^2.4.0, testbenchc: 7.*}
- {php: 8.2, laravel: ^9.47, testbench: 7.*, larastan: ^2.4.0, testbenchc: 7.*}
- {php: 8.3, laravel: ^9.47, testbench: 7.*, larastan: ^2.4.0, testbenchc: 7.*}
- {php: 8.1, laravel: 10.*, testbench: 8.*, larastan: ^2.4.0, testbenchc: 8.*}
- {php: 8.2, laravel: 10.*, testbench: 8.*, larastan: ^2.4.0, testbenchc: 8.*}
- {php: 8.3, laravel: 10.*, testbench: 8.*, larastan: ^2.4.0, testbenchc: 8.*}
- {php: 8.2, laravel: 11.*, testbench: ^9.1, larastan: ^3.0.0, testbenchc: 9.1.4}
- {php: 8.3, laravel: 11.*, testbench: ^9.1, larastan: ^3.0.0, testbenchc: 9.1.4}
- {php: 8.4, laravel: 11.*, testbench: ^9.1, larastan: ^3.0.0, testbenchc: 9.1.4}
name: PHP ${{ matrix.php-laravel-testbench.php }} - Laravel ${{ matrix.php-laravel-testbench.laravel }} - Testbench ${{ matrix.php-laravel-testbench.testbench }} - Larastan ${{ matrix.php-laravel-testbench.larastan }} - Testbench-core ${{ matrix.php-laravel-testbench.testbenchc }} - ${{ matrix.stability }} - ${{ matrix.os }}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-laravel-testbench.php }}
extensions: mbstring, pcntl, pdo, sqlite, pdo_sqlite, gd, fileinfo
coverage: none
- 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: |
if ($env:RUNNER_OS -eq 'Linux') {
composer require "laravel/framework:${{ matrix.php-laravel-testbench.laravel }}" --no-update || { echo 'Installing Laravel framework failed' ; exit 1; }
composer require "orchestra/testbench:${{ matrix.php-laravel-testbench.testbench }}" --dev --no-update || { echo 'Installing Orchestra Testbench failed' ; exit 1; }
composer require "larastan/larastan:${{ matrix.php-laravel-testbench.larastan }}" --dev --no-update || { echo 'Installing Larastan failed' ; exit 1; }
composer update --${{ matrix.stability }} --prefer-dist --no-interaction || { echo 'Composer update failed' ; exit 1; }
} elseif ($env:RUNNER_OS -eq 'Windows') {
composer require "laravel/framework:${{ matrix.php-laravel-testbench.laravel }}" --no-update || exit 1
composer require "orchestra/testbench:${{ matrix.php-laravel-testbench.testbench }}" --dev --no-update || exit 1
composer require "larastan/larastan:${{ matrix.php-laravel-testbench.larastan }}" --dev --no-update || exit 1
composer require "orchestra/testbench-core:${{ matrix.php-laravel-testbench.testbenchc }}" --dev --no-update || exit 1
composer update --${{ matrix.stability }} --prefer-dist --no-interaction || exit 1
}
shell: pwsh
- name: Execute tests
run: vendor/bin/pest