From ea346a785dc1b3f7c156f6fc33da634e1f1a627b Mon Sep 17 00:00:00 2001 From: Chris Schlaeger Date: Tue, 12 Aug 2014 21:56:44 +0200 Subject: Adding jquery, flot and openlayers to be included with the GEM. --- misc/openlayers/tests/node.js/mockdom.js | 104 +++++++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 misc/openlayers/tests/node.js/mockdom.js (limited to 'misc/openlayers/tests/node.js/mockdom.js') diff --git a/misc/openlayers/tests/node.js/mockdom.js b/misc/openlayers/tests/node.js/mockdom.js new file mode 100644 index 0000000..68c088a --- /dev/null +++ b/misc/openlayers/tests/node.js/mockdom.js @@ -0,0 +1,104 @@ +XMLHttpRequest = function() { + return { + 'open': function() { }, + 'send': function() { } + } +}; + +navigator = { + 'appName': 'mockdom', + 'userAgent': 'mockdom', + 'appVersion': '0.1', + 'language': 'en', + 'userLanguage': 'en' +} + +element = function(type) { + type = type || ""; + + return { + 'childNodes': [], + 'className': '', + 'tagName': type.toUpperCase(), + 'style': {}, + 'setAttribute': function(attr, value) { + this[attr] = value; + }, + 'appendChild': function(element) { + if (this.childNodes.length) { + this.childNodes[this.childNodes.length - 1].nextSibling = element; + } else { + this.firstChild = element; + } + element.parentNode = this; + this.childNodes.push(element); + + }, + 'removeChild': function(element) { + var i = this.childNodes.indexOf(element); + this.childNodes.splice(i, 1); + }, + 'addEventListener': function() { + }, + 'removeEventListener': function() { + }, + 'getElementsByTagName': function(name, externalList) { + var uc = name.toUpperCase(); + var list = externalList || []; + for(var i = 0; i < this.childNodes.length; i++) { + if (this.childNodes[i].tagName == uc) { + list.push(this.childNodes[i]); + } + this.childNodes[i].getElementsByTagName(name, list); + } + return list; + }, + 'getElementById': function(id) { + for(var i = 0; i < this.childNodes.length; i++) { + if (this.childNodes[i].id == id) { + return this.childNodes[i]; + } else { + var elem = this.childNodes[i].getElementById(id); + if (elem) { + return elem + } + } + } + } + } +}; + +document = element(); +document.createElement = function(type) { + return element(type); +}; +document.createTextNode = function(text) { + var e = element("Text"); + e.innerHTML = text; +} + +document.appendChild(element("head")); +document.body = element("body"); +document.appendChild(document.body); + +window = { + 'addEventListener': function() { + }, + 'getSelection': function() { + return { + collapseToStart: function() {} + } + }, + document: document, + navigator: navigator, + location: { + href: '#', + port: '', + hostname: 'openlayers.org', + host: 'openlayers.org', + proto: 'https' + } +}; +document.location = window.location; + +window.Function = Function; -- cgit v1.2.3