konva/tests/js/Test.js

51 lines
1.2 KiB
JavaScript

function test(condition, message) {
if(!condition) {
throw new Error(message);
}
}
function log(message) {
console.log("LOG: " + message);
}
/**
* Test constructor
*/
function Test() {
this.testOnly = "";
this.counter = 0;
}
/**
* Test methods
*/
Test.prototype = {
addTestContainer: function(key) {
var row = document.createElement('div');
var container = document.createElement('div');
var testMessage = document.createElement('p');
container.id = key;
document.body.appendChild(testMessage);
row.appendChild(container);
row.className = "row";
document.body.appendChild(row);
return {
testMessage: testMessage
};
},
run: function() {
var tests = this.tests;
for(var key in tests) {
if(!this.testOnly || (this.testOnly && this.testOnly == key)) {
var obj = this.addTestContainer(key);
this.counter++;
console.log(this.counter + ") " + key);
tests[key](key);
obj.testMessage.innerHTML = this.counter + ") " + key + ': PASSED';
obj.testMessage.setAttribute("class", "green");
}
}
}
};