diff options
| author | Michael Williamson <mike@zwobble.org> | 2017-05-18 20:02:40 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2017-05-18 20:02:40 +0100 |
| commit | 1c007ffd3b0d736f99306d448341868e35eee187 (patch) | |
| tree | 128ede2dd354ca613da311c55b1bc7fa6e231e8f | |
| parent | 9aae75f64568055ef1c04a6a5f2bfb29cf7cf736 (diff) | |
Move hyperlink tests into their own object
| -rw-r--r-- | test/docx/body-reader.tests.js | 72 |
1 files changed, 37 insertions, 35 deletions
diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js index 351249a..01a147b 100644 --- a/test/docx/body-reader.tests.js +++ b/test/docx/body-reader.tests.js @@ -878,41 +878,43 @@ function assertChildrenAreConvertedNormally(tagName) { assert.deepEqual(result.value[0].type, "run"); } -test("w:hyperlink is read as external hyperlink if it has a relationship ID", function() { - var runXml = new XmlElement("w:r", {}, []); - var hyperlinkXml = new XmlElement("w:hyperlink", {"r:id": "r42"}, [runXml]); - var relationships = { - "r42": {target: "http://example.com"} - }; - var result = readXmlElement(hyperlinkXml, {relationships: relationships}); - assert.deepEqual(result.value.href, "http://example.com"); - assert.deepEqual(result.value.children[0].type, "run"); -}); - -test("w:hyperlink is read as external hyperlink if it has a relationship ID and an anchor", 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/"} - }; - var result = readXmlElement(hyperlinkXml, {relationships: relationships}); - assert.deepEqual(result.value.href, "http://example.com/#fragment"); - assert.deepEqual(result.value.children[0].type, "run"); -}); - -test("w:hyperlink 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]); - var result = readXmlElement(hyperlinkXml); - assert.deepEqual(result.value.anchor, "_Peter"); - assert.deepEqual(result.value.children[0].type, "run"); -}); - -test("w:hyperlink is ignored if it does not have a relationship ID nor anchor", function() { - var runXml = new XmlElement("w:r", {}, []); - var hyperlinkXml = new XmlElement("w:hyperlink", {}, [runXml]); - var result = readXmlElement(hyperlinkXml); - assert.deepEqual(result.value[0].type, "run"); +test("w:hyperlink", { + "is read as external hyperlink if it has a relationship ID": function() { + var runXml = new XmlElement("w:r", {}, []); + var hyperlinkXml = new XmlElement("w:hyperlink", {"r:id": "r42"}, [runXml]); + var relationships = { + "r42": {target: "http://example.com"} + }; + var result = readXmlElement(hyperlinkXml, {relationships: relationships}); + assert.deepEqual(result.value.href, "http://example.com"); + assert.deepEqual(result.value.children[0].type, "run"); + }, + + "is read as external hyperlink if it has a relationship ID and an anchor": 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/"} + }; + 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]); + var result = readXmlElement(hyperlinkXml); + assert.deepEqual(result.value.anchor, "_Peter"); + assert.deepEqual(result.value.children[0].type, "run"); + }, + + "is ignored if it does not have a relationship ID nor anchor": function() { + var runXml = new XmlElement("w:r", {}, []); + var hyperlinkXml = new XmlElement("w:hyperlink", {}, [runXml]); + var result = readXmlElement(hyperlinkXml); + assert.deepEqual(result.value[0].type, "run"); + } }); test("w:br without explicit type is read as line break", function() { |
