Skip to content

Commit d59d7fb

Browse files
committed
🚨 audit should not have a factory
1 parent 5d43c4a commit d59d7fb

File tree

4 files changed

+39
-64
lines changed

4 files changed

+39
-64
lines changed

‎tests/Models/Audit.php

-10
This file was deleted.

‎tests/Unit/AuditTest.php

+20-6
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@
66
use DateTimeInterface;
77
use Illuminate\Testing\Assert;
88
use OwenIt\Auditing\Encoders\Base64Encoder;
9+
use OwenIt\Auditing\Models\Audit;
910
use OwenIt\Auditing\Redactors\LeftRedactor;
1011
use OwenIt\Auditing\Resolvers\UrlResolver;
1112
use OwenIt\Auditing\Tests\AuditingTestCase;
1213
use OwenIt\Auditing\Tests\Models\Article;
13-
use OwenIt\Auditing\Tests\Models\Audit;
1414
use OwenIt\Auditing\Tests\Models\Money;
1515
use OwenIt\Auditing\Tests\Models\User;
1616

@@ -447,11 +447,15 @@ public function itReturnsAuditableModifiedAttributesAsJsonString()
447447
*/
448448
public function itReturnsDecodedAuditableAttributes()
449449
{
450-
$article = new itReturnsDecodedAuditableAttributesArticle();
450+
$model = Article::factory()->create();
451+
452+
$this->assertTrue(itReturnsDecodedAuditableAttributesArticle::first()->is($model));
451453

452454
// Audit with redacted/encoded attributes
453-
$audit = Audit::factory()->create([
454-
'auditable_type' => get_class($article),
455+
$audit = Audit::create([
456+
'event' => 'updated',
457+
'auditable_id' => $model->getKey(),
458+
'auditable_type' => itReturnsDecodedAuditableAttributesArticle::class,
455459
'old_values' => [
456460
'title' => 'SG93IFRvIEF1ZGl0IE1vZGVscw==',
457461
'content' => '##A',
@@ -489,7 +493,12 @@ public function itReturnsDecodedAuditableAttributes()
489493
*/
490494
public function itReturnsTags()
491495
{
492-
$audit = Audit::factory()->create([
496+
$model = Article::factory()->create();
497+
498+
$audit = Audit::create([
499+
'event' => 'updated',
500+
'auditable_id' => $model->getKey(),
501+
'auditable_type' => Article::class,
493502
'tags' => 'foo,bar,baz',
494503
]);
495504

@@ -508,7 +517,12 @@ public function itReturnsTags()
508517
*/
509518
public function itReturnsEmptyTags()
510519
{
511-
$audit = Audit::factory()->create([
520+
$model = Article::factory()->create();
521+
522+
$audit = Audit::create([
523+
'event' => 'updated',
524+
'auditable_id' => $model->getKey(),
525+
'auditable_type' => Article::class,
512526
'tags' => null,
513527
]);
514528

‎tests/Unit/AuditableTest.php

+19-9
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212
use OwenIt\Auditing\Encoders\Base64Encoder;
1313
use OwenIt\Auditing\Exceptions\AuditableTransitionException;
1414
use OwenIt\Auditing\Exceptions\AuditingException;
15+
use OwenIt\Auditing\Models\Audit;
1516
use OwenIt\Auditing\Redactors\LeftRedactor;
1617
use OwenIt\Auditing\Redactors\RightRedactor;
1718
use OwenIt\Auditing\Resolvers\UrlResolver;
1819
use OwenIt\Auditing\Tests\AuditingTestCase;
1920
use OwenIt\Auditing\Tests\Models\ApiModel;
2021
use OwenIt\Auditing\Tests\Models\Article;
2122
use OwenIt\Auditing\Tests\Models\ArticleExcludes;
22-
use OwenIt\Auditing\Tests\Models\Audit;
2323
use OwenIt\Auditing\Tests\Models\User;
2424
use ReflectionClass;
2525

@@ -1034,7 +1034,7 @@ public function itFailsToTransitionWhenTheAuditAuditableTypeDoesNotMatchTheModel
10341034
$this->expectException(AuditableTransitionException::class);
10351035
$this->expectExceptionMessage('Expected Auditable type OwenIt\Auditing\Tests\Models\Article, got OwenIt\Auditing\Tests\Models\User instead');
10361036

1037-
$audit = Audit::factory()->make([
1037+
$audit = new Audit([
10381038
'auditable_type' => User::class,
10391039
]);
10401040

@@ -1091,7 +1091,7 @@ public function itFailsToTransitionWhenTheAuditAuditableTypeDoesNotMatchTheMorph
10911091
'articles' => Article::class,
10921092
]);
10931093

1094-
$audit = Audit::factory()->make([
1094+
$audit = new Audit([
10951095
'auditable_type' => 'users',
10961096
]);
10971097

@@ -1134,7 +1134,8 @@ public function itFailsToTransitionWhenTheAuditAuditableIdTypeDoesNotMatchTheMod
11341134

11351135
$model = Article::factory()->create();
11361136

1137-
$audit = Audit::factory()->create([
1137+
$audit = Audit::create([
1138+
'event' => 'updated',
11381139
'auditable_type' => Article::class,
11391140
'auditable_id' => (string) $model->id,
11401141
]);
@@ -1168,7 +1169,8 @@ public function itTransitionsWhenTheAuditAuditableIdTypeDoesNotMatchTheModelIdTy
11681169
$key = (int) $model->id;
11691170
}
11701171

1171-
$audit = Audit::factory()->create([
1172+
$audit = Audit::create([
1173+
'event' => 'updated',
11721174
'auditable_type' => Article::class,
11731175
'auditable_id' => $key,
11741176
]);
@@ -1192,7 +1194,8 @@ public function itFailsToTransitionWhenAnAttributeRedactorIsSet()
11921194
'title' => RightRedactor::class,
11931195
];
11941196

1195-
$audit = Audit::factory()->create([
1197+
$audit = Audit::create([
1198+
'event' => 'created',
11961199
'auditable_id' => $model->getKey(),
11971200
'auditable_type' => Article::class,
11981201
]);
@@ -1209,7 +1212,7 @@ public function itFailsToTransitionWhenTheAuditableAttributeCompatibilityIsNotMe
12091212
{
12101213
$model = Article::factory()->create();
12111214

1212-
$incompatibleAudit = Audit::factory()->create([
1215+
$incompatibleAudit = Audit::create([
12131216
'event' => 'created',
12141217
'auditable_id' => $model->getKey(),
12151218
'auditable_type' => Article::class,
@@ -1220,19 +1223,25 @@ public function itFailsToTransitionWhenTheAuditableAttributeCompatibilityIsNotMe
12201223
],
12211224
]);
12221225

1226+
$exceptionWasThrown = false;
1227+
12231228
try {
12241229
$model->transitionTo($incompatibleAudit);
12251230
} catch (AuditableTransitionException $e) {
12261231
$this->assertSame(
1227-
'Incompatibility between [OwenIt\Auditing\Tests\Models\Article:1] and [OwenIt\Auditing\Tests\Models\Audit:3]',
1232+
'Incompatibility between [OwenIt\Auditing\Tests\Models\Article:1] and [OwenIt\Auditing\Models\Audit:2]',
12281233
$e->getMessage()
12291234
);
12301235

12311236
Assert::assertArraySubset([
12321237
'subject',
12331238
'text',
12341239
], $e->getIncompatibilities(), true);
1240+
1241+
$exceptionWasThrown = true;
12351242
}
1243+
1244+
$this->assertTrue($exceptionWasThrown);
12361245
}
12371246

12381247
/**
@@ -1263,7 +1272,8 @@ public function itTransitionsToAnotherModelState(
12631272
$auditableType = $morphMap ? 'articles' : Article::class;
12641273

12651274
$audits = $models->map(function (Article $model) use ($auditableType, $oldValues, $newValues) {
1266-
return Audit::factory()->create([
1275+
return Audit::create([
1276+
'event' => 'updated',
12671277
'auditable_id' => $model->getKey(),
12681278
'auditable_type' => $auditableType,
12691279
'old_values' => $oldValues,

‎tests/database/factories/AuditFactory.php

-39
This file was deleted.

0 commit comments

Comments
 (0)