diff --git a/app/Http/Middleware/TrackVisitor.php b/app/Http/Middleware/TrackVisitor.php index dfabfe3..334183c 100644 --- a/app/Http/Middleware/TrackVisitor.php +++ b/app/Http/Middleware/TrackVisitor.php @@ -13,7 +13,7 @@ class TrackVisitor /** * Handle an incoming request. * - * @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next + * @param Closure(Request): (Response) $next */ public function handle(Request $request, Closure $next): Response { diff --git a/app/Mail/ContactReplyMail.php b/app/Mail/ContactReplyMail.php index ede1045..1a94662 100644 --- a/app/Mail/ContactReplyMail.php +++ b/app/Mail/ContactReplyMail.php @@ -5,6 +5,7 @@ use App\Settings\GeneralSettings; use Illuminate\Bus\Queueable; use Illuminate\Mail\Mailable; +use Illuminate\Mail\Mailables\Attachment; use Illuminate\Mail\Mailables\Content; use Illuminate\Mail\Mailables\Envelope; use Illuminate\Queue\SerializesModels; @@ -55,7 +56,7 @@ public function content(): Content /** * Get the attachments for the message. * - * @return array + * @return array */ public function attachments(): array { diff --git a/app/Services/NewsCrawlerService.php b/app/Services/NewsCrawlerService.php index a5cc07e..5930d73 100644 --- a/app/Services/NewsCrawlerService.php +++ b/app/Services/NewsCrawlerService.php @@ -6,6 +6,8 @@ use App\Models\MediaMonitoring; use Carbon\Carbon; use Illuminate\Http\Client\Pool; +use Illuminate\Http\Client\Response; +use Illuminate\Support\Facades\DB; use Illuminate\Support\Facades\Http; use Illuminate\Support\Facades\Log; use Illuminate\Support\Str; @@ -57,7 +59,7 @@ public function crawlFromGoogleNews(string $keyword, int $limit = 10, array $the $parsedData = []; foreach ($resolvedLinks as $key => $res) { // Check if $res is a response or an exception (ConnectionException) - $originalLink = ($res instanceof \Illuminate\Http\Client\Response && $res->successful()) + $originalLink = ($res instanceof Response && $res->successful()) ? (string) $res->effectiveUri() : $items[$key]['google_link']; @@ -84,7 +86,7 @@ public function crawlFromGoogleNews(string $keyword, int $limit = 10, array $the $itemData = $parsedData[$key]; $extra = ['writer' => 'Redaksi', 'content' => null]; - if ($res instanceof \Illuminate\Http\Client\Response && $res->successful()) { + if ($res instanceof Response && $res->successful()) { $crawler = new Crawler($res->body()); $extra['writer'] = $this->extractWriter($crawler); $extra['content'] = $this->extractContent($crawler); @@ -227,7 +229,7 @@ private function cleanContent(?string $content): string private function generateCode(): string { // Use a lock-safe approach for sequential code - return \Illuminate\Support\Facades\DB::transaction(function () { + return DB::transaction(function () { $latestCode = MediaMonitoring::where('code', 'LIKE', 'ADN%') ->lockForUpdate() ->orderBy('code', 'desc') diff --git a/bootstrap/app.php b/bootstrap/app.php index 7b013d3..99bc34b 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -1,5 +1,6 @@ withMiddleware(function (Middleware $middleware): void { $middleware->alias([ - 'signed' => \App\Http\Middleware\ValidateSignatureFlexible::class, + 'signed' => ValidateSignatureFlexible::class, ]); $middleware->trustProxies( diff --git a/bootstrap/providers.php b/bootstrap/providers.php index c4ab61d..4fa37b2 100644 --- a/bootstrap/providers.php +++ b/bootstrap/providers.php @@ -1,7 +1,11 @@ [ 'users' => [ 'driver' => 'eloquent', - 'model' => env('AUTH_MODEL', App\Models\User::class), + 'model' => env('AUTH_MODEL', User::class), ], // 'users' => [ diff --git a/config/filament-shield.php b/config/filament-shield.php index 4fafd7e..db1cb13 100644 --- a/config/filament-shield.php +++ b/config/filament-shield.php @@ -1,5 +1,10 @@ [ 'subject' => 'model', 'manage' => [ - \BezhanSalleh\FilamentShield\Resources\Roles\RoleResource::class => [ + RoleResource::class => [ 'viewAny', 'view', 'create', @@ -191,7 +196,7 @@ 'subject' => 'class', 'prefix' => 'view', 'exclude' => [ - \Filament\Pages\Dashboard::class, + Dashboard::class, ], ], @@ -210,8 +215,8 @@ 'subject' => 'class', 'prefix' => 'view', 'exclude' => [ - \Filament\Widgets\AccountWidget::class, - \Filament\Widgets\FilamentInfoWidget::class, + AccountWidget::class, + FilamentInfoWidget::class, ], ], diff --git a/config/media-library.php b/config/media-library.php index d2566ac..10a3a60 100644 --- a/config/media-library.php +++ b/config/media-library.php @@ -1,5 +1,31 @@ Spatie\MediaLibrary\MediaCollections\Models\Media::class, + 'media_model' => Media::class, /* * The fully qualified class name of the media observer. */ - 'media_observer' => Spatie\MediaLibrary\MediaCollections\Models\Observers\MediaObserver::class, + 'media_observer' => MediaObserver::class, /* * When enabled, media collections will be serialised using the default @@ -59,7 +85,7 @@ * * This model is only used in Media Library Pro (https://medialibrary.pro) */ - 'temporary_upload_model' => Spatie\MediaLibraryPro\Models\TemporaryUpload::class, + 'temporary_upload_model' => TemporaryUpload::class, /* * When enabled, Media Library Pro will only process temporary uploads that were uploaded @@ -76,17 +102,17 @@ /* * This is the class that is responsible for naming generated files. */ - 'file_namer' => Spatie\MediaLibrary\Support\FileNamer\DefaultFileNamer::class, + 'file_namer' => DefaultFileNamer::class, /* * The class that contains the strategy for determining a media file's path. */ - 'path_generator' => App\MediaLibrary\CustomPathGenerator::class, + 'path_generator' => CustomPathGenerator::class, /* * The class that contains the strategy for determining how to remove files. */ - 'file_remover_class' => Spatie\MediaLibrary\Support\FileRemover\DefaultFileRemover::class, + 'file_remover_class' => DefaultFileRemover::class, /* * Here you can specify which path generator should be used for the given class. @@ -101,7 +127,7 @@ * When urls to files get generated, this class will be called. Use the default * if your files are stored locally above the site root or on s3. */ - 'url_generator' => Spatie\MediaLibrary\Support\UrlGenerator\DefaultUrlGenerator::class, + 'url_generator' => DefaultUrlGenerator::class, /* * Moves media on updating to keep path consistent. Enable it only with a custom @@ -121,34 +147,34 @@ * the optimizers that will be used by default. */ 'image_optimizers' => [ - Spatie\ImageOptimizer\Optimizers\Jpegoptim::class => [ + Jpegoptim::class => [ '-m85', // set maximum quality to 85% '--force', // ensure that progressive generation is always done also if a little bigger '--strip-all', // this strips out all text information such as comments and EXIF data '--all-progressive', // this will make sure the resulting image is a progressive one ], - Spatie\ImageOptimizer\Optimizers\Pngquant::class => [ + Pngquant::class => [ '--force', // required parameter for this package ], - Spatie\ImageOptimizer\Optimizers\Optipng::class => [ + Optipng::class => [ '-i0', // this will result in a non-interlaced, progressive scanned image '-o2', // this set the optimization level to two (multiple IDAT compression trials) '-quiet', // required parameter for this package ], - Spatie\ImageOptimizer\Optimizers\Svgo::class => [ + Svgo::class => [ '--disable=cleanupIDs', // disabling because it is known to cause troubles ], - Spatie\ImageOptimizer\Optimizers\Gifsicle::class => [ + Gifsicle::class => [ '-b', // required parameter for this package '-O3', // this produces the slowest but best results ], - Spatie\ImageOptimizer\Optimizers\Cwebp::class => [ + Cwebp::class => [ '-m 6', // for the slowest compression method in order to get the best compression. '-pass 10', // for maximizing the amount of analysis pass. '-mt', // multithreading for some speed improvements. '-q 90', // quality factor that brings the least noticeable changes. ], - Spatie\ImageOptimizer\Optimizers\Avifenc::class => [ + Avifenc::class => [ '-a cq-level=23', // constant quality level, lower values mean better quality and greater file size (0-63). '-j all', // number of jobs (worker threads, "all" uses all available cores). '--min 0', // min quantizer for color (0-63). @@ -164,12 +190,12 @@ * These generators will be used to create an image of media files. */ 'image_generators' => [ - Spatie\MediaLibrary\Conversions\ImageGenerators\Image::class, - Spatie\MediaLibrary\Conversions\ImageGenerators\Webp::class, - Spatie\MediaLibrary\Conversions\ImageGenerators\Avif::class, - Spatie\MediaLibrary\Conversions\ImageGenerators\Pdf::class, - Spatie\MediaLibrary\Conversions\ImageGenerators\Svg::class, - Spatie\MediaLibrary\Conversions\ImageGenerators\Video::class, + Image::class, + Webp::class, + Avif::class, + Pdf::class, + Svg::class, + Video::class, ], /* @@ -209,8 +235,8 @@ * your custom jobs extend the ones provided by the package. */ 'jobs' => [ - 'perform_conversions' => Spatie\MediaLibrary\Conversions\Jobs\PerformConversionsJob::class, - 'generate_responsive_images' => Spatie\MediaLibrary\ResponsiveImages\Jobs\GenerateResponsiveImagesJob::class, + 'perform_conversions' => PerformConversionsJob::class, + 'generate_responsive_images' => GenerateResponsiveImagesJob::class, ], /* @@ -218,7 +244,7 @@ * This is particularly useful when the url of the image is behind a firewall and * need to add additional flags, possibly using curl. */ - 'media_downloader' => Spatie\MediaLibrary\Downloaders\DefaultDownloader::class, + 'media_downloader' => DefaultDownloader::class, /* * When using the addMediaFromUrl method the SSL is verified by default. @@ -255,7 +281,7 @@ * * https://docs.spatie.be/laravel-medialibrary/v9/advanced-usage/generating-responsive-images */ - 'width_calculator' => Spatie\MediaLibrary\ResponsiveImages\WidthCalculator\FileSizeOptimizedWidthCalculator::class, + 'width_calculator' => FileSizeOptimizedWidthCalculator::class, /* * By default rendering media to a responsive image will add some javascript and a tiny placeholder. @@ -268,7 +294,7 @@ * This class will generate the tiny placeholder used for progressive image loading. By default * the media library will use a tiny blurred jpg image. */ - 'tiny_placeholder_generator' => Spatie\MediaLibrary\ResponsiveImages\TinyPlaceholderGenerator\Blurred::class, + 'tiny_placeholder_generator' => Blurred::class, ], /* diff --git a/config/permission.php b/config/permission.php index f39f6b5..85b8832 100644 --- a/config/permission.php +++ b/config/permission.php @@ -1,5 +1,9 @@ [ @@ -13,7 +17,7 @@ * `Spatie\Permission\Contracts\Permission` contract. */ - 'permission' => Spatie\Permission\Models\Permission::class, + 'permission' => Permission::class, /* * When using the "HasRoles" trait from this package, we need to know which @@ -24,7 +28,7 @@ * `Spatie\Permission\Contracts\Role` contract. */ - 'role' => Spatie\Permission\Models\Role::class, + 'role' => Role::class, ], @@ -136,7 +140,7 @@ /* * The class to use to resolve the permissions team id */ - 'team_resolver' => \Spatie\Permission\DefaultTeamResolver::class, + 'team_resolver' => DefaultTeamResolver::class, /* * Passport Client Credentials Grant @@ -183,7 +187,7 @@ * When permissions or roles are updated the cache is flushed automatically. */ - 'expiration_time' => \DateInterval::createFromDateString('24 hours'), + 'expiration_time' => DateInterval::createFromDateString('24 hours'), /* * The cache key used to store all permissions. diff --git a/config/settings.php b/config/settings.php index 1065503..326cc0d 100644 --- a/config/settings.php +++ b/config/settings.php @@ -1,5 +1,12 @@ [ 'database' => [ - 'type' => Spatie\LaravelSettings\SettingsRepositories\DatabaseSettingsRepository::class, + 'type' => DatabaseSettingsRepository::class, 'model' => null, 'table' => null, 'connection' => null, ], 'redis' => [ - 'type' => Spatie\LaravelSettings\SettingsRepositories\RedisSettingsRepository::class, + 'type' => RedisSettingsRepository::class, 'connection' => null, 'prefix' => null, ], @@ -72,10 +79,10 @@ * your settings class isn't a default PHP type. */ 'global_casts' => [ - DateTimeInterface::class => Spatie\LaravelSettings\SettingsCasts\DateTimeInterfaceCast::class, - DateTimeZone::class => Spatie\LaravelSettings\SettingsCasts\DateTimeZoneCast::class, + DateTimeInterface::class => DateTimeInterfaceCast::class, + DateTimeZone::class => DateTimeZoneCast::class, // Spatie\DataTransferObject\DataTransferObject::class => Spatie\LaravelSettings\SettingsCasts\DtoCast::class, - Spatie\LaravelData\Data::class => Spatie\LaravelSettings\SettingsCasts\DataCast::class, + Data::class => DataCast::class, ], /* diff --git a/tests/Unit/Models/ClassificationTest.php b/tests/Unit/Models/ClassificationTest.php index 36921bd..32cc2fb 100644 --- a/tests/Unit/Models/ClassificationTest.php +++ b/tests/Unit/Models/ClassificationTest.php @@ -2,6 +2,7 @@ use App\Enums\IsActive; use App\Models\Classification; +use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,13 +26,13 @@ it('has sub classifications relationship', function () { $classification = Classification::factory()->create(); - expect($classification->subClassifications())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasMany::class); + expect($classification->subClassifications())->toBeInstanceOf(HasMany::class); }); it('has content recaps relationship', function () { $classification = Classification::factory()->create(); - expect($classification->contentRecaps())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasMany::class); + expect($classification->contentRecaps())->toBeInstanceOf(HasMany::class); }); it('scopes active classifications', function () { diff --git a/tests/Unit/Models/CompanyTest.php b/tests/Unit/Models/CompanyTest.php index c2b7cb9..97cf12a 100644 --- a/tests/Unit/Models/CompanyTest.php +++ b/tests/Unit/Models/CompanyTest.php @@ -1,6 +1,9 @@ create(); - expect($company->user())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($company->user())->toBeInstanceOf(BelongsTo::class); }); it('has one partner media', function () { $company = Company::factory()->create(); - expect($company->partnerMedia())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasOne::class); + expect($company->partnerMedia())->toBeInstanceOf(HasOne::class); }); it('has many journalists through partner media', function () { $company = Company::factory()->create(); - expect($company->journalists())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasManyThrough::class); + expect($company->journalists())->toBeInstanceOf(HasManyThrough::class); }); }); diff --git a/tests/Unit/Models/ContentRecapTest.php b/tests/Unit/Models/ContentRecapTest.php index 7748c3f..ca5a7f6 100644 --- a/tests/Unit/Models/ContentRecapTest.php +++ b/tests/Unit/Models/ContentRecapTest.php @@ -2,6 +2,7 @@ use App\Enums\ContentType; use App\Models\ContentRecap; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,7 +26,7 @@ it('belongs to classification', function () { $recap = ContentRecap::factory()->create(); - expect($recap->classification())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($recap->classification())->toBeInstanceOf(BelongsTo::class); }); it('casts type to content type enum', function () { diff --git a/tests/Unit/Models/IssueManagementTest.php b/tests/Unit/Models/IssueManagementTest.php index 40caee6..3def49e 100644 --- a/tests/Unit/Models/IssueManagementTest.php +++ b/tests/Unit/Models/IssueManagementTest.php @@ -2,6 +2,7 @@ use App\Enums\IssueSentiment; use App\Models\IssueManagement; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -29,31 +30,31 @@ it('belongs to location', function () { $issue = IssueManagement::factory()->create(); - expect($issue->location())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($issue->location())->toBeInstanceOf(BelongsTo::class); }); it('belongs to sub location', function () { $issue = IssueManagement::factory()->create(); - expect($issue->subLocation())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($issue->subLocation())->toBeInstanceOf(BelongsTo::class); }); it('belongs to classification', function () { $issue = IssueManagement::factory()->create(); - expect($issue->classification())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($issue->classification())->toBeInstanceOf(BelongsTo::class); }); it('belongs to sub classification', function () { $issue = IssueManagement::factory()->create(); - expect($issue->subClassification())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($issue->subClassification())->toBeInstanceOf(BelongsTo::class); }); it('belongs to media monitoring', function () { $issue = IssueManagement::factory()->create(); - expect($issue->mediaMonitoring())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($issue->mediaMonitoring())->toBeInstanceOf(BelongsTo::class); }); it('casts sentiment enums correctly', function () { diff --git a/tests/Unit/Models/JournalistTest.php b/tests/Unit/Models/JournalistTest.php index 00e737f..4346f60 100644 --- a/tests/Unit/Models/JournalistTest.php +++ b/tests/Unit/Models/JournalistTest.php @@ -1,6 +1,7 @@ create(); - expect($journalist->partnerMedia())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($journalist->partnerMedia())->toBeInstanceOf(BelongsTo::class); }); }); diff --git a/tests/Unit/Models/LocationTest.php b/tests/Unit/Models/LocationTest.php index 3fe1ad6..96ffdbd 100644 --- a/tests/Unit/Models/LocationTest.php +++ b/tests/Unit/Models/LocationTest.php @@ -2,6 +2,7 @@ use App\Enums\IsActive; use App\Models\Location; +use Illuminate\Database\Eloquent\Relations\HasMany; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,7 +26,7 @@ it('has sub locations relationship', function () { $location = Location::factory()->create(); - expect($location->subLocations())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasMany::class); + expect($location->subLocations())->toBeInstanceOf(HasMany::class); }); it('casts is_active to enum', function () { diff --git a/tests/Unit/Models/MediaMonitoringTest.php b/tests/Unit/Models/MediaMonitoringTest.php index 83ed270..0f3a25f 100644 --- a/tests/Unit/Models/MediaMonitoringTest.php +++ b/tests/Unit/Models/MediaMonitoringTest.php @@ -2,6 +2,8 @@ use App\Models\MediaMonitoring; use App\Models\Theme; +use Illuminate\Database\Eloquent\Relations\BelongsToMany; +use Illuminate\Database\Eloquent\Relations\HasOne; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -27,13 +29,13 @@ it('has themes relationship', function () { $mediaMonitoring = MediaMonitoring::factory()->create(); - expect($mediaMonitoring->themes())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsToMany::class); + expect($mediaMonitoring->themes())->toBeInstanceOf(BelongsToMany::class); }); it('has issue management relationship', function () { $mediaMonitoring = MediaMonitoring::factory()->create(); - expect($mediaMonitoring->issueManagement())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\HasOne::class); + expect($mediaMonitoring->issueManagement())->toBeInstanceOf(HasOne::class); }); it('can attach themes', function () { diff --git a/tests/Unit/Models/MediaMonitoringThemeTest.php b/tests/Unit/Models/MediaMonitoringThemeTest.php index 5b6f92d..2c1d320 100644 --- a/tests/Unit/Models/MediaMonitoringThemeTest.php +++ b/tests/Unit/Models/MediaMonitoringThemeTest.php @@ -1,6 +1,7 @@ create(); - expect($pivot->mediaMonitoring())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($pivot->mediaMonitoring())->toBeInstanceOf(BelongsTo::class); }); it('belongs to theme', function () { $pivot = MediaMonitoringTheme::factory()->create(); - expect($pivot->theme())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($pivot->theme())->toBeInstanceOf(BelongsTo::class); }); }); diff --git a/tests/Unit/Models/PartnerMediaTest.php b/tests/Unit/Models/PartnerMediaTest.php index b7c3f54..ba665f7 100644 --- a/tests/Unit/Models/PartnerMediaTest.php +++ b/tests/Unit/Models/PartnerMediaTest.php @@ -3,6 +3,7 @@ use App\Enums\MediaClassification; use App\Enums\MediaType; use App\Models\PartnerMedia; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -26,7 +27,7 @@ it('belongs to company', function () { $partner = PartnerMedia::factory()->create(); - expect($partner->company())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($partner->company())->toBeInstanceOf(BelongsTo::class); }); it('casts type to media type enum', function () { diff --git a/tests/Unit/Models/SubClassificationTest.php b/tests/Unit/Models/SubClassificationTest.php index ee511f5..571f2df 100644 --- a/tests/Unit/Models/SubClassificationTest.php +++ b/tests/Unit/Models/SubClassificationTest.php @@ -2,6 +2,7 @@ use App\Enums\IsActive; use App\Models\SubClassification; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,7 +26,7 @@ it('belongs to classification', function () { $subClassification = SubClassification::factory()->create(); - expect($subClassification->classification())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($subClassification->classification())->toBeInstanceOf(BelongsTo::class); }); it('casts is_active to enum', function () { diff --git a/tests/Unit/Models/SubLocationTest.php b/tests/Unit/Models/SubLocationTest.php index 42d054c..527f6ea 100644 --- a/tests/Unit/Models/SubLocationTest.php +++ b/tests/Unit/Models/SubLocationTest.php @@ -2,6 +2,7 @@ use App\Enums\IsActive; use App\Models\SubLocation; +use Illuminate\Database\Eloquent\Relations\BelongsTo; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,7 +26,7 @@ it('belongs to location', function () { $subLocation = SubLocation::factory()->create(); - expect($subLocation->location())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsTo::class); + expect($subLocation->location())->toBeInstanceOf(BelongsTo::class); }); it('casts is_active to enum', function () { diff --git a/tests/Unit/Models/ThemeTest.php b/tests/Unit/Models/ThemeTest.php index 7568678..3f52795 100644 --- a/tests/Unit/Models/ThemeTest.php +++ b/tests/Unit/Models/ThemeTest.php @@ -2,6 +2,7 @@ use App\Enums\IsActive; use App\Models\Theme; +use Illuminate\Database\Eloquent\Relations\BelongsToMany; use Illuminate\Foundation\Testing\RefreshDatabase; uses(RefreshDatabase::class); @@ -25,7 +26,7 @@ it('has media monitorings relationship', function () { $theme = Theme::factory()->create(); - expect($theme->mediaMonitorings())->toBeInstanceOf(\Illuminate\Database\Eloquent\Relations\BelongsToMany::class); + expect($theme->mediaMonitorings())->toBeInstanceOf(BelongsToMany::class); }); it('scopes active themes', function () {