| (async function(testRunner) { |
| var {page, session, dp} = await testRunner.startHTML(` |
| <link rel='stylesheet' href='${testRunner.url('resources/coverage.css')}'> |
| </head> |
| <h1 class='class'>Class Selector</h1> |
| <p id='id'>ID Selector</p> |
| <div></div>`, 'Test rule usage tracking'); |
| |
| var CSSHelper = await testRunner.loadScript('../resources/css-helper.js'); |
| var cssHelper = new CSSHelper(testRunner, dp); |
| await dp.DOM.enable(); |
| await dp.CSS.enable(); |
| |
| await dp.CSS.startRuleUsageTracking(); |
| var rules = (await dp.CSS.stopRuleUsageTracking()).result.ruleUsage; |
| rules.sort((a, b) => a.startOffset - b.startOffset); |
| var usedLines = rules.filter(rule => rule.used); |
| var unusedLines = rules.filter(rule => !rule.used); |
| |
| testRunner.log('Used rules offsets: ' + usedLines.length); |
| for (var line of usedLines) |
| testRunner.log(line.startOffset); |
| |
| testRunner.log('Unused rules offsets: ' + unusedLines.length); |
| for (var line of unusedLines) |
| testRunner.log(line.startOffset); |
| |
| testRunner.completeTest(); |
| }) |