2020-06-13 18:43:32 +02:00
# TODO: make this more sensible:
# - separate tests for
# 1. features that are "copy-and-pasted" from `Markdown` module
# 2. features that are extended by Weave
using Weave : WeaveMarkdown , Markdown
2018-01-08 11:53:48 +01:00
# Test markdown2html writer
2019-02-28 15:17:03 +01:00
html = WeaveMarkdown . html ( Markdown . parse ( """
2018-01-08 11:53:48 +01:00
# H1
## H2
## H3
Some * * text * * with different [ ^ note ] * formatting * and \ $ math \ $ and text .
` some code ` with [ link ] ( http : // github . com )
[ ^ note ] : test note
- - -
\ $ more math \ $
* List one
* List two
1. List one
2. List two
``` julia
2018-08-23 07:22:08 +02:00
x = 3
2018-01-08 11:53:48 +01:00
```
! ! ! note " Something "
Test admonition with ! [ Image ] ( link / to / image . png )
> Some important quote
2019-06-21 13:27:29 +02:00
head 1 | head 2
- - - - - - - | - - - - - - - -
` code ` | no code
2019-02-28 15:17:03 +01:00
""" , flavor = WeaveMarkdown.weavemd))
2018-01-08 11:53:48 +01:00
ref_html = """ <h1>H1</h1>
< h2 > H2 < / h2 >
< h2 > H3 < / h2 >
< p > Some < strong > text < / strong > with different < a href = \ " #footnote-note \" class= \" footnote \" >[note]</a> <em>formatting</em> and <span class= \" math \" > \$ math \$ </span> and text.</p>
< p > < code > some code < / code > with < a href = \ " http://github.com \" >link</a></p>
< div class = \ " footnote \" id= \" footnote-note \" ><p class= \" footnote-title \" >note</p><p>test note</p>
< / div >
< hr / >
2018-08-23 07:22:08 +02:00
< p class = \ " math \" > \\ [
more math
\ \ ] < / p >
2018-01-08 11:53:48 +01:00
< ul >
< li > < p > List one < / p >
< / li >
< li > < p > List two < / p >
< / li >
< / ul >
< ol >
< li > < p > List one < / p >
< / li >
< li > < p > List two < / p >
< / li >
< / ol >
2018-08-23 07:22:08 +02:00
< pre > < code class = \ " language-julia \" >x = 3</code></pre>
2018-01-08 11:53:48 +01:00
< div class = \ " admonition note \" ><p class= \" admonition-title \" >Something</p><p>Test admonition with <img src= \" link/to/image.png \" alt= \" Image \" /></p>
< / div >
< blockquote >
< p > Some important quote < / p >
< / blockquote >
2019-06-21 13:27:29 +02:00
< table > < tr > < th > head 1 < / th > < th > head 2 < / th > < / tr > < tr > < td > < code > code < / code > < / td > < td > no code < / td > < / tr > < / table >
2018-01-08 11:53:48 +01:00
"""
@test html == ref_html
2019-02-28 15:17:03 +01:00
#Test Weave additions
md = Markdown . parse ( """
Multiline equations
\ $ \ $
x = 2
\ $ \ $
And comments < ! - - inline -->
< ! - -
Multiple lines
-->
""" , flavor = WeaveMarkdown.weavemd);
@test md . content [ 2 ] . formula == " x = 2 "
@test typeof ( md . content [ 3 ] . content [ 2 ] ) == WeaveMarkdown . Comment
@test md . content [ 3 ] . content [ 2 ] . text == " inline "
@test md . content [ 4 ] . text == " \n Multiple lines \n "
@test WeaveMarkdown . latex ( md . content [ 2 ] ) == " \\ [ \n x = 2 \n \\ ] \n "
@test WeaveMarkdown . latex ( md . content [ 4 ] ) == " % \n % Multiple lines \n % \n "
@test WeaveMarkdown . html ( md . content [ 2 ] ) == " <p class= \" math \" > \\ [ \n x = 2 \n \\ ]</p> "
@test WeaveMarkdown . html ( md . content [ 4 ] ) == " \n <!-- \n Multiple lines \n --> \n "