|
14 | 14 | max-parallel: 2 |
15 | 15 | matrix: |
16 | 16 | os: [ubuntu-latest] |
17 | | - php: [8.2, 8.3, 8.4] |
| 17 | + php: [8.2, 8.3] |
18 | 18 | laravel: [10.*] |
19 | 19 | stability: [prefer-dist] |
20 | 20 |
|
@@ -172,3 +172,86 @@ jobs: |
172 | 172 |
|
173 | 173 | - name: Run Visuals Tests |
174 | 174 | run: php ./vendor/bin/phpunit --testsuite "Laravel Livewire Tables Visuals Test Suite" --no-coverage |
| 175 | + |
| 176 | + test-laravel12: |
| 177 | + runs-on: ${{ matrix.os }} |
| 178 | + strategy: |
| 179 | + fail-fast: false |
| 180 | + max-parallel: 2 |
| 181 | + matrix: |
| 182 | + os: [ubuntu-latest] |
| 183 | + php: [8.2, 8.3, 8.4] |
| 184 | + laravel: [12.*] |
| 185 | + stability: [prefer-dist] |
| 186 | + |
| 187 | + name: PULL PHP-${{ matrix.php }} - Laravel-12 |
| 188 | + env: |
| 189 | + extensionKey: phpextensions-${{ matrix.os }}-P${{ matrix.php }}-L${{ matrix.laravel }} |
| 190 | + extensions: dom, curl, libxml, mbstring, zip, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv, fileinfo, :psr |
| 191 | + |
| 192 | + steps: |
| 193 | + - name: Checkout code |
| 194 | + uses: actions/checkout@v4 |
| 195 | + |
| 196 | + - name: Setup cache environment |
| 197 | + id: extcache |
| 198 | + uses: shivammathur/cache-extensions@v1 |
| 199 | + with: |
| 200 | + php-version: ${{ matrix.php }} |
| 201 | + extensions: ${{ env.extensions }} |
| 202 | + key: ${{ env.extensionKey }} |
| 203 | + |
| 204 | + - name: Cache extensions |
| 205 | + uses: actions/cache@v4 |
| 206 | + with: |
| 207 | + path: ${{ steps.extcache.outputs.dir }} |
| 208 | + key: ${{ matrix.os }}-${{ steps.extcache.outputs.key }} |
| 209 | + restore-keys: ${{ matrix.os }}-${{ steps.extcache.outputs.key }} |
| 210 | + |
| 211 | + - name: Setup PHP |
| 212 | + uses: shivammathur/setup-php@v2 |
| 213 | + with: |
| 214 | + php-version: ${{ matrix.php }} |
| 215 | + extensions: ${{ env.extensions }} |
| 216 | + tools: phpunit:latest |
| 217 | + ini-values: memory_limit=512M |
| 218 | + coverage: none |
| 219 | + env: |
| 220 | + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 221 | + |
| 222 | + - name: Setup problem matchers for PHP |
| 223 | + run: echo "::add-matcher::${{ runner.tool_cache }}/php.json" |
| 224 | + |
| 225 | + - name: Get composer cache directory |
| 226 | + id: composer-cache |
| 227 | + run: | |
| 228 | + echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT |
| 229 | +
|
| 230 | + - uses: actions/cache@v4 |
| 231 | + with: |
| 232 | + path: ${{ steps.composer-cache.outputs.dir }} |
| 233 | + key: ${{ matrix.os }}-P${{ matrix.php }}-L${{ matrix.laravel }}-composer-${{ hashFiles('**/composer.json') }} |
| 234 | + restore-keys: ${{ matrix.os }}-P${{ matrix.php }}-L${{ matrix.laravel }}-composer- |
| 235 | + |
| 236 | + - name: Add token |
| 237 | + env: |
| 238 | + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 239 | + run: | |
| 240 | + composer config github-oauth.github.com $GITHUB_TOKEN |
| 241 | + |
| 242 | + - name: Install dependencies |
| 243 | + if: steps.composer-cache.outputs.cache-hit != 'true' |
| 244 | + run: composer require "laravel/framework:${{ matrix.laravel }}.*" --no-interaction --no-update |
| 245 | + |
| 246 | + - name: Update dependencies |
| 247 | + if: steps.composer-cache.outputs.cache-hit != 'true' |
| 248 | + run: composer update --${{ matrix.stability }} --no-interaction |
| 249 | + |
| 250 | + - name: Setup problem matchers for PHPUnit |
| 251 | + run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" |
| 252 | + |
| 253 | + - name: Run Unit Tests |
| 254 | + run: php ./vendor/bin/paratest --testsuite "Laravel Livewire Tables Unit Test Suite" --no-coverage |
| 255 | + |
| 256 | + - name: Run Visuals Tests |
| 257 | + run: php ./vendor/bin/phpunit --testsuite "Laravel Livewire Tables Visuals Test Suite" --no-coverage |
0 commit comments