diff --git a/routes/web.php b/routes/web.php index 67debfa..c9153ef 100644 --- a/routes/web.php +++ b/routes/web.php @@ -14,6 +14,7 @@ Route::get('dl/{media}', function (Media $media, Request $request) { $media->file_name ); }) + ->whereNumber('media') ->name('dl') ->middleware('signed'); @@ -27,6 +28,7 @@ Route::get('media/{media}', function (Media $media, Request $request) { ] ); }) + ->whereNumber('media') ->name('media.signed') ->middleware('signed'); diff --git a/tests/Feature/MediaRouteTest.php b/tests/Feature/MediaRouteTest.php new file mode 100644 index 0000000..0fc191c --- /dev/null +++ b/tests/Feature/MediaRouteTest.php @@ -0,0 +1,11 @@ +get("/media/{$invalidId}") + ->assertNotFound(); +})->with(['*', 'abc', 'foo-bar']); + +it('returns 404 for non-numeric dl id', function (string $invalidId) { + $this->get("/dl/{$invalidId}") + ->assertNotFound(); +})->with(['*', 'abc', 'foo-bar']);