/** * @dataProvider getHtmlData * @covers HtmlFormatter::getText */ public function testTransform($input, $expected, $callback = false) { $input = self::normalize($input); $formatter = new HtmlFormatter(HtmlFormatter::wrapHTML($input)); if ($callback) { $callback($formatter); } $formatter->filterContent(); $html = $formatter->getText(); $this->assertValidHtmlSnippet($html); $this->assertEquals(self::normalize($expected), self::normalize($html)); }
/** * @dataProvider getHtmlData * * @param string $input * @param string $expectedText * @param array $expectedRemoved * @param callable|bool $callback */ public function testTransform($input, $expectedText, $expectedRemoved = array(), $callback = false) { $input = self::normalize($input); $formatter = new HtmlFormatter(HtmlFormatter::wrapHTML($input)); if ($callback) { $callback($formatter); } $removedElements = $formatter->filterContent(); $html = $formatter->getText(); $removed = array(); foreach ($removedElements as $removedElement) { $removed[] = self::normalize($formatter->getText($removedElement)); } $expectedRemoved = array_map('self::normalize', $expectedRemoved); $this->assertValidHtmlSnippet($html); $this->assertEquals(self::normalize($expectedText), self::normalize($html)); $this->assertEquals(asort($expectedRemoved), asort($removed)); }