Contenu HTML de la page

'; // WHEN $input = new UpdatePageInput( page: $page, seo: $seo, title: $title, content: $content, ); // THEN expect($input->page)->toBe($page) ->and($input->seo)->toBe($seo) ->and($input->title)->toBe($title) ->and($input->content)->toBe($content); }); it('allows null title', function (): void { // GIVEN $page = new Page(); $seo = new SeoMetadata('Titre SEO valide', 'Description SEO valide'); $content = '

Contenu HTML

'; // WHEN $input = new UpdatePageInput( page: $page, seo: $seo, title: null, content: $content, ); // THEN expect($input->title)->toBeNull(); }); it('throws when title is empty string', function (): void { // GIVEN $page = new Page(); $seo = new SeoMetadata('Titre SEO valide', 'Description SEO valide'); // WHEN expect(fn () => new UpdatePageInput( page: $page, seo: $seo, title: ' ', content: '

Contenu

', )) // THEN ->toThrow(\InvalidArgumentException::class); }); it('throws when title exceeds 255 characters', function (): void { // GIVEN $page = new Page(); $seo = new SeoMetadata('Titre SEO valide', 'Description SEO valide'); $longTitle = str_repeat('a', 256); // WHEN expect(fn () => new UpdatePageInput( page: $page, seo: $seo, title: $longTitle, content: '

Contenu

', )) // THEN ->toThrow(\InvalidArgumentException::class); }); it('throws when content is empty', function (): void { // GIVEN $page = new Page(); $seo = new SeoMetadata('Titre SEO valide', 'Description SEO valide'); // WHEN expect(fn () => new UpdatePageInput( page: $page, seo: $seo, title: 'Titre', content: ' ', )) // THEN ->toThrow(\InvalidArgumentException::class); }); });