diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index a72c0ead..63e39381 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -14,12 +14,17 @@ jobs:
strategy:
fail-fast: true
matrix:
- php: [8.2, 8.3, 8.4]
- laravel: [11, 12]
+ php: [ 8.2, 8.3, 8.4, 8.5 ]
+ laravel: [ 11, 12, 13 ]
+ exclude:
+ - laravel: 13
+ php: 8.2
+ - laravel: 11
+ php: 8.5
steps:
- name: Checkout Code
- uses: actions/checkout@v4
+ uses: actions/checkout@v6
- name: Setup PHP
uses: shivammathur/setup-php@v2
@@ -34,7 +39,7 @@ jobs:
run: composer require "laravel/framework:^${{ matrix.laravel }}" --no-update
- name: Install dependencies
- uses: nick-fields/retry@v3
+ uses: nick-fields/retry@v4
with:
timeout_minutes: 5
max_attempts: 5
diff --git a/composer.json b/composer.json
index e17755fd..dd721ce4 100644
--- a/composer.json
+++ b/composer.json
@@ -25,7 +25,7 @@
"php": "^8.2",
"ext-json": "*",
"laravel-json-api/neomerx-json-api": "^5.0.3",
- "laravel/framework": "^11.0|^12.0",
+ "laravel/framework": "^11.0|^12.0|^13.0",
"nyholm/psr7": "^1.8",
"ramsey/uuid": "^4.0",
"symfony/psr-http-message-bridge": "^7.0"
@@ -33,11 +33,11 @@
"require-dev": {
"ext-sqlite3": "*",
"guzzlehttp/guzzle": "^7.8",
- "laravel-json-api/testing": "^3.1",
+ "laravel-json-api/testing": "^3.2",
"laravel/legacy-factories": "^1.4.0",
"laravel/ui": "^4.6",
"mockery/mockery": "^1.6",
- "orchestra/testbench": "^9.0|^10.0",
+ "orchestra/testbench": "^9.0|^10.0|^11.0",
"phpunit/phpunit": "^10.5|^11.0"
},
"suggest": {
diff --git a/phpunit.xml b/phpunit.xml
index f4ddf567..ff42d8e3 100644
--- a/phpunit.xml
+++ b/phpunit.xml
@@ -11,29 +11,29 @@
cacheDirectory=".phpunit.cache"
backupStaticProperties="false"
failOnWarning="true"
- failOnDeprecation="true"
+ failOnDeprecation="false"
failOnNotice="true"
>
-
-
-
- ./tests/lib/Unit/
-
-
- ./tests/lib/Integration/
-
-
- ./tests/dummy/tests/
-
-
-
-
-
-
-
-
-
- src/
-
-
-
\ No newline at end of file
+
+
+
+ ./tests/lib/Unit/
+
+
+ ./tests/lib/Integration/
+
+
+ ./tests/dummy/tests/
+
+
+
+
+
+
+
+
+
+ src/
+
+
+
diff --git a/tests/dummy/tests/Feature/Avatars/ReadTest.php b/tests/dummy/tests/Feature/Avatars/ReadTest.php
index 4a835ad8..179ef537 100644
--- a/tests/dummy/tests/Feature/Avatars/ReadTest.php
+++ b/tests/dummy/tests/Feature/Avatars/ReadTest.php
@@ -75,9 +75,9 @@ public function testDownloadFileDoesNotExist(): void
->accept('image/*')
->get(url('/api/v1/avatars', $avatar));
- $response
- ->assertStatus(404)
- ->assertHeader('Content-Type', 'text/html; charset=UTF-8');
+ $response->assertStatus(404);
+
+ $this->assertSame('text/html; charset=utf-8', strtolower($response->headers->get('Content-Type')));
}
/**
diff --git a/tests/lib/Integration/ContentNegotiation/DefaultTest.php b/tests/lib/Integration/ContentNegotiation/DefaultTest.php
index 5d6b917b..e2183bf2 100644
--- a/tests/lib/Integration/ContentNegotiation/DefaultTest.php
+++ b/tests/lib/Integration/ContentNegotiation/DefaultTest.php
@@ -108,9 +108,9 @@ public function testUnsupportedMediaType()
*/
public function testAcceptable()
{
- $this->get('/api/v1/posts', ['Accept' => 'text/plain'])
- ->assertStatus(200)
- ->assertHeader('Content-Type', 'text/plain; charset=UTF-8');
+ $response = $this->get('/api/v1/posts', ['Accept' => 'text/plain']);
+ $response->assertStatus(200);
+ $this->assertSame('text/plain; charset=utf-8', strtolower($response->headers->get('Content-Type')));
}
/**