From 3be253fb90deb8ca746156a3b281e5983fc6e8cf Mon Sep 17 00:00:00 2001 From: Hikaru Ibayashi Date: Sun, 10 Dec 2023 09:29:45 -0800 Subject: LaTeX writer: fix bug with big footnotes inside emphasis (#9168) Closes #8982. --- test/Tests/Writers/LaTeX.hs | 68 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) (limited to 'test/Tests') diff --git a/test/Tests/Writers/LaTeX.hs b/test/Tests/Writers/LaTeX.hs index d1cec5d2b..f17dfdcce 100644 --- a/test/Tests/Writers/LaTeX.hs +++ b/test/Tests/Writers/LaTeX.hs @@ -86,6 +86,74 @@ tests = [ testGroup "code blocks" , "backtick" =: code "`nu?`" =?> "\\texttt{\\textasciigrave{}nu?\\textasciigrave{}}" ] + , testGroup "inline note" + [ "Big note in emph" =: + emph (str "This sentence" + <> note (para (str "paragraph1") + <> para (str "paragraph2")) + <> str " has footnote.") + =?> + "\\emph{This sentence}\\footnote{paragraph1\n\n paragraph2}" + <> "\\emph{ has footnote.}" + , "Big note in strong" =: + strong (str "This sentence" + <> note (para (str "paragraph1") + <> para (str "paragraph2")) + <> str " has footnote.") + =?> + "\\textbf{This sentence}\\footnote{paragraph1\n\n paragraph2}" + <> "\\textbf{ has footnote.}" + + , "Big note in underline" =: + underline (str "This sentence" + <> note (para (str "paragraph1") + <> para (str "paragraph2")) + <> str " has footnote.") + =?> + "\\ul{This sentence}\\footnote{paragraph1\n\n paragraph2}" + <> "\\ul{ has footnote.}" + + , "Big note in strikeout" =: + strikeout (str "This sentence" + <> note (para (str "paragraph1") + <> para (str "paragraph2")) + <> str " has footnote.") + =?> + "\\st{This sentence}\\footnote{paragraph1\n\n paragraph2}" + <> "\\st{ has footnote.}" + + , "Small note in emph" =: + emph (str "This sentence" + <> note (para (str "paragraph")) + <> str " has footnote.") + =?> + "\\emph{This sentence\\footnote{paragraph} has footnote.}" + + , "Big note nested in emph and strong" =: + emph (str "This " + <> strong (str "nested sentence " + <> note (para (str "paragraph1") + <> para (str "paragraph2")) + <> str "has ") + <> str "footnote." + ) + =?> + "\\emph{This \\textbf{nested sentence }}\\footnote{paragraph1\n\n" + <> " paragraph2}\\emph{\\textbf{has }footnote.}" + + , "Two Big notes in emph" =: + emph (str "This sentence" + <> note (para (str "1-paragraph1") + <> para (str "1-paragraph2")) + <> str " has" + <> note (para (str "2-paragraph1") + <> para (str "2-paragraph2")) + <> str " footnote.") + =?> + "\\emph{This sentence}\\footnote{1-paragraph1\n\n 1-paragraph2}" + <> "\\emph{ has}\\footnote{2-paragraph1\n\n 2-paragraph2}" + <> "\\emph{ footnote.}" + ] , testGroup "writer options" [ testGroup "top-level division" $ let -- cgit v1.2.3