htmx/test/util.js
Carson Gross b4d95b8701 IE Fixes
2020-05-07 05:35:20 -07:00

60 lines
1.3 KiB
JavaScript

/* Test Utilities */
kutty.logger = function(elt, event, data) {
if(console) {
console.log(event, elt, data);
}
}
function byId(id) {
return document.getElementById(id);
}
function make(htmlStr) {
var makeFn = function(){
var range = document.createRange();
var fragment = range.createContextualFragment(htmlStr);
var wa = getWorkArea();
for (var i = fragment.childNodes.length - 1; i >= 0; i--) {
var child = fragment.childNodes[i];
kutty.processElement(child);
wa.appendChild(child);
}
return wa.lastChild;
}
if (getWorkArea()) {
return makeFn();
} else {
ready(makeFn);
}
}
function ready(fn) {
if (document.readyState !== 'loading') {
fn();
} else {
document.addEventListener('DOMContentLoaded', fn);
}
}
function getWorkArea() {
return byId("work-area");
}
function clearWorkArea() {
getWorkArea().innerHTML = "";
}
function removeWhiteSpace(str) {
return str.replace(/\s/g, "");
}
function makeServer(){
var server = sinon.fakeServer.create();
server.fakeHTTPMethods = true;
server.getHTTPMethod = function(xhr) {
return xhr.requestHeaders['X-HTTP-Method-Override'] || xhr.method;
}
return server;
}