@@ -104,6 +104,49 @@ natbibCitations = testGroup "natbib"
104104
105105biblatexCitations :: Test
106106biblatexCitations = testGroup "biblatex"
107− [
107+ [ "textcite" =: "\\textcite{item1}"
108+ =?> para (cite [baseCitation] empty)
109+ , "suffix" =: "\\textcite[p.~30]{item1}"
110+ =?> para
111+ (cite [baseCitation{ citationSuffix = toList $ text "p.\160\&30" }] empty)
112+ , "suffix long" =: "\\textcite[p.~30, with suffix]{item1}"
113+ =?> para (cite [baseCitation{ citationSuffix =
114+ toList $ text "p.\160\&30, with suffix" }] empty)
115+ , "multiple" =: "\\textcites{item1}[p.~30]{item2}[see also][]{item3}"
116+ =?> para (cite [baseCitation{ citationMode = AuthorInText }
117+ ,baseCitation{ citationMode = NormalCitation
118+ , citationSuffix = [Str "p.\160\&30"]
119+ , citationId = "item2" }
120+ ,baseCitation{ citationId = "item3"
121+ , citationPrefix = [Str "see",Space,Str "also"]
122+ , citationMode = NormalCitation }
123+ ] empty)
124+ , "group" =: "\\autocites[see][p.~34--35]{item1}[also][chap. 3]{item3}"
125+ =?> para (cite [baseCitation{ citationMode = NormalCitation
126+ , citationPrefix = [Str "see"]
127+ , citationSuffix = [Str "p.\160\&34",EnDash,Str "35"] }
128+ ,baseCitation{ citationMode = NormalCitation
129+ , citationId = "item3"
130+ , citationPrefix = [Str "also"]
131+ , citationSuffix = [Str "chap.",Space,Str "3"] }
132+ ] empty)
133+ , "suffix and locator" =: "\\autocite[pp.~33, 35--37, and nowhere else]{item1}"
134+ =?> para (cite [baseCitation{ citationMode = NormalCitation
135+ , citationSuffix = [Str "pp.\160\&33,",Space,Str "35",EnDash,Str "37,",Space,Str "and",Space,Str "nowhere",Space, Str "else"] }] empty)
136+ , "suffix only" =: "\\autocite[and nowhere else]{item1}"
137+ =?> para (cite [baseCitation{ citationMode = NormalCitation
138+ , citationSuffix = toList $ text "and nowhere else" }] empty)
139+ , "no author" =: "\\autocite*{item1}, and now Doe with a locator \\autocite*[p.~44]{item2}"
140+ =?> para (cite [baseCitation{ citationMode = SuppressAuthor }] empty +++
141+ text ", and now Doe with a locator " +++
142+ cite [baseCitation{ citationMode = SuppressAuthor
143+ , citationSuffix = [Str "p.\160\&44"]
144+ , citationId = "item2" }] empty)
145+ , "markup" =: "\\autocite[\\emph{see}][p. \\textbf{32}]{item1}"
146+ =?> para (cite [baseCitation{ citationMode = NormalCitation
147+ , citationPrefix = [Emph [Str "see"]]
148+ , citationSuffix = [Str "p.",Space,
149+ Strong [Str "32"]] }] empty)
150+ , "parencite" =: "\\parencite{item1}"
151+ =?> para (cite [baseCitation{ citationMode = NormalCitation }] empty)
108152 ]
109−