From 2e840ce02a6b6a18e0fd607429206139b88d26d6 Mon Sep 17 00:00:00 2001 From: Jaap Oostinjen Date: Thu, 5 Dec 2024 06:51:08 +0100 Subject: [PATCH] Add test to prove mime-type parsing of UploadFile --- .../MediaConversions/MediaCollectionTest.php | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/tests/Feature/FileAdder/MediaConversions/MediaCollectionTest.php b/tests/Feature/FileAdder/MediaConversions/MediaCollectionTest.php index 01cb9db20..548fb6518 100644 --- a/tests/Feature/FileAdder/MediaConversions/MediaCollectionTest.php +++ b/tests/Feature/FileAdder/MediaConversions/MediaCollectionTest.php @@ -1,5 +1,6 @@ addMedia($this->getTestPdf())->preservingOriginal()->toMediaCollection('images'); }); +it('can handle mime types coming from laravel fake upload', function () { + $testModel = new class extends TestModelWithConversion + { + public function registerMediaCollections(): void + { + $this + ->addMediaCollection('audio') + ->acceptsMimeTypes(['audio/mpeg']); + } + }; + + $model = $testModel::create(['name' => 'testmodel']); + + $uploadFile = UploadedFile::fake() + ->create('song.mp3', 1000) + ->mimeType('audio/mpeg'); + + $media = $model->addMedia($uploadFile)->toMediaCollection('audio'); + + $this->assertSame('audio/mpeg', $media->mime_type); // It parses the fake upload mime as 'application/x-empty' + + $this->assertFileExists($this->getTempDirectory('media').'/'.$media->id.'/song.mp3'); +}); + it('can generate responsive images', function () { $testModel = new class extends TestModelWithConversion {