OLD | NEW |
(Empty) | |
| 1 // Perf Tests run a maximum of 20 times, |
| 2 // make sure we have an equal amount of characters |
| 3 // for each run. |
| 4 var selectionSize = fallbackChars.length / 21; |
| 5 var target; |
| 6 |
| 7 function test() { |
| 8 var charSelection = ""; |
| 9 for(var i=0; i < selectionSize; i++) { |
| 10 var selectedCharIndex = Math.floor(Math.random() * fallbackChars.length)
; |
| 11 if(!fallbackChars[selectedCharIndex]) |
| 12 continue; |
| 13 charSelection += fallbackChars[selectedCharIndex]; |
| 14 fallbackChars.splice(selectedCharIndex, 1); |
| 15 } |
| 16 if (charSelection.length) |
| 17 replaceTextAndWaitForLayout(charSelection); |
| 18 } |
| 19 |
| 20 function replaceTextAndWaitForLayout(charSelection) { |
| 21 while (target.firstChild) |
| 22 target.removeChild(target.firstChild); |
| 23 target.appendChild(document.createTextNode(charSelection)); |
| 24 target.offsetHeight; |
| 25 } |
| 26 |
| 27 function cleanup() { |
| 28 replaceTextAndWaitForLayout(""); |
| 29 } |
| 30 |
| 31 function startTest() { |
| 32 target = document.querySelector("#target"); |
| 33 PerfTestRunner.measureTime({ run: test, done: cleanup, description: "Per-cha
racter font fallback" }); |
| 34 } |
OLD | NEW |