Fixed tests, applied StyleCI changes

This commit is contained in:
Dan Brown 2022-03-26 20:38:03 +00:00
parent 3625f12abe
commit b5281bc9ca
No known key found for this signature in database
GPG Key ID: 46D9F943C24A2EF9
5 changed files with 17 additions and 14 deletions

View File

@ -60,13 +60,13 @@ class WebhookFormatter
/**
* @param callable(string, Model):bool $condition
* @param callable(Model):void $format
* @param callable(Model):void $format
*/
public function addModelFormatter(callable $condition, callable $format): void
{
$this->modelFormatters[] = [
'condition' => $condition,
'format' => $format,
'format' => $format,
];
}
@ -74,14 +74,14 @@ class WebhookFormatter
{
// Load entity owner, creator, updater details
$this->addModelFormatter(
fn($event, $model) => ($model instanceof Entity),
fn($model) => $model->load(['ownedBy', 'createdBy', 'updatedBy'])
fn ($event, $model) => ($model instanceof Entity),
fn ($model) => $model->load(['ownedBy', 'createdBy', 'updatedBy'])
);
// Load revision detail for page update and create events
$this->addModelFormatter(
fn($event, $model) => ($model instanceof Page && ($event === ActivityType::PAGE_CREATE || $event === ActivityType::PAGE_UPDATE)),
fn($model) => $model->load('currentRevision')
fn ($event, $model) => ($model instanceof Page && ($event === ActivityType::PAGE_CREATE || $event === ActivityType::PAGE_UPDATE)),
fn ($model) => $model->load('currentRevision')
);
}
@ -118,6 +118,7 @@ class WebhookFormatter
{
$instance = new static($event, $webhook, $detail, $initiator, $initiatedTime);
$instance->addDefaultModelFormatters();
return $instance;
}
}
}

View File

@ -10,7 +10,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
/**
* Class PageRevision.
*
* @property mixed $id
* @property mixed $id
* @property int $page_id
* @property string $slug
* @property string $book_slug

View File

@ -338,7 +338,7 @@ class ImageService
* can be used (At least when created using binary string data) so we need to do some
* implementation on our side to use the original image data.
* Bulk of logic taken from: https://github.com/Intervention/image/blob/b734a4988b2148e7d10364b0609978a88d277536/src/Intervention/Image/Commands/OrientateCommand.php
* Copyright (c) Oliver Vogel, MIT License
* Copyright (c) Oliver Vogel, MIT License.
*/
protected function orientImageToOriginalExif(InterventionImage $image, string $originalData): void
{
@ -347,7 +347,8 @@ class ImageService
}
$stream = Utils::streamFor($originalData)->detach();
$orientation = exif_read_data($stream)['Orientation'] ?? null;
$exif = @exif_read_data($stream);
$orientation = $exif ? ($exif['Orientation'] ?? null) : null;
switch ($orientation) {
case 2:

View File

@ -16,9 +16,9 @@ class WebhookFormatTesting extends TestCase
public function test_entity_events_show_related_user_info()
{
$events = [
ActivityType::BOOK_UPDATE => Book::query()->first(),
ActivityType::BOOK_UPDATE => Book::query()->first(),
ActivityType::CHAPTER_CREATE => Chapter::query()->first(),
ActivityType::PAGE_MOVE => Page::query()->first(),
ActivityType::PAGE_MOVE => Page::query()->first(),
];
foreach ($events as $event => $entity) {
@ -47,6 +47,7 @@ class WebhookFormatTesting extends TestCase
$webhook = Webhook::factory()->make();
$user = $this->getEditor();
$formatter = WebhookFormatter::getDefault($event, $webhook, $detail, $user, time());
return $formatter->format();
}
}
}

View File

@ -186,7 +186,7 @@ class ThemeTest extends TestCase
dispatch((new DispatchWebhookJob($webhook, $event, $detail)));
$this->assertCount(3, $args);
$this->assertCount(5, $args);
$this->assertEquals($event, $args[0]);
$this->assertEquals($webhook->id, $args[1]->id);
$this->assertEquals($detail->id, $args[2]->id);