From c2d5d7043644cbd3e0a8bfe3d9251cc5eca811d4 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Thu, 18 May 2017 20:08:38 +0100 Subject: Avoid parsing URI when replacing fragment --- test/docx/body-reader.tests.js | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'test') diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js index 01a147b..14fbba9 100644 --- a/test/docx/body-reader.tests.js +++ b/test/docx/body-reader.tests.js @@ -901,6 +901,17 @@ test("w:hyperlink", { assert.deepEqual(result.value.children[0].type, "run"); }, + "existing fragment is replaced when anchor is set on external link": function() { + var runXml = new XmlElement("w:r", {}, []); + var hyperlinkXml = new XmlElement("w:hyperlink", {"r:id": "r42", "w:anchor": "fragment"}, [runXml]); + var relationships = { + "r42": {target: "http://example.com/#previous"} + }; + var result = readXmlElement(hyperlinkXml, {relationships: relationships}); + assert.deepEqual(result.value.href, "http://example.com/#fragment"); + assert.deepEqual(result.value.children[0].type, "run"); + }, + "is read as internal hyperlink if it has an anchor": function() { var runXml = new XmlElement("w:r", {}, []); var hyperlinkXml = new XmlElement("w:hyperlink", {"w:anchor": "_Peter"}, [runXml]); -- cgit v1.2.3