createMock(ConfigLoaderInterface::class); $config = new TimesheetConfiguration($loader, ['markdown_content' => true]); $sut = new MarkdownExtension(new Markdown(), $config); $filters = $sut->getFilters(); $this->assertCount(3, $filters); $this->assertEquals('md2html', $filters[0]->getName()); $this->assertEquals('desc2html', $filters[1]->getName()); $this->assertEquals('comment2html', $filters[2]->getName()); } public function testMarkdownToHtml() { $loader = $this->createMock(ConfigLoaderInterface::class); $config = new TimesheetConfiguration($loader, ['markdown_content' => true]); $sut = new MarkdownExtension(new Markdown(), $config); $this->assertEquals('

test

', $sut->markdownToHtml('*test*')); $this->assertEquals('

foobar

', $sut->markdownToHtml('# foobar')); } public function testTimesheetContent() { $loader = $this->createMock(ConfigLoaderInterface::class); $config = new TimesheetConfiguration($loader, ['markdown_content' => false]); $sut = new MarkdownExtension(new Markdown(), $config); $this->assertEquals( "- test
\n- foo", $sut->timesheetContent("- test\n- foo") ); $this->assertEquals('', $sut->timesheetContent(null)); $this->assertEquals('', $sut->timesheetContent('')); $config = new TimesheetConfiguration($loader, ['markdown_content' => true]); $sut = new MarkdownExtension(new Markdown(), $config); $this->assertEquals( "\n

foo bar

", $sut->timesheetContent("- test\n- foo\n\nfoo __bar__") ); } public function testCommentContent() { $loader = $this->createMock(ConfigLoaderInterface::class); $config = new TimesheetConfiguration($loader, ['markdown_content' => false]); $sut = new MarkdownExtension(new Markdown(), $config); $this->assertEquals( "

- test
\n- foo

", $sut->commentContent("- test\n- foo", true) ); $this->assertEquals( "- test\n- foo", $sut->commentContent("- test\n- foo", false) ); $loremIpsum = 'Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.'; $this->assertEquals('', $sut->commentContent(null)); $this->assertEquals('', $sut->commentContent('')); $this->assertEquals('

' . $loremIpsum . '

', $sut->commentContent($loremIpsum, true)); $this->assertEquals('Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut l …', $sut->commentContent($loremIpsum)); $config = new TimesheetConfiguration($loader, ['markdown_content' => true]); $sut = new MarkdownExtension(new Markdown(), $config); $this->assertEquals( "\n

foo bar

", $sut->commentContent("- test\n- foo\n\nfoo __bar__") ); } }