From fcbb37c8f3b28ae0889041030f37e7c730751bcd Mon Sep 17 00:00:00 2001
From: Jesse Rosenthal <jrosenthal@jhu.edu>
Date: Mon, 29 Aug 2016 08:35:59 -0400
Subject: [PATCH] Docx reader: test for nested anchor spans in header

This ensures that anchor spans in header with content (or with other
anchor spans inside) will resolve to links to a header id properly.
---
 tests/Tests/Readers/Docx.hs                |   4 ++++
 tests/docx/nested_anchors_in_header.docx   | Bin 0 -> 17535 bytes
 tests/docx/nested_anchors_in_header.native |  10 ++++++++++
 3 files changed, 14 insertions(+)
 create mode 100644 tests/docx/nested_anchors_in_header.docx
 create mode 100644 tests/docx/nested_anchors_in_header.native

diff --git a/tests/Tests/Readers/Docx.hs b/tests/Tests/Readers/Docx.hs
index a9a9094f1..8ae0532e4 100644
--- a/tests/Tests/Readers/Docx.hs
+++ b/tests/Tests/Readers/Docx.hs
@@ -181,6 +181,10 @@ tests = [ testGroup "inlines"
             "headers already having auto identifiers"
             "docx/already_auto_ident.docx"
             "docx/already_auto_ident.native"
+          , testCompare
+            "nested anchor spans in header"
+            "docx/nested_anchors_in_header.docx"
+            "docx/nested_anchors_in_header.native"
           , testCompare
             "single numbered item not made into list"
             "docx/numbered_header.docx"
diff --git a/tests/docx/nested_anchors_in_header.docx b/tests/docx/nested_anchors_in_header.docx
new file mode 100644
index 0000000000000000000000000000000000000000..ddebb7ff4c6acc911abc6dead912da95a559b149
GIT binary patch
literal 17535
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
H^V9zWff~i4

literal 0
HcmV?d00001

diff --git a/tests/docx/nested_anchors_in_header.native b/tests/docx/nested_anchors_in_header.native
new file mode 100644
index 000000000..e2b6eb1ef
--- /dev/null
+++ b/tests/docx/nested_anchors_in_header.native
@@ -0,0 +1,10 @@
+[Header 1 ("short-instructions",[],[]) [Str "Short",Space,Str "instructions"]
+,Para [Link ("",[],[]) [Str "Open",Space,Str "remote",Space,Str "folder"] ("#remote-folder-or-longlonglonglonglong-file-with-manymanymanymany-letters-inside-opening","")]
+,Para [Str "Do",Space,Str "staff"]
+,Para [Link ("",[],[]) [Str "Close",Space,Str "remote",Space,Str "folder"] ("#remote-folder-or-longlonglonglonglong-file-with-manymanymanymany-letters-inside-closing","")]
+,Header 1 ("some-instructions",[],[]) [Str "Some",Space,Str "instructions"]
+,Para [Str "Lines"]
+,Header 2 ("remote-folder-or-longlonglonglonglong-file-with-manymanymanymany-letters-inside-opening",[],[]) [Str "Remote",Space,Str "folder",Space,Str "or",Space,Str "longlonglonglonglong",Space,Str "file",Space,Str "with",Space,Str "manymanymanymany",Space,Str "letters",Space,Str "inside",Space,Str "opening"]
+,Para [Str "Open",Space,Str "folder"]
+,Header 2 ("remote-folder-or-longlonglonglonglong-file-with-manymanymanymany-letters-inside-closing",[],[]) [Str "Remote",Space,Str "folder",Space,Str "or",Space,Str "longlonglonglonglong",Space,Str "file",Space,Str "with",Space,Str "manymanymanymany",Space,Str "letters",Space,Str "inside",Space,Str "closing"]
+,Para [Str "Close",Space,Str "folder"]]