Compare commits

..

4 Commits

Author SHA1 Message Date
philipp lang 820a725517 Lint 2024-01-02 01:28:49 +01:00
philipp lang 2d39816954 Lint 2024-01-02 01:28:16 +01:00
philipp lang 7e8f762885 Lint 2024-01-02 01:27:56 +01:00
philipp lang 9c33c8f128 Update tests 2024-01-02 00:41:22 +01:00
7 changed files with 2148 additions and 913 deletions

View File

@ -35,5 +35,12 @@
"allow-plugins": {
"pestphp/pest-plugin": true
}
},
"extra": {
"laravel": {
"providers": [
"Zoomyboy\\MedialibraryHelper\\ServiceProvider"
]
}
}
}

2966
composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@ -48,7 +48,7 @@ class MediaController
$medias = collect($content)->map(function ($c) use ($collection, $model) {
$pathinfo = pathinfo($c['name']);
$basename = $collection->runCallback('forceFileName', $model, $pathinfo['filename']);
$path = $basename.'.'.$pathinfo['extension'];
$path = $basename . '.' . $pathinfo['extension'];
$adder = $this->fileAdderFromData($model, $c['content'], $collection)
->usingName($basename)

View File

@ -1,44 +0,0 @@
<?php
namespace Zoomyboy\MedialibraryHelper\Tests\Feature;
use Illuminate\Foundation\Testing\RefreshDatabase;
use Zoomyboy\MedialibraryHelper\Tests\TestCase;
class MiddlewareTest extends TestCase
{
use RefreshDatabase;
public function testItReturns401WhenNotLoggedIn(): void
{
$this->registerModel();
$post = $this->newPost();
$response = $this->postJson('/mediaupload', [
'model' => 'post',
'id' => $post->id,
'collection' => 'defaultSingleFile',
'content' => base64_encode($this->pdfFile()->getContent()),
'name' => 'beispiel bild.jpg',
]);
$response->assertStatus(401);
}
public function testItReturns401WhenDestroying(): void
{
$this->registerModel();
$post = $this->newPost();
$media = $post->addMedia($this->pdfFile()->getPathname())->toMediaCollection('defaultSingleFile');
$response = $this->deleteJson("/mediaupload/{$media->id}");
$response->assertStatus(401);
}
protected function defineEnvironment($app)
{
$app['config']->set('media-library.middleware', ['web', 'auth:web']);
}
}

View File

@ -233,14 +233,14 @@ test('it returns 403 when not authorized', function () {
$post = $this->newPost();
$response = $this->postJson('/mediaupload', [
'model' => 'post',
'id' => $post->id,
'collection' => 'defaultSingleFile',
'payload' => [
'content' => base64_encode($this->pdfFile()->getContent()),
'name' => 'beispiel bild.jpg',
],
]);
'model' => 'post',
'id' => $post->id,
'collection' => 'defaultSingleFile',
'payload' => [
'content' => base64_encode($this->pdfFile()->getContent()),
'name' => 'beispiel bild.jpg',
],
]);
$response->assertStatus(403);
});

View File

@ -23,20 +23,20 @@ class Post extends Model implements HasMedia
$this->addMediaCollection('defaultSingleFile')->maxWidth(fn () => 250)->singleFile();
$this->addMediaCollection('conversionsWithDefault')
->singleFile()
->withFallback(fn ($parent) => ['default.jpg', 'public'])
->registerMediaConversions(function () {
$this->addMediaConversion('tiny')->width(200)->height(200);
});
->singleFile()
->withFallback(fn ($parent) => ['default.jpg', 'public'])
->registerMediaConversions(function () {
$this->addMediaConversion('tiny')->width(200)->height(200);
});
$this->addMediaCollection('images')->after(fn ($model) => Event::dispatch(new MediaChange($model)));
$this->addMediaCollection('singleForced')->singleFile()->forceFileName(function ($model, $name) {
return $name.' '.now()->format('Y-m-d');
return $name . ' ' . now()->format('Y-m-d');
});
$this->addMediaCollection('multipleForced')->forceFileName(function ($model, $name) {
return $name.' '.now()->format('Y-m-d');
return $name . ' ' . now()->format('Y-m-d');
});
$this->addMediaCollection('singleStoringHook')->singleFile()->storing(function ($adder, $fileName) {
@ -49,8 +49,8 @@ class Post extends Model implements HasMedia
$this->addMediaCollection('singleWithEvent')->singleFile()->stored(function (Media $media) {
Event::dispatch(new MediaStored($media));
})
->destroyed(fn ($model) => Event::dispatch(new MediaDestroyed($model)))
->after(fn ($model) => Event::dispatch(new MediaChange($model)));
->destroyed(fn ($model) => Event::dispatch(new MediaDestroyed($model)))
->after(fn ($model) => Event::dispatch(new MediaChange($model)));
$this->addMediaCollection('multipleFilesWithEvent')->stored(function (Media $media) {
Event::dispatch(new MediaStored($media));
@ -61,6 +61,6 @@ class Post extends Model implements HasMedia
])->withPropertyValidation(fn ($path) => [
'test' => 'string|max:10',
])
->after(fn ($model) => Event::dispatch(new MediaChange($model)));
->after(fn ($model) => Event::dispatch(new MediaChange($model)));
}
}

View File

@ -17,7 +17,7 @@ class TestCase extends BaseTestCase
*/
protected function defineDatabaseMigrations(): void
{
$this->loadMigrationsFrom(__DIR__.'/migrations');
$this->loadMigrationsFrom(__DIR__ . '/migrations');
}
protected function getPackageProviders($app): array
@ -44,8 +44,8 @@ class TestCase extends BaseTestCase
protected function getFile(string $location, string $as): File
{
$path = __DIR__.'/stubs/'.$location;
$to = sys_get_temp_dir().'/'.$as;
$path = __DIR__ . '/stubs/' . $location;
$to = sys_get_temp_dir() . '/' . $as;
copy($path, $to);
return new File($to);