Browse and clean up the media library through the API
Some checks failed
Tests / lint (push) Has been cancelled
Tests / test (push) Has been cancelled
Tests / test-postgres (push) Has been cancelled
Tests / mcp (push) Has been cancelled

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-09-30 19:55:03 +02:00
parent 8d0f2e3639
commit 4c4a2b3299
10 changed files with 342 additions and 4 deletions

View File

@@ -8,6 +8,7 @@ use App\Models\Application;
use App\Models\Call;
use App\Models\Category;
use App\Models\Client;
use App\Models\Media;
use App\Models\Member;
use App\Models\MissingUrl;
use App\Models\Page;
@@ -90,6 +91,7 @@ class AdminApiContractTest extends TestCase
'redirects' => ['path' => '/v1/redirects'],
'missing-urls' => ['path' => '/v1/missing-urls'],
'repositories' => ['path' => '/v1/repositories'],
'media' => ['path' => '/v1/media'],
];
}
@@ -111,6 +113,7 @@ class AdminApiContractTest extends TestCase
$missingUrl = MissingUrl::factory()->create();
$repository = Repository::factory()->create();
Setting::set(Maintenance::KEY, ['enabled' => false]);
$media = Media::factory()->create();
// One request, one documented path — the URL a real caller hits and
// the path key that describes it, side by side rather than derived
@@ -148,6 +151,8 @@ class AdminApiContractTest extends TestCase
'settings' => ['/v1/settings', '/v1/settings'],
'setting' => ['/v1/settings/'.Maintenance::KEY, '/v1/settings/{setting}'],
'maintenance' => ['/v1/maintenance', '/v1/maintenance'],
'media' => ['/v1/media', '/v1/media'],
'medium' => ["/v1/media/{$media->id}", '/v1/media/{media}'],
'users' => ['/v1/users', '/v1/users'],
'user' => ["/v1/users/{$this->caller->id}", '/v1/users/{user}'],
'me' => ['/v1/me', '/v1/me'],