# HG changeset patch # User Nicholas Jillings # Date 1433330114 -3600 # Node ID fa33bf58d8639eb2332b65593a27026408d75c1c # Parent dcc5534841034eccfc8db0d2fca0c7add512534e Create_test: Submit button exposes completed XML file. diff -r dcc553484103 -r fa33bf58d863 test_create/test_create.html --- a/test_create/test_create.html Wed Jun 03 12:07:07 2015 +0100 +++ b/test_create/test_create.html Wed Jun 03 12:15:14 2015 +0100 @@ -63,92 +63,112 @@ function buttonClickedSubmit() { var ready = validate(); if (ready == true) { - var xmlDoc = document.createElement('BrowserEvalProjectDocument'); - var setup = document.createElement('setup'); - setup.setAttribute('interface',document.getElementById('interface').value); - if (document.getElementById('projectReturn').value == "") { - setup.setAttribute('projectReturn',"null"); - } else { - setup.setAttribute('projectReturn',document.getElementById('projectReturn').value); + var xmlDoc = buildXML(); + var inject = document.getElementById('errorMessage'); + createProjectSave(xmlDoc, inject); + } + } + + function createProjectSave(xmlDoc, injectPoint) { + var parent = document.createElement("div"); + parent.appendChild(xmlDoc); + var file = [parent.innerHTML]; + var bb = new Blob(file,{type : 'application/xml'}); + var dnlk = window.URL.createObjectURL(bb); + var a = document.createElement("a"); + a.hidden = ''; + a.href = dnlk; + a.download = "save.xml"; + a.textContent = "Save File"; + injectPoint.appendChild(a); + } + + function buildXML() { + var xmlDoc = document.createElement('BrowserEvalProjectDocument'); + var setup = document.createElement('setup'); + setup.setAttribute('interface',document.getElementById('interface').value); + if (document.getElementById('projectReturn').value == "") { + setup.setAttribute('projectReturn',"null"); + } else { + setup.setAttribute('projectReturn',document.getElementById('projectReturn').value); + } + setup.setAttribute('randomiseOrder',document.getElementById('randomisePageOrder').checked); + setup.setAttribute('collectMetrics',document.getElementById('collectMetrics').checked); + + var globalPreTest = document.createElement('preTest'); + var options = document.getElementById('globalPreTest').getElementsByClassName('head'); + constructPrePost(globalPreTest, options); + + var globalPostTest = document.createElement('postTest'); + options = document.getElementById('globalPostTest').getElementsByClassName('head'); + constructPrePost(globalPostTest, options); + + var globalMetrics = document.createElement('metric'); + options = document.getElementById('globalMetric').getElementsByClassName('attrib')[0].getElementsByTagName('input'); + for (var i=0; i

Create Test Setup XML

- +