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

View File

@ -10,7 +10,7 @@ use Illuminate\Database\Eloquent\Relations\BelongsTo;
/** /**
* Class PageRevision. * Class PageRevision.
* *
* @property mixed $id * @property mixed $id
* @property int $page_id * @property int $page_id
* @property string $slug * @property string $slug
* @property string $book_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 * 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. * 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 * 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 protected function orientImageToOriginalExif(InterventionImage $image, string $originalData): void
{ {
@ -347,7 +347,8 @@ class ImageService
} }
$stream = Utils::streamFor($originalData)->detach(); $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) { switch ($orientation) {
case 2: case 2:

View File

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

View File

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