Mercurial > hg > webaudioevaluationtool
changeset 2390:32f077f5849a
Potential fix for #70
author | Nicholas Jillings <nicholas.jillings@mail.bcu.ac.uk> |
---|---|
date | Wed, 25 May 2016 15:51:14 +0100 |
parents | 5b755f508e2e |
children | 521e828089eb |
files | test_create/test_core.js |
diffstat | 1 files changed, 29 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/test_create/test_core.js Fri May 20 20:18:49 2016 +0200 +++ b/test_create/test_core.js Wed May 25 15:51:14 2016 +0100 @@ -282,7 +282,7 @@ this.content.appendChild(this.select); this.description = document.createElement("p"); this.content.appendChild(this.description); - this.testsXML = interfaceSpecs.getElementsByTagName('tests')[0].children; + this.testsXML = interfaceSpecs.getElementsByTagName('tests')[0].getElementsByTagName('test'); for (var i=0; i<this.testsXML.length; i++) { var option = document.createElement('option'); @@ -345,9 +345,10 @@ this.testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; this.interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(this.testXML.getAttribute("interface"))[0].getAllElementsByTagName("checks")[0]; this.testXML = this.testXML.getAllElementsByTagName("checks"); - for (var i=0; i<this.interfaceXML.children.length; i++) + var interfaceXMLChildren = this.interfaceXML.getElementsByTagName('entry'); + for (var i=0; i<interfaceXMLChildren.length; i++) { - var interfaceNode = this.interfaceXML.children[i]; + var interfaceNode = interfaceXMLChildren[i]; var checkName = interfaceNode.getAttribute('name'); var testNode if (this.testXML.length > 0) @@ -472,9 +473,10 @@ this.testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; this.interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(this.testXML.getAttribute("interface"))[0].getAllElementsByTagName("metrics")[0]; this.testXML = this.testXML.getAllElementsByTagName("metrics"); - for (var i=0; i<this.interfaceXML.children.length; i++) + var interfaceXMLChildren = this.interfaceXML.getElementsByTagName('entry'); + for (var i=0; i<interfaceXMLChildren.length; i++) { - var interfaceNode = this.interfaceXML.children[i]; + var interfaceNode = interfaceXMLChildren[i]; var checkName = interfaceNode.getAttribute('name'); var testNode if (this.testXML.length > 0) @@ -599,9 +601,10 @@ this.testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; this.interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(this.testXML.getAttribute("interface"))[0].getAllElementsByTagName("show")[0]; this.testXML = this.testXML.getAllElementsByTagName("show"); - for (var i=0; i<this.interfaceXML.children.length; i++) + var interfaceXMLChildren = this.interfaceXML.getElementsByTagName('entry'); + for (var i=0; i<interfaceXMLChildren.length; i++) { - var interfaceNode = this.interfaceXML.children[i]; + var interfaceNode = interfaceXMLChildren[i]; var checkName = interfaceNode.getAttribute('name'); var testNode if (this.testXML.length > 0) @@ -987,7 +990,7 @@ handleEvent: function(event) { this.parent.scaleRoot.scales = []; var protoScale = interfaceSpecs.getAllElementsByTagName('scaledefinitions')[0].getAllElementsByName(event.currentTarget.value)[0]; - var protoMarkers = protoScale.children; + var protoMarkers = protoScale.getElementsByTagName("scale"); for (var i=0; i<protoMarkers.length; i++) { var marker = { @@ -1011,7 +1014,7 @@ this.parent = parent; // Generate Pre-Set dropdown - var protoScales = interfaceSpecs.getAllElementsByTagName('scaledefinitions')[0].children; + var protoScales = interfaceSpecs.getAllElementsByTagName('scaledefinitions')[0].getElementsByTagName("scale"); this.preset.input.innerHTML = ""; for (var i=0; i<protoScales.length; i++) @@ -1186,7 +1189,7 @@ this.dataType = schema.getAttribute('type'); if (this.dataType == undefined) { if (schema.childElementCount > 0) { - if (schema.children[0].nodeName == "xs:simpleType") { + if (schema.firstElementChild.nodeName == "xs:simpleType") { this.dataType = schema.getAllElementsByTagName("xs:restriction")[0].getAttribute("base"); } } @@ -1326,7 +1329,7 @@ span.textContent = "Your XML document is linked below. On most browsers, simply right click on the link and select 'Save As'. Or clicking on the link may download the file directly. " obj.content.appendChild(span); var link = document.createElement("div"); - link.appendChild(doc.children[0]); + link.appendChild(doc.firstElementChild); var file = [link.innerHTML]; var bb = new Blob(file,{type : 'application/xml'}); var dnlk = window.URL.createObjectURL(bb); @@ -1394,14 +1397,15 @@ var testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; var interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(testXML.getAttribute("interface"))[0].getAllElementsByTagName("metrics")[0]; testXML = testXML.getAllElementsByTagName("metrics"); - for (var i=0; i<interfaceXML.children.length; i++) + var interfaceXMLChild = interfaceXML.firstElementChild; + while(interfaceXMLChild) { var obj = { input: document.createElement('input'), root: document.createElement('div'), text: document.createElement('span'), specification: specification.metrics.enabled, - name: interfaceXML.children[i].getAttribute("name"), + name: interfaceXMLChild.getAttribute("name"), handleEvent: function() { for (var i=0; i<this.specification.length; i++) @@ -1431,7 +1435,7 @@ obj.input.type = "checkbox"; obj.root.appendChild(obj.text); obj.root.appendChild(obj.input); - obj.text.textContent = checkText.children[i].textContent; + obj.text.textContent = checkText.getAllElementsByName(interfaceXMLChild.getAttribute("name"))[0].textContent; metric.children.push(obj); metric.childrenDOM.appendChild(obj.root); for (var j=0; j<specification.metrics.enabled.length; j++) @@ -1442,6 +1446,7 @@ break; } } + interfaceXMLChild = interfaceXMLChild.nextElementSibling; } // Now both before and after surveys @@ -1640,9 +1645,10 @@ var testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; var interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(testXML.getAttribute("interface"))[0].getAllElementsByTagName("checks")[0]; testXML = testXML.getAllElementsByTagName("checks"); - for (var i=0; i<interfaceXML.children.length; i++) + var interfaceXMLChild = interfaceXML.firstElementChild; + while (interfaceXMLChild) { - var obj = new this.createIOasAttr(interfaceXML.children[i].getAttribute("name"),this.specification,this,"check"); + var obj = new this.createIOasAttr(interfaceXMLChild.getAttribute("name"),this.specification,this,"check"); for (var option of this.specification.options) { if (option.name == obj.name) @@ -1661,10 +1667,11 @@ } } var text = document.createElement('span'); - text.textContent = checkText.children[i].textContent; + text.textContent = checkText.getAllElementsByName(interfaceXMLChild.getAttribute("name"))[0].textContent; obj.root.appendChild(text); checks.attributeDOM.appendChild(obj.root); checks.attributes.push(obj); + interfaceXMLChild = interfaceXMLChild.nextElementSibling; } this.children.push(checks); this.childrenDOM.appendChild(checks.rootDOM); @@ -1675,9 +1682,10 @@ testXML = interfaceSpecs.getElementsByTagName("tests")[0].getAllElementsByName(interfaceName)[0]; interfaceXML = interfaceSpecs.getAllElementsByTagName("interfaces")[0].getAllElementsByName(testXML.getAttribute("interface"))[0].getAllElementsByTagName("show")[0]; testXML = testXML.getAllElementsByTagName("show"); - for (var i=0; i<interfaceXML.children.length; i++) + interfaceXMLChild = interfaceXML.firstElementChild; + while(interfaceXMLChild) { - var obj = new this.createIOasAttr(interfaceXML.children[i].getAttribute("name"),this.specification,this,"show"); + var obj = new this.createIOasAttr(interfaceXMLChild.getAttribute("name"),this.specification,this,"show"); for (var option of this.specification.options) { if (option.name == obj.name) @@ -1696,10 +1704,11 @@ } } var text = document.createElement('span'); - text.textContent = checkText.children[i].textContent; + text.textContent = checkText.getAllElementsByName(interfaceXMLChild.getAttribute("name"))[0].textContent; obj.root.appendChild(text); show.attributeDOM.appendChild(obj.root); show.attributes.push(obj); + interfaceXMLChild = interfaceXMLChild.nextElementSibling; } this.children.push(show); this.childrenDOM.appendChild(show.rootDOM);