1eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block// runs a test and writes a log 2eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Blockfunction t(collection, elements) { 3eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block if (window.layoutTestController) 4eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block layoutTestController.dumpAsText(); 5eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block 6eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block var log = "", 7eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block r = document.getElementById("r"), 8eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block pass = true 9eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block if(collection.length != elements.length) { 10eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block pass = false 11eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block log += "Got " + collection.length + " elements, expected " + elements.length + ". " 12eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block } 13eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block for(var i = 0, max = collection.length > elements.length ? elements.length : collection.length; i < max; i++) { 14eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block if(collection[i] != elements[i]) { 15eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block pass = false 16eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block log += "Got element `" + collection[i].tagName + "` (" + collection[i].namespaceURI + ")" 17eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block log += ", expected element `" + elements[i].tagName + "` (" + elements[i].namespaceURI + "). " 18eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block } 19eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block } 20eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block r.textContent = pass ? "PASS" : "FAIL (" + log + ")" 21eff69b907ef2cd3a9af0351287a929c66f58e3f6Steve Block} 22