From a2ceeb07d4e29c8c3bc05b690832b371f2f1e062 Mon Sep 17 00:00:00 2001 From: Wolfram Schneider Date: Thu, 30 Jan 2014 13:48:04 +0000 Subject: [PATCH] Workaround for broken XML parser in node.js/jquery/jsdom --- test/spec-dev/parseXML.js | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 test/spec-dev/parseXML.js diff --git a/test/spec-dev/parseXML.js b/test/spec-dev/parseXML.js new file mode 100644 index 0000000..c1eb474 --- /dev/null +++ b/test/spec-dev/parseXML.js @@ -0,0 +1,24 @@ +// Workaround for broken XML parser in node.js/jquery + +var jsdom = require("jsdom"); +var DOMParser = require('xmldom').DOMParser; +var xmlstring = 'yes'; + +jsdom.env( + '', + // ["http://code.jquery.com/jquery.js"], + function (errors, window) { + // var $ = window.$; + var $ = require('jQuery'); + + // override jquery xml parser with external XML lib xmldoc.DOMParser + $.parseXML = function(data) { return new DOMParser().parseFromString(data) };; + + // parse XML string, extract "process" node and keep the text value of the node + var result = $( $.parseXML(xmlstring)).find("process").text(); + + // should output "yes" + console.log("Testing jsdom/xmldom/jQuery $.parseXML() support: " + result); + } +); + -- 1.7.10.4