<p>This is a paragraph
* and this is not a list</p>
"""
- var res = test.md_to_html.write_to_string
+ var proc = new MarkdownProcessor
+ proc.ext_mode = false
+ var res = proc.process(test).write_to_string
assert res == exp
end
<li>and this is not a list</li>
</ul>
"""
- var proc = new MarkdownProcessor
- proc.ext_mode = true
- var res = proc.process(test).write_to_string
+ var res = test.md_to_html.write_to_string
assert res == exp
end
end
fun test_process_code_ext1 do
- var processor = new MarkdownProcessor
- processor.ext_mode = true
var test = """
Here is an example of AppleScript:
~~~
</div>
</code></pre>
"""
- var res = processor.process(test).write_to_string
+ var res = test.md_to_html.write_to_string
assert res == exp
end
fun test_process_code_ext2 do
- var processor = new MarkdownProcessor
- processor.ext_mode = true
var test = """
Here is an example of AppleScript:
```
</div>
</code></pre>
"""
- var res = processor.process(test).write_to_string
+ var res = test.md_to_html.write_to_string
assert res == exp
end
fun test_process_code_ext3 do
+ var proc = new MarkdownProcessor
+ proc.ext_mode = false
+
var test = """
Here is an example of AppleScript:
beep
<p>Here is an example of AppleScript:
beep</p>
"""
- var res = test.md_to_html.write_to_string
+ var res = proc.process(test).write_to_string
assert res == exp
end
fun test_process_code_ext4 do
- var processor = new MarkdownProcessor
- processor.ext_mode = true
var test = """
Here is an example of AppleScript:
beep
<pre><code>beep
</code></pre>
"""
- var res = processor.process(test).write_to_string
+ var res = test.md_to_html.write_to_string
+ assert res == exp
+ end
+
+ fun test_process_code_ext5 do
+ var test = """
+```nit
+print "Hello World!"
+```
+"""
+ var exp = """
+<pre class="nit"><code>print "Hello World!"
+</code></pre>
+"""
+ var res = test.md_to_html.write_to_string
assert res == exp
end
end
fun test_process_emph3 do
+ var proc = new MarkdownProcessor
+ proc.ext_mode = false
var test = "Con_cat_this"
var exp = "<p>Con<em>cat</em>this</p>\n"
- var res = test.md_to_html.write_to_string
+ var res = proc.process(test).write_to_string
assert res == exp
end
fun test_process_emph_ext do
var test = "Con_cat_this"
var exp = "<p>Con_cat_this</p>\n"
- var proc = new MarkdownProcessor
- proc.ext_mode = true
- var res = proc.process(test).write_to_string
+ var res = test.md_to_html.write_to_string
assert res == exp
end
assert res == exp
end
+ fun test_process_strike do
+ var proc = new MarkdownProcessor
+ proc.ext_mode = false
+ var test = "This is how you ~~strike text~~"
+ var exp = "<p>This is how you ~~strike text~~</p>\n"
+ var res = proc.process(test).write_to_string
+ assert exp == res
+ end
+
+ fun test_process_strike_ext do
+ var test = "This is how you ~~strike text~~"
+ var exp = "<p>This is how you <del>strike text</del></p>\n"
+ var res = test.md_to_html.write_to_string
+ assert exp == res
+ end
+
+ fun test_escape_bad_html do
+ var test = "-1 if < , +1 if > and 0 otherwise"
+ var exp = "<p>-1 if < , +1 if > and 0 otherwise</p>\n"
+ var res = test.md_to_html.write_to_string
+ assert exp == res
+ end
+
fun test_daring_encoding do
var test = """
AT&T has an ampersand in their name.
end
fun test_daring_pars do
+ var proc = new MarkdownProcessor
+ proc.ext_mode = false
+
var test = """
In Markdown 1.0.0 and earlier. Version
8. This line turns into a list item.
<p>Here's one with a bullet.
* criminey.</p>
"""
- var res = test.md_to_html.write_to_string
+ var res = proc.process(test).write_to_string
assert res == exp
end
var subject: MDLine
- init do end
-
fun test_is_empty do
subject = new MDLine("")
assert subject.is_empty
fun test_line_type_ext do
var v = new MarkdownProcessor
- v.ext_mode = true
subject = new MDLine(" ~~~")
assert v.line_kind(subject) isa LineFence
subject = new MDLine(" ```")