aboutsummaryrefslogtreecommitdiff
path: root/tests/docx/content-types-reader.tests.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/docx/content-types-reader.tests.js')
-rw-r--r--tests/docx/content-types-reader.tests.js27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/docx/content-types-reader.tests.js b/tests/docx/content-types-reader.tests.js
new file mode 100644
index 0000000..b0f135e
--- /dev/null
+++ b/tests/docx/content-types-reader.tests.js
@@ -0,0 +1,27 @@
+var assert = require("assert");
+
+var readContentTypesFromXml = require("../../lib/docx/content-types-reader").readContentTypesFromXml;
+var XmlElement = require("../../lib/xmlreader").Element;
+var test = require("../testing").test;
+
+
+describe('readContentTypesFromXml', function() {
+ test('reads default-per-extension from XML', function() {
+ var contentTypes = readContentTypesFromXml({
+ root: new XmlElement("content-types:Types", {}, [
+ new XmlElement("content-types:Default", {Extension: "png", ContentType: "image/png"})
+ ])
+ });
+ assert.equal(contentTypes.findContentType("word/media/hat.png"), "image/png");
+ });
+
+ test('reads overrides in preference to defaults', function() {
+ var contentTypes = readContentTypesFromXml({
+ root: new XmlElement("content-types:Types", {}, [
+ new XmlElement("content-types:Default", {Extension: "png", ContentType: "image/png"}),
+ new XmlElement("content-types:Override", {PartName: "/word/media/hat.png", ContentType: "image/hat"})
+ ])
+ });
+ assert.equal(contentTypes.findContentType("word/media/hat.png"), "image/hat");
+ });
+});