this repo has no description
at cactus 118 lines 3.1 kB view raw
1<!doctype html><html lang=en-QS><meta charset=utf-8><meta name=viewport content="width=device-width, height=device-height, initial-scale=1" id=$meta_viewport> 2<title>Tests 2</title> 3 4<script src=../parse.js></script> 5<script src=../legacy.js></script> 6<script src=parse-ref.js></script> 7<script src=legacy-ref.js></script> 8<script src=../langs.js></script> 9 10<script src=test.js></script> 11<script src=draw.js></script> 12<script src=api.js></script> 13 14<link rel=stylesheet href=common.css> 15<link rel=stylesheet href=style.css> 16 17<body> 18<script src=nav.js></script> 19 20<!--<iframe id=$ref srcdoc="</script><script src=../langs.js></script><script>window.LANGS = new Markup_Langs([new Markup_12y2(), new Markup_Legacy()])</script>" hidden></iframe>--> 21 22opened: <time id=$start_time></time> | duration: <time id=$duration></time> 23<br> 24xhr times: 25<pre> 26 <time id=$xhr_time></time> 27</pre> 28<hr> 29<table class='data'> 30 <tr> <th> total <th> passed <th> pending <th> failed 31 <tr> <td id=$table_total> ? <td id=$table_passed> ? <td id=$table_pending> ? <td id=$table_failed> ? 32</table> 33<hr> 34<div id=$output></div> 35 36<script>'use strict' 37 Test.LANGS = new Markup_Langs([new Markup_12y2(), new Markup_Legacy()]) 38 let LANGS_REF = new Markup_Langs([new Markup_12y2_Ref(), new Markup_Legacy_Ref()]) 39 40 let start = performance.timing.fetchStart 41 $start_time.textContent = new Date(start).toLocaleString() 42 43 function run() { 44 $output.textContent = "" 45 46 let total, pending 47 let passed = 0, failed = 0 48 total = pending = Test.all.length 49 $table_total.textContent = total 50 function draw() { 51 $table_passed.textContent = passed 52 $table_failed.textContent = failed 53 $table_pending.textContent = pending 54 } 55 draw() 56 57 for (let test of Test.all) { 58 test.run() 59 if (test.status > 0) { 60 $output.append(test.draw_result()) 61 passed++ 62 } else { 63 $output.prepend(test.draw_result()) 64 failed++ 65 } 66 pending-- 67 draw() 68 } 69 let dur = Date.now() - start 70 $duration.textContent = dur+" ms" 71 } 72 73 window.onbeforeunload = ev=>{} // prevent b/f caching 74 75 function collect(list, is_message, filter) { 76 if (!list) 77 return 78 let got = 0 79 let before = Test.all.length 80 for (let c of list) { 81 let lang = c.values[is_message?'m':'markupLang'] 82 let text = c.text 83 if (filter && lang!==filter) 84 continue 85 let name = is_message ? "message:"+c.id : c.name 86 let tree = LANGS_REF.parse(text, lang) 87 if (tree.content.some(x => 'string'!=typeof x)) { 88 got++ 89 new Test({name}, text, lang, tree) 90 } 91 } 92 let nw = Test.all.length - before 93 console.log("got "+got+" items ("+nw+" new)") 94 } 95 96 let lang = "12y2" 97 98 load_data([ 99 { 100 type:'content', 101 fields:'text,values,id,name', 102 query:`!valuelike({{markupLang}},{{"${lang}"}})`, 103 order:'id_desc', 104 }, { 105 type:'message', 106 fields:'text,values,id,createDate,contentId,edited', 107 query:`!valuelike({{m}},{{"${lang}"}}) AND text LIKE {{%\`\`\`%}}`, 108 order:'id_desc', 109 limit:1000, 110 }, 111 ]).then(async (lmm)=>{ 112 collect(lmm.content, false, lang) 113 collect(lmm.message, true, lang) 114 window.setTimeout(()=>{ 115 run() 116 }) 117 }) 118</script>