diff --git a/index.html b/index.html index b0ae6ae..d49adcb 100644 --- a/index.html +++ b/index.html @@ -77,7 +77,8 @@ const now=new Date(); updatedEl.textContent=now.toLocaleDateString('en-US',{month:'short',year:'numeric'}); updatedEl.dateTime=now.toISOString().split('T')[0]; - const grade=p=>p>=.95?'A+':p>=.9?'A':p>=.85?'A-':p>=.75?'B+':p>=.65?'B':p>=.5?'B-':'C'; + const grades=[[.97,'A+'],[.93,'A'],[.9,'A-'],[.87,'B+'],[.83,'B'],[.8,'B-'],[.77,'C+'],[.73,'C'],[.7,'C-'],[.6,'D'],[0,'F']]; + const gradeOf=ratio=>grades.find(([floor])=>ratio>=floor)[1]; const run=async()=>{ const readme=await fetch('./README').then(r=>r.text()); const genTimes=await fetch('./results.json').then(r=>r.json()); @@ -94,7 +95,7 @@ `; container.appendChild(card); const list=get(`list-${sModel}`); - let pass=0,fail=0; + let passed=0; for(const test of tests){ const li=document.createElement('li'); li.className='flex items-center gap-3 text-sm'; @@ -113,37 +114,25 @@ await tMod.default.runTest(lMod.default); })(); await Promise.race([testP,new Promise((_,r)=>setTimeout(()=>r(new Error('Timeout')),12000))]); - pass++; }catch(e){ console.error(`${model} - ${test}: `,e); status='❌'; - fail++; } + if(status==='✅')passed++; const timeStr=time?.toFixed(3)??'N/A'; li.innerHTML=`${status} ${test}${timeStr}s`; } - const total=pass+fail; - const pct=total?pass/total:0; - const summary=document.createElement('li'); - summary.className='pt-4 border-t border-gray-100 mt-4'; - summary.innerHTML=` -
-
- Performance Summary - ${total} tests -
-
-
-

Right / Wrong

-

${pass} / ${fail}

-
-
-

Grade

- ${grade(pct)} -
-
-
`; - list.appendChild(summary); + const ratio=tests.length?passed/tests.length:0; + const li=document.createElement('li'); + li.className='mt-3 pt-3 border-t border-gray-200 flex items-center text-sm justify-between'; + const grade=gradeOf(ratio); + li.innerHTML=` + Score + + ${passed}/${tests.length} + ${grade} + `; + list.appendChild(li); } }; run();