From c6aa42773a17d53b4572488967b99666ab97ef97 Mon Sep 17 00:00:00 2001
From: Andrew Manning
sparse:
+<div> +<div class="inner"> +content +</div> +</div>
+paragraph
+<style type="text/css"> +p { +color: red; +} +</style>
+comment
+<!-- html comment -->
+EXPECTED_HTML; + $parsedownWithNoMarkup = new Parsedown(); + $parsedownWithNoMarkup->setMarkupEscaped(true); + $this->assertEquals($expectedHtml, $parsedownWithNoMarkup->text($markdownWithHtml)); + } + + public function testLateStaticBinding() + { + include 'test/TestParsedown.php'; + + $parsedown = Parsedown::instance(); + $this->assertInstanceOf('Parsedown', $parsedown); + + // After instance is already called on Parsedown + // subsequent calls with the same arguments return the same instance + $sameParsedown = TestParsedown::instance(); + $this->assertInstanceOf('Parsedown', $sameParsedown); + $this->assertSame($parsedown, $sameParsedown); + + $testParsedown = TestParsedown::instance('test late static binding'); + $this->assertInstanceOf('TestParsedown', $testParsedown); + + $sameInstanceAgain = TestParsedown::instance('test late static binding'); + $this->assertSame($testParsedown, $sameInstanceAgain); + } +} diff --git a/library/parsedown/test/TestParsedown.php b/library/parsedown/test/TestParsedown.php new file mode 100644 index 000000000..7024dfbcc --- /dev/null +++ b/library/parsedown/test/TestParsedown.php @@ -0,0 +1,5 @@ + + +header 1 | +header 2 | +header 2 | +
---|---|---|
cell 1.1 | +cell 1.2 | +cell 1.3 | +
cell 2.1 | +cell 2.2 | +cell 2.3 | +
####### not a heading
+#
\ No newline at end of file diff --git a/library/parsedown/test/data/atx_heading.md b/library/parsedown/test/data/atx_heading.md new file mode 100644 index 000000000..ad97b44ca --- /dev/null +++ b/library/parsedown/test/data/atx_heading.md @@ -0,0 +1,17 @@ +# h1 + +## h2 + +### h3 + +#### h4 + +##### h5 + +###### h6 + +####### not a heading + +# closed h1 # + +# \ No newline at end of file diff --git a/library/parsedown/test/data/automatic_link.html b/library/parsedown/test/data/automatic_link.html new file mode 100644 index 000000000..50a94ba0f --- /dev/null +++ b/library/parsedown/test/data/automatic_link.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/library/parsedown/test/data/automatic_link.md b/library/parsedown/test/data/automatic_link.md new file mode 100644 index 000000000..08d3bf46a --- /dev/null +++ b/library/parsedown/test/data/automatic_link.md @@ -0,0 +1 @@ +paragraph
+<?php
+
+$message = 'Hello World!';
+echo $message;
+> not a quote
+- not a list item
+[not a reference]: http://foo.com
\ No newline at end of file
diff --git a/library/parsedown/test/data/code_block.md b/library/parsedown/test/data/code_block.md
new file mode 100644
index 000000000..2cfc953cc
--- /dev/null
+++ b/library/parsedown/test/data/code_block.md
@@ -0,0 +1,10 @@
+ not a quote
+ - not a list item
+ [not a reference]: http://foo.com
\ No newline at end of file
diff --git a/library/parsedown/test/data/code_span.html b/library/parsedown/test/data/code_span.html
new file mode 100644
index 000000000..5c4c231e3
--- /dev/null
+++ b/library/parsedown/test/data/code_span.html
@@ -0,0 +1,6 @@
+a code span
this is also a codespan
trailing text
and look at this one!
single backtick in a code span: `
backtick-delimited string in a code span: `foo`
sth `` sth
+\ No newline at end of file diff --git a/library/parsedown/test/data/compound_blockquote.md b/library/parsedown/test/data/compound_blockquote.md new file mode 100644 index 000000000..80c4aed16 --- /dev/null +++ b/library/parsedown/test/data/compound_blockquote.md @@ -0,0 +1,10 @@ +> header +> ------ +> +> paragraph +> +> - li +> +> --- +> +> paragraph \ No newline at end of file diff --git a/library/parsedown/test/data/compound_emphasis.html b/library/parsedown/test/data/compound_emphasis.html new file mode 100644 index 000000000..178dd54ba --- /dev/null +++ b/library/parsedown/test/data/compound_emphasis.html @@ -0,0 +1,2 @@ +header
+paragraph
++
+- li
+
+paragraph
+
code
code
code
code
code
paragraph
+paragraph
+paragraph
+++quote
+
em strong
+em strong strong
+strong em strong
+strong em strong strong
+em strong
+em strong strong
+strong em strong
+strong em strong strong
\ No newline at end of file diff --git a/library/parsedown/test/data/em_strong.md b/library/parsedown/test/data/em_strong.md new file mode 100644 index 000000000..9abeb3fd4 --- /dev/null +++ b/library/parsedown/test/data/em_strong.md @@ -0,0 +1,15 @@ +___em strong___ + +___em strong_ strong__ + +__strong _em strong___ + +__strong _em strong_ strong__ + +***em strong*** + +***em strong* strong** + +**strong *em strong*** + +**strong *em strong* strong** \ No newline at end of file diff --git a/library/parsedown/test/data/email.html b/library/parsedown/test/data/email.html new file mode 100644 index 000000000..c40759c96 --- /dev/null +++ b/library/parsedown/test/data/email.html @@ -0,0 +1 @@ +my email is me@example.com
\ No newline at end of file diff --git a/library/parsedown/test/data/email.md b/library/parsedown/test/data/email.md new file mode 100644 index 000000000..26b7b6cc5 --- /dev/null +++ b/library/parsedown/test/data/email.md @@ -0,0 +1 @@ +my email isunderscore, asterisk, one two, three four, a, b
+strong and em and strong and em
+line +line +line
+this_is_not_an_emphasis
+an empty emphasis __ ** is not an emphasis
+*mixed *double and single asterisk** spans
\ No newline at end of file diff --git a/library/parsedown/test/data/emphasis.md b/library/parsedown/test/data/emphasis.md new file mode 100644 index 000000000..85b9d2299 --- /dev/null +++ b/library/parsedown/test/data/emphasis.md @@ -0,0 +1,13 @@ +_underscore_, *asterisk*, _one two_, *three four*, _a_, *b* + +**strong** and *em* and **strong** and *em* + +_line +line +line_ + +this_is_not_an_emphasis + +an empty emphasis __ ** is not an emphasis + +*mixed **double and* single asterisk** spans \ No newline at end of file diff --git a/library/parsedown/test/data/escaping.html b/library/parsedown/test/data/escaping.html new file mode 100644 index 000000000..ab1c41fdc --- /dev/null +++ b/library/parsedown/test/data/escaping.html @@ -0,0 +1,6 @@ +escaped *emphasis*.
+escaped \*emphasis\* in a code span
escaped \*emphasis\* in a code block
+\ ` * _ { } [ ] ( ) > # + - . !
+one_two one_two
+one*two one*two
\ No newline at end of file diff --git a/library/parsedown/test/data/escaping.md b/library/parsedown/test/data/escaping.md new file mode 100644 index 000000000..9f174e98c --- /dev/null +++ b/library/parsedown/test/data/escaping.md @@ -0,0 +1,11 @@ +escaped \*emphasis\*. + +`escaped \*emphasis\* in a code span` + + escaped \*emphasis\* in a code block + +\\ \` \* \_ \{ \} \[ \] \( \) \> \# \+ \- \. \! + +_one\_two_ __one\_two__ + +*one\*two* **one\*two** \ No newline at end of file diff --git a/library/parsedown/test/data/fenced_code_block.html b/library/parsedown/test/data/fenced_code_block.html new file mode 100644 index 000000000..8bdabba96 --- /dev/null +++ b/library/parsedown/test/data/fenced_code_block.html @@ -0,0 +1,6 @@ +<?php
+
+$message = 'fenced code block';
+echo $message;
+tilde
+echo 'language identifier';
\ No newline at end of file
diff --git a/library/parsedown/test/data/fenced_code_block.md b/library/parsedown/test/data/fenced_code_block.md
new file mode 100644
index 000000000..cbed8ebb5
--- /dev/null
+++ b/library/parsedown/test/data/fenced_code_block.md
@@ -0,0 +1,14 @@
+```
+
+paragraph
+ +paragraph
\ No newline at end of file diff --git a/library/parsedown/test/data/html_comment.md b/library/parsedown/test/data/html_comment.md new file mode 100644 index 000000000..6ddfdb441 --- /dev/null +++ b/library/parsedown/test/data/html_comment.md @@ -0,0 +1,8 @@ + + +paragraph + + + +paragraph \ No newline at end of file diff --git a/library/parsedown/test/data/html_entity.html b/library/parsedown/test/data/html_entity.html new file mode 100644 index 000000000..4d23e3cd4 --- /dev/null +++ b/library/parsedown/test/data/html_entity.html @@ -0,0 +1 @@ +& © {
\ No newline at end of file diff --git a/library/parsedown/test/data/html_entity.md b/library/parsedown/test/data/html_entity.md new file mode 100644 index 000000000..ff545ea5c --- /dev/null +++ b/library/parsedown/test/data/html_entity.md @@ -0,0 +1 @@ +& © { \ No newline at end of file diff --git a/library/parsedown/test/data/image_reference.html b/library/parsedown/test/data/image_reference.html new file mode 100644 index 000000000..67fbd2c86 --- /dev/null +++ b/library/parsedown/test/data/image_reference.html @@ -0,0 +1,2 @@ + +![missing reference]
\ No newline at end of file diff --git a/library/parsedown/test/data/image_reference.md b/library/parsedown/test/data/image_reference.md new file mode 100644 index 000000000..1e11d9479 --- /dev/null +++ b/library/parsedown/test/data/image_reference.md @@ -0,0 +1,5 @@ +![Markdown Logo][image] + +[image]: /md.png + +![missing reference] \ No newline at end of file diff --git a/library/parsedown/test/data/image_title.html b/library/parsedown/test/data/image_title.html new file mode 100644 index 000000000..957c9505c --- /dev/null +++ b/library/parsedown/test/data/image_title.html @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/library/parsedown/test/data/image_title.md b/library/parsedown/test/data/image_title.md new file mode 100644 index 000000000..7ce2849a5 --- /dev/null +++ b/library/parsedown/test/data/image_title.md @@ -0,0 +1,3 @@ +![alt](/md.png "title") + +![blank title](/md.png "") \ No newline at end of file diff --git a/library/parsedown/test/data/implicit_reference.html b/library/parsedown/test/data/implicit_reference.html new file mode 100644 index 000000000..24b51c1b0 --- /dev/null +++ b/library/parsedown/test/data/implicit_reference.html @@ -0,0 +1,4 @@ +an implicit reference link
+an implicit reference link with an empty link definition
+an implicit reference link followed by another
+an explicit reference link with a title
\ No newline at end of file diff --git a/library/parsedown/test/data/implicit_reference.md b/library/parsedown/test/data/implicit_reference.md new file mode 100644 index 000000000..f850df964 --- /dev/null +++ b/library/parsedown/test/data/implicit_reference.md @@ -0,0 +1,13 @@ +an [implicit] reference link + +[implicit]: http://example.com + +an [implicit][] reference link with an empty link definition + +an [implicit][] reference link followed by [another][] + +[another]: http://cnn.com + +an [explicit][example] reference link with a title + +[example]: http://example.com "Example" \ No newline at end of file diff --git a/library/parsedown/test/data/inline_link.html b/library/parsedown/test/data/inline_link.html new file mode 100644 index 000000000..5ad564aa3 --- /dev/null +++ b/library/parsedown/test/data/inline_link.html @@ -0,0 +1,6 @@ + +link with parentheses in URL
+(link) in parentheses
+ + + \ No newline at end of file diff --git a/library/parsedown/test/data/inline_link.md b/library/parsedown/test/data/inline_link.md new file mode 100644 index 000000000..6bac0b35e --- /dev/null +++ b/library/parsedown/test/data/inline_link.md @@ -0,0 +1,11 @@ +[link](http://example.com) + +[link](/url-(parentheses)) with parentheses in URL + +([link](/index.php)) in parentheses + +[`link`](http://example.com) + +[![MD Logo](http://parsedown.org/md.png)](http://example.com) + +[![MD Logo](http://parsedown.org/md.png) and text](http://example.com) \ No newline at end of file diff --git a/library/parsedown/test/data/inline_link_title.html b/library/parsedown/test/data/inline_link_title.html new file mode 100644 index 000000000..ecdfd03da --- /dev/null +++ b/library/parsedown/test/data/inline_link_title.html @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/library/parsedown/test/data/inline_link_title.md b/library/parsedown/test/data/inline_link_title.md new file mode 100644 index 000000000..6e1c5af9b --- /dev/null +++ b/library/parsedown/test/data/inline_link_title.md @@ -0,0 +1,11 @@ +[single quotes](http://example.com 'Title') + +[double quotes](http://example.com "Title") + +[single quotes blank](http://example.com '') + +[double quotes blank](http://example.com "") + +[space](http://example.com "2 Words") + +[parentheses](http://example.com/url-(parentheses) "Title") \ No newline at end of file diff --git a/library/parsedown/test/data/inline_title.html b/library/parsedown/test/data/inline_title.html new file mode 100644 index 000000000..bbab93b6c --- /dev/null +++ b/library/parsedown/test/data/inline_title.html @@ -0,0 +1 @@ +single quotes and double quotes
\ No newline at end of file diff --git a/library/parsedown/test/data/inline_title.md b/library/parsedown/test/data/inline_title.md new file mode 100644 index 000000000..cb09344a1 --- /dev/null +++ b/library/parsedown/test/data/inline_title.md @@ -0,0 +1 @@ +[single quotes](http://example.com 'Example') and [double quotes](http://example.com "Example") \ No newline at end of file diff --git a/library/parsedown/test/data/lazy_blockquote.html b/library/parsedown/test/data/lazy_blockquote.html new file mode 100644 index 000000000..0a2a2aaf9 --- /dev/null +++ b/library/parsedown/test/data/lazy_blockquote.html @@ -0,0 +1,6 @@ ++\ No newline at end of file diff --git a/library/parsedown/test/data/lazy_blockquote.md b/library/parsedown/test/data/lazy_blockquote.md new file mode 100644 index 000000000..48f645f94 --- /dev/null +++ b/library/parsedown/test/data/lazy_blockquote.md @@ -0,0 +1,5 @@ +> quote +the rest of it + +> another paragraph +the rest of it \ No newline at end of file diff --git a/library/parsedown/test/data/lazy_list.html b/library/parsedown/test/data/lazy_list.html new file mode 100644 index 000000000..1a5199249 --- /dev/null +++ b/library/parsedown/test/data/lazy_list.html @@ -0,0 +1,4 @@ +quote +the rest of it
+another paragraph +the rest of it
+
line
+line
li
+line +line
++_adopted child_ ++
outside
\ No newline at end of file diff --git a/library/parsedown/test/data/nested_block-level_html.md b/library/parsedown/test/data/nested_block-level_html.md new file mode 100644 index 000000000..5e01e1097 --- /dev/null +++ b/library/parsedown/test/data/nested_block-level_html.md @@ -0,0 +1,11 @@ ++_adopted child_ ++
repeating numbers:
+large numbers:
+paragraph
+paragraph
+li
+double quotes and single quotes and parentheses
+[invalid title]: http://example.com example title
\ No newline at end of file diff --git a/library/parsedown/test/data/reference_title.md b/library/parsedown/test/data/reference_title.md new file mode 100644 index 000000000..43cb21708 --- /dev/null +++ b/library/parsedown/test/data/reference_title.md @@ -0,0 +1,6 @@ +[double quotes] and [single quotes] and [parentheses] + +[double quotes]: http://example.com "example title" +[single quotes]: http://example.com 'example title' +[parentheses]: http://example.com (example title) +[invalid title]: http://example.com example title \ No newline at end of file diff --git a/library/parsedown/test/data/self-closing_html.html b/library/parsedown/test/data/self-closing_html.html new file mode 100644 index 000000000..4d072b43f --- /dev/null +++ b/library/parsedown/test/data/self-closing_html.html @@ -0,0 +1,12 @@ +paragraph
+paragraph
+paragraph
+paragraph
+paragraph
+paragraph
\ No newline at end of file diff --git a/library/parsedown/test/data/self-closing_html.md b/library/parsedown/test/data/self-closing_html.md new file mode 100644 index 000000000..acb20327d --- /dev/null +++ b/library/parsedown/test/data/self-closing_html.md @@ -0,0 +1,12 @@ +li
+not a header
+++quote
+
indented:
+++quote
+
no space after >
:
+\ No newline at end of file diff --git a/library/parsedown/test/data/simple_blockquote.md b/library/parsedown/test/data/simple_blockquote.md new file mode 100644 index 000000000..22b6b11a9 --- /dev/null +++ b/library/parsedown/test/data/simple_blockquote.md @@ -0,0 +1,7 @@ +> quote + +indented: + > quote + +no space after `>`: +>quote \ No newline at end of file diff --git a/library/parsedown/test/data/simple_table.html b/library/parsedown/test/data/simple_table.html new file mode 100644 index 000000000..237d7efb3 --- /dev/null +++ b/library/parsedown/test/data/simple_table.html @@ -0,0 +1,37 @@ +quote
+
header 1 | +header 2 | +
---|---|
cell 1.1 | +cell 1.2 | +
cell 2.1 | +cell 2.2 | +
header 1 | +header 2 | +
---|---|
cell 1.1 | +cell 1.2 | +
cell 2.1 | +cell 2.2 | +
an important link
+broken
+line
inline tag at the beginning
+ \ No newline at end of file diff --git a/library/parsedown/test/data/span-level_html.md b/library/parsedown/test/data/span-level_html.md new file mode 100644 index 000000000..f22196555 --- /dev/null +++ b/library/parsedown/test/data/span-level_html.md @@ -0,0 +1,8 @@ +an important link + +brokenli
+li
+li
+AT&T has an ampersand in their name
+this & that
+4 < 5 and 6 > 5
+http://example.com/autolink?a=1&b=2
+ + \ No newline at end of file diff --git a/library/parsedown/test/data/special_characters.md b/library/parsedown/test/data/special_characters.md new file mode 100644 index 000000000..111b03b63 --- /dev/null +++ b/library/parsedown/test/data/special_characters.md @@ -0,0 +1,13 @@ +AT&T has an ampersand in their name + +this & that + +4 < 5 and 6 > 5 + +strikethrough
here's one followed by another one
~~ this ~~ is not one neither is ~this~
\ No newline at end of file diff --git a/library/parsedown/test/data/strikethrough.md b/library/parsedown/test/data/strikethrough.md new file mode 100644 index 000000000..d169144d2 --- /dev/null +++ b/library/parsedown/test/data/strikethrough.md @@ -0,0 +1,5 @@ +~~strikethrough~~ + +here's ~~one~~ followed by ~~another one~~ + +~~ this ~~ is not one neither is ~this~ \ No newline at end of file diff --git a/library/parsedown/test/data/strong_em.html b/library/parsedown/test/data/strong_em.html new file mode 100644 index 000000000..b709c9914 --- /dev/null +++ b/library/parsedown/test/data/strong_em.html @@ -0,0 +1,6 @@ +em strong em
+strong em em
+em strong em em
+em strong em
+strong em em
+em strong em em
\ No newline at end of file diff --git a/library/parsedown/test/data/strong_em.md b/library/parsedown/test/data/strong_em.md new file mode 100644 index 000000000..f2aa3c782 --- /dev/null +++ b/library/parsedown/test/data/strong_em.md @@ -0,0 +1,11 @@ +*em **strong em*** + +***strong em** em* + +*em **strong em** em* + +_em __strong em___ + +___strong em__ em_ + +_em __strong em__ em_ \ No newline at end of file diff --git a/library/parsedown/test/data/tab-indented_code_block.html b/library/parsedown/test/data/tab-indented_code_block.html new file mode 100644 index 000000000..7c140de73 --- /dev/null +++ b/library/parsedown/test/data/tab-indented_code_block.html @@ -0,0 +1,6 @@ +<?php
+
+$message = 'Hello World!';
+echo $message;
+
+echo "following a blank line";
\ No newline at end of file
diff --git a/library/parsedown/test/data/tab-indented_code_block.md b/library/parsedown/test/data/tab-indented_code_block.md
new file mode 100644
index 000000000..a405a1609
--- /dev/null
+++ b/library/parsedown/test/data/tab-indented_code_block.md
@@ -0,0 +1,6 @@
+
+
+|
2.1\|
2.1one with a semantic name
+[one][404] with no definition
+multiline +one defined on 2 lines
+one with a mixed case label and an upper case definition
+one with the a label on the next line
+ \ No newline at end of file diff --git a/library/parsedown/test/data/text_reference.md b/library/parsedown/test/data/text_reference.md new file mode 100644 index 000000000..1a66a5cf6 --- /dev/null +++ b/library/parsedown/test/data/text_reference.md @@ -0,0 +1,21 @@ +[reference link][1] + +[1]: http://example.com + +[one][website] with a semantic name + +[website]: http://example.com + +[one][404] with no definition + +[multiline +one][website] defined on 2 lines + +[one][Label] with a mixed case label and an upper case definition + +[LABEL]: http://example.com + +[one] +[1] with the a label on the next line + +[`link`][website] \ No newline at end of file diff --git a/library/parsedown/test/data/unordered_list.html b/library/parsedown/test/data/unordered_list.html new file mode 100644 index 000000000..cd95567b7 --- /dev/null +++ b/library/parsedown/test/data/unordered_list.html @@ -0,0 +1,10 @@ +mixed markers:
+header 1 | +header 2 | +
---|---|
cell 1.1 | +cell 1.2 | +
cell 2.1 | +cell 2.2 | +
an autolink http://example.com
+inside of brackets [http://example.com], inside of braces {http://example.com}, inside of parentheses (http://example.com)
+trailing slash http://example.com/ and http://example.com/path/
\ No newline at end of file diff --git a/library/parsedown/test/data/url_autolinking.md b/library/parsedown/test/data/url_autolinking.md new file mode 100644 index 000000000..840f35404 --- /dev/null +++ b/library/parsedown/test/data/url_autolinking.md @@ -0,0 +1,5 @@ +an autolink http://example.com + +inside of brackets [http://example.com], inside of braces {http://example.com}, inside of parentheses (http://example.com) + +trailing slash http://example.com/ and http://example.com/path/ \ No newline at end of file diff --git a/library/parsedown/test/data/whitespace.html b/library/parsedown/test/data/whitespace.html new file mode 100644 index 000000000..f2dd7a002 --- /dev/null +++ b/library/parsedown/test/data/whitespace.html @@ -0,0 +1 @@ +code
\ No newline at end of file
diff --git a/library/parsedown/test/data/whitespace.md b/library/parsedown/test/data/whitespace.md
new file mode 100644
index 000000000..4cf926a8a
--- /dev/null
+++ b/library/parsedown/test/data/whitespace.md
@@ -0,0 +1,5 @@
+
+
+ code
+
+
\ No newline at end of file
--
cgit v1.2.3