From 9625e17e86dab26e0ef8dc47eebcb83249c4b220 Mon Sep 17 00:00:00 2001
From: John MacFarlane <jgm@berkeley.edu>
Date: Thu, 3 Feb 2022 21:06:48 -0800
Subject: [PATCH] Add zotero citation test with docx-citations.

---
 test/Tests/Readers/Docx.hs              |   6 +
 test/docx/zotero_citations.docx         | Bin 0 -> 14943 bytes
 test/docx/zotero_citations_minus.native | 335 ++++++++++++++++++++++++
 3 files changed, 341 insertions(+)
 create mode 100644 test/docx/zotero_citations.docx
 create mode 100644 test/docx/zotero_citations_minus.native

diff --git a/test/Tests/Readers/Docx.hs b/test/Tests/Readers/Docx.hs
index be5b89b88..6c873dd5a 100644
--- a/test/Tests/Readers/Docx.hs
+++ b/test/Tests/Readers/Docx.hs
@@ -370,6 +370,12 @@ tests = [ testGroup "document"
             "docx/drop_cap.docx"
             "docx/drop_cap.native"
           ]
+        , testGroup "citations"
+          [ testCompare
+            "zotero with -citations"
+            "docx/zotero_citations.docx"
+            "docx/zotero_citations_minus.native"
+          ]
         , testGroup "track changes"
           [ testCompare
             "insertion (default)"
diff --git a/test/docx/zotero_citations.docx b/test/docx/zotero_citations.docx
new file mode 100644
index 0000000000000000000000000000000000000000..59d9b3e4523241b6f91008d9d3409b1b4d5d2d29
GIT binary patch
literal 14943
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
R9}fPHKcEkain9KC`X6V=mJa{`

literal 0
HcmV?d00001

diff --git a/test/docx/zotero_citations_minus.native b/test/docx/zotero_citations_minus.native
new file mode 100644
index 000000000..380ecafdf
--- /dev/null
+++ b/test/docx/zotero_citations_minus.native
@@ -0,0 +1,335 @@
+Pandoc
+  Meta { unMeta = fromList [] }
+  [ Para
+      [ Str "This"
+      , Space
+      , Str "is"
+      , Space
+      , Str "a"
+      , Space
+      , Str "citation"
+      , Space
+      , Str "(Smith"
+      , Space
+      , Str "et"
+      , Space
+      , Str "al.,"
+      , Space
+      , Str "2013)"
+      ]
+  , Para
+      [ Str "This"
+      , Space
+      , Str "is"
+      , Space
+      , Str "a"
+      , Space
+      , Str "citation"
+      , Space
+      , Str "with"
+      , Space
+      , Str "two"
+      , Space
+      , Str "sources"
+      , Space
+      , Str "(Boer"
+      , Space
+      , Str "et"
+      , Space
+      , Str "al.,"
+      , Space
+      , Str "2016;"
+      , Space
+      , Str "Smith"
+      , Space
+      , Str "et"
+      , Space
+      , Str "al.,"
+      , Space
+      , Str "2013)."
+      ]
+  , Para
+      [ Str "This"
+      , Space
+      , Str "is"
+      , Space
+      , Str "a"
+      , Space
+      , Str "citation"
+      , Space
+      , Str "with"
+      , Space
+      , Str "additional"
+      , Space
+      , Str "prefix,"
+      , Space
+      , Str "suffix"
+      , Space
+      , Str "and"
+      , Space
+      , Str "a"
+      , Space
+      , Str "page"
+      , Space
+      , Str "number"
+      , Space
+      , Str "(prefix"
+      , Space
+      , Str "Bellomo"
+      , Space
+      , Str "et"
+      , Space
+      , Str "al.,"
+      , Space
+      , Str "2016,"
+      , Space
+      , Str "p."
+      , Space
+      , Str "2"
+      , Space
+      , Str "suffix)."
+      ]
+  , Header
+      1
+      ( "reference-list" , [] , [] )
+      [ Str "Reference" , Space , Str "list" ]
+  , Para
+      [ Str "Bellomo,"
+      , Space
+      , Str "K.,"
+      , Space
+      , Str "Clement,"
+      , Space
+      , Str "A."
+      , Space
+      , Str "C.,"
+      , Space
+      , Str "Murphy,"
+      , Space
+      , Str "L."
+      , Space
+      , Str "N.,"
+      , Space
+      , Str "Polvani,"
+      , Space
+      , Str "L."
+      , Space
+      , Str "M.,"
+      , Space
+      , Str "&"
+      , Space
+      , Str "Cane,"
+      , Space
+      , Str "M."
+      , Space
+      , Str "A."
+      , Space
+      , Str "(2016)."
+      , Space
+      , Str "New"
+      , Space
+      , Str "observational"
+      , Space
+      , Str "evidence"
+      , Space
+      , Str "for"
+      , Space
+      , Str "a"
+      , Space
+      , Str "positive"
+      , Space
+      , Str "cloud"
+      , Space
+      , Str "feedback"
+      , Space
+      , Str "that"
+      , Space
+      , Str "amplifies"
+      , Space
+      , Str "the"
+      , Space
+      , Str "Atlantic"
+      , Space
+      , Str "Multidecadal"
+      , Space
+      , Str "Oscillation."
+      , Space
+      , Emph
+          [ Str "Geophys."
+          , Space
+          , Str "Res."
+          , Space
+          , Str "Lett."
+          ]
+      , Str ","
+      , Space
+      , Emph [ Str "43" ]
+      , Str "(18),"
+      , Space
+      , Str "9852\8211\&9859."
+      , Space
+      , Str "https://doi.org/10.1002/2016GL069961"
+      ]
+  , Para
+      [ Str "Boer,"
+      , Space
+      , Str "G."
+      , Space
+      , Str "J.,"
+      , Space
+      , Str "Smith,"
+      , Space
+      , Str "D."
+      , Space
+      , Str "M.,"
+      , Space
+      , Str "Cassou,"
+      , Space
+      , Str "C.,"
+      , Space
+      , Str "Doblas-Reyes,"
+      , Space
+      , Str "F.,"
+      , Space
+      , Str "Danabasoglu,"
+      , Space
+      , Str "G.,"
+      , Space
+      , Str "Kirtman,"
+      , Space
+      , Str "B.,"
+      , Space
+      , Str "Kushnir,"
+      , Space
+      , Str "Y.,"
+      , Space
+      , Str "Kimoto,"
+      , Space
+      , Str "M.,"
+      , Space
+      , Str "Meehl,"
+      , Space
+      , Str "G."
+      , Space
+      , Str "A.,"
+      , Space
+      , Str "Msadek,"
+      , Space
+      , Str "R.,"
+      , Space
+      , Str "M\252ller,"
+      , Space
+      , Str "W."
+      , Space
+      , Str "A.,"
+      , Space
+      , Str "Taylor,"
+      , Space
+      , Str "K."
+      , Space
+      , Str "E.,"
+      , Space
+      , Str "Zwiers,"
+      , Space
+      , Str "F.,"
+      , Space
+      , Str "Rixen,"
+      , Space
+      , Str "M.,"
+      , Space
+      , Str "Ruprich-Robert,"
+      , Space
+      , Str "Y.,"
+      , Space
+      , Str "&"
+      , Space
+      , Str "Eade,"
+      , Space
+      , Str "R."
+      , Space
+      , Str "(2016)."
+      , Space
+      , Str "The"
+      , Space
+      , Str "Decadal"
+      , Space
+      , Str "Climate"
+      , Space
+      , Str "Prediction"
+      , Space
+      , Str "Project"
+      , Space
+      , Str "(DCPP)."
+      , Space
+      , Emph
+          [ Str "Geoscientific"
+          , Space
+          , Str "Model"
+          , Space
+          , Str "Development"
+          ]
+      , Str ","
+      , Space
+      , Emph [ Str "9" ]
+      , Str ","
+      , Space
+      , Str "3751\8211\&3777."
+      , Space
+      , Str "https://doi.org/10.5194/gmd-9-3751-2016"
+      ]
+  , Para
+      [ Str "Smith,"
+      , Space
+      , Str "D."
+      , Space
+      , Str "M.,"
+      , Space
+      , Str "Eade,"
+      , Space
+      , Str "R.,"
+      , Space
+      , Str "&"
+      , Space
+      , Str "Pohlmann,"
+      , Space
+      , Str "H."
+      , Space
+      , Str "(2013)."
+      , Space
+      , Str "A"
+      , Space
+      , Str "comparison"
+      , Space
+      , Str "of"
+      , Space
+      , Str "full-field"
+      , Space
+      , Str "and"
+      , Space
+      , Str "anomaly"
+      , Space
+      , Str "initialization"
+      , Space
+      , Str "for"
+      , Space
+      , Str "seasonal"
+      , Space
+      , Str "to"
+      , Space
+      , Str "decadal"
+      , Space
+      , Str "climate"
+      , Space
+      , Str "prediction."
+      , Space
+      , Emph [ Str "Climate" , Space , Str "Dynamics" ]
+      , Str ","
+      , Space
+      , Emph [ Str "41" ]
+      , Str "(11\8211\&12),"
+      , Space
+      , Str "3325\8211\&3338."
+      , Space
+      , Str "https://doi.org/10.1007/s00382-013-1683-2"
+      ]
+  ]