/** * @dataProvider getRenderContentEditableTestData * * @param string $expectedText * @param string $text * @param string $name * @param array $options * @param bool $isAuthorized * @param string $message */ public function testRenderContentEditable($expectedText, $text, $name, $options, $isAuthorized, $message) { $content = new Content(); $content->setId(1)->setName($name)->setText($text)->setLocale($options['locale']); $this->manager->method('get')->with($name, $options['locale'], $text)->willReturn($content); $this->authorizationChecker->method('isGranted')->with('ROLE_ADMIN')->willReturn($isAuthorized); $this->editor->method('renderContent')->with($content, $options)->willReturn(sprintf('editable_%s', $text)); $rendered = $this->extension->render($text, $name, $options); $this->assertSame($expectedText, $rendered, $message); }
/** * @return array */ public function getRenderContentTestData() { $content = new Content(); $content->setId(1)->setText('Example text')->setLocale('en'); return [['Example text', $content, ['separately' => true], 'The text should not be modified when editable separately.'], ['<span class="ivoaz-content-editable" data-ivoaz-content-editable-id="1">Example text</span>', clone $content, [], 'The text was not wrapped correctly.']]; }