aboutsummaryrefslogtreecommitdiff
path: root/tests/document-xml-reader.tests.js
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2013-11-26 13:51:46 +0000
committerMichael Williamson <mike@zwobble.org>2013-11-26 13:51:46 +0000
commitaeb60aaf362200477e36c3c5ae17f8c063a21568 (patch)
tree84fb2472efbb086fb9e2f8ec79df8c13c1321e4f /tests/document-xml-reader.tests.js
parent995a6617fe505e427e94bdc37bd66da7f12fdb90 (diff)
Add test for reading hyperlinks
Diffstat (limited to 'tests/document-xml-reader.tests.js')
-rw-r--r--tests/document-xml-reader.tests.js16
1 files changed, 14 insertions, 2 deletions
diff --git a/tests/document-xml-reader.tests.js b/tests/document-xml-reader.tests.js
index f2872a3..01ecac4 100644
--- a/tests/document-xml-reader.tests.js
+++ b/tests/document-xml-reader.tests.js
@@ -9,8 +9,9 @@ var testing = require("./testing");
var test = testing.test;
var createFakeDocxFile = testing.createFakeDocxFile;
-function readXmlElement(element) {
- return new DocumentXmlReader({}).readXmlElement(element);
+function readXmlElement(element, options) {
+ options = options || {}
+ return new DocumentXmlReader(options.relationships || {}).readXmlElement(element);
}
function readXmlElementValue(element) {
@@ -221,6 +222,17 @@ describe("readXmlElement: ", function() {
var result = readXmlElement(insXml);
assert.deepEqual(result.value[0].type, "run");
});
+
+ test("w:hyperlink is read as document 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");
+ });
});
function runWithProperties(children) {