* @group github
 */
class GithubMarkdownTest extends BaseMarkdownTest
{
	public function createMarkdown()
	{
		return new GithubMarkdown();
	}
	public function getDataPaths()
	{
		return [
			'markdown-data' => __DIR__ . '/markdown-data',
			'github-data' => __DIR__ . '/github-data',
		];
	}
	public function testNewlines()
	{
		$markdown = $this->createMarkdown();
		$this->assertEquals("This is text
\nnewline\nnewline.", $markdown->parseParagraph("This is text  \nnewline\nnewline."));
		$markdown->enableNewlines = true;
		$this->assertEquals("This is text
\nnewline
\nnewline.", $markdown->parseParagraph("This is text  \nnewline\nnewline."));
		$this->assertEquals("
This is text
\nnewline
\nnewline.
0
\n", $parser->parse("0")); } public function testAutoLinkLabelingWithEncodedUrl() { $parser = $this->createMarkdown(); $utfText = "\xe3\x81\x82\xe3\x81\x84\xe3\x81\x86\xe3\x81\x88\xe3\x81\x8a"; $utfNaturalUrl = "http://example.com/" . $utfText; $utfEncodedUrl = "http://example.com/" . urlencode($utfText); $eucEncodedUrl = "http://example.com/" . urlencode(mb_convert_encoding($utfText, 'EUC-JP', 'UTF-8')); $this->assertStringEndsWith(">{$utfNaturalUrl}", $parser->parseParagraph($utfNaturalUrl), "Natural UTF-8 URL needs no conversion."); $this->assertStringEndsWith(">{$utfNaturalUrl}", $parser->parseParagraph($utfEncodedUrl), "Encoded UTF-8 URL will be converted to readable format."); $this->assertStringEndsWith(">{$eucEncodedUrl}", $parser->parseParagraph($eucEncodedUrl), "Non UTF-8 URL should never be converted."); // See: \cebe\markdown\inline\UrlLinkTrait::renderAutoUrl } }