35 lines
1.1 KiB
PHP
35 lines
1.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use FluxCms\Core\Models\CmsContent;
|
|
use Illuminate\Foundation\Testing\RefreshDatabase;
|
|
|
|
uses(RefreshDatabase::class);
|
|
|
|
test('cms legal seeder legt vier rechtliche seiten an', function () {
|
|
$this->seed(\Database\Seeders\CmsLegalSeeder::class);
|
|
|
|
expect(CmsContent::query()->where('group', 'legal')->count())->toBe(4);
|
|
|
|
foreach (['impressum', 'privacy', 'terms', 'cookie_policy'] as $key) {
|
|
$row = CmsContent::query()->where('group', 'legal')->where('key', $key)->first();
|
|
expect($row)->not->toBeNull()
|
|
->and($row->type)->toBe('json');
|
|
|
|
$de = $row->getTranslation('value', 'de');
|
|
expect($de)->toBeArray()
|
|
->toHaveKeys(['title', 'meta_title', 'subtitle', 'back_link', 'content'])
|
|
->and($de['title'])->not->toBeEmpty();
|
|
}
|
|
});
|
|
|
|
test('legal_page liefert cms daten wenn vorhanden', function () {
|
|
$this->seed(\Database\Seeders\CmsLegalSeeder::class);
|
|
|
|
$legal = legal_page('impressum');
|
|
|
|
expect($legal)->toBeArray()
|
|
->toHaveKey('content')
|
|
->and($legal['title'])->not->toBeEmpty();
|
|
});
|