1<!doctype html> 2<html lang="en-us"> 3 <head> 4 <meta charset="utf-8"> 5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 6 <link rel="shortcut icon" href="data:image/x-icon;," type="image/x-icon"> 7 <link rel="stylesheet" href="common/emscripten.css"/> 8 <link rel="stylesheet" href="common/testing.css"/> 9 <title>sqlite3-api batch SQL runner</title> 10 </head> 11 <body> 12 <header id='titlebar'><span>sqlite3-api batch SQL runner</span></header> 13 <!-- emscripten bits --> 14 <figure id="module-spinner"> 15 <div class="spinner"></div> 16 <div class='center'><strong>Initializing app...</strong></div> 17 <div class='center'> 18 On a slow internet connection this may take a moment. If this 19 message displays for "a long time", intialization may have 20 failed and the JavaScript console may contain clues as to why. 21 </div> 22 </figure> 23 <div class="emscripten" id="module-status">Downloading...</div> 24 <div class="emscripten"> 25 <progress value="0" max="100" id="module-progress" hidden='1'></progress> 26 </div><!-- /emscripten bits --> 27 <p> 28 This page is for batch-running extracts from the output 29 of <tt>speedtest1 --script</tt>, as well as other standalone SQL 30 scripts. 31 </p> 32 <p id='warn-list' class='warning'>ACHTUNG: this file requires a generated input list 33 file. Run "make batch" from this directory to generate it. 34 </p> 35 <p id='warn-opfs' class='warning'>WARNING: if the WASMFS/OPFS layer crashes, this page may 36 become completely unresponsive and need to be closed and 37 reloaded to recover. 38 </p> 39 <hr> 40 <div> 41 <select class='disable-during-eval' id='sql-select'> 42 <option disabled selected>Populated via script code</option> 43 </select> 44 <button class='disable-during-eval' id='sql-run'>Run selected SQL</button> 45 <button class='disable-during-eval' id='sql-run-next'>Run next...</button> 46 <button class='disable-during-eval' id='sql-run-remaining'>Run all remaining...</button> 47 <button class='disable-during-eval' id='export-metrics'>Export metrics (WIP)</button> 48 <button class='disable-during-eval' id='db-reset'>Reset db</button> 49 <button id='output-clear'>Clear output</button> 50 <span class='input-wrapper'> 51 <input type='checkbox' class='disable-during-eval' id='cb-reverse-log-order' checked></input> 52 <label for='cb-reverse-log-order'>Reverse log order</label> 53 </span> 54 </div> 55 <hr> 56 <div id='reverse-log-notice' class='hidden'>(Log output is in reverse order, newest first!)</div> 57 <div id='test-output'></div> 58 59 <script src="sqlite3.js"></script> 60 <script src="common/SqliteTestUtil.js"></script> 61 <script src="batch-runner.js"></script> 62 <style> 63 body { 64 display: flex; 65 flex-direction: column; 66 flex-wrap: wrap; 67 } 68 .warning { color: firebrick; } 69 .input-wrapper { 70 white-space: nowrap; 71 } 72 #test-output { 73 border: 1px inset; 74 padding: 0.25em; 75 /*max-height: 30em;*/ 76 overflow: auto; 77 white-space: break-spaces; 78 display: flex; flex-direction: column; 79 } 80 #test-output.reverse { 81 flex-direction: column-reverse; 82 } 83 .hidden { 84 position: absolute !important; 85 opacity: 0 !important; 86 pointer-events: none !important; 87 display: none !important; 88 } 89 </style> 90 </body> 91</html> 92