parser = new BrevoWebookParser(); } public function testCanExtractDataWithRegexUsingPipedFormat(): void { // GIVEN $rawHtml = <<parser->parseRawHtml($rawHtml); // THEN $this->assertInstanceOf(BrevoWebHookDto::class, $dto); $this->assertEquals('LDC Service', $dto->brand); $this->assertEquals($rawHtml, $dto->plainTextContent); } public function testHandlesMissingFieldsGracefully(): void { // GIVEN $rawHtml = "

Contenu classique sans le formalisme du tableau markdown

"; // WHEN $dto = $this->parser->parseRawHtml($rawHtml); // THEN $this->assertNull($dto->brand); $this->assertEquals("Contenu classique sans le formalisme du tableau markdown", $dto->plainTextContent); } }