Skip to content

Commit

Permalink
feedback
Browse files Browse the repository at this point in the history
  • Loading branch information
patrickhulce committed May 30, 2017
1 parent ef2eccd commit 184537b
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 8 deletions.
12 changes: 9 additions & 3 deletions lighthouse-core/gather/computed/trace-of-tab.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,11 @@ class TraceOfTab extends ComputedArtifact {
.filter(e => e.pid === startedInPageEvt.pid)
.sort((event0, event1) => event0.ts - event1.ts);

const traceEnd = trace.traceEvents.reduce((max, evt) => {
const earliestTraceEvt = trace.traceEvents.reduce((min, evt) => {
return evt.ts === 0 || min.ts <= evt.ts ? min : evt;
}, {ts: Infinity});

const latestTraceEvt = trace.traceEvents.reduce((max, evt) => {
return max.ts > evt.ts ? max : evt;
});

Expand All @@ -107,7 +111,7 @@ class TraceOfTab extends ComputedArtifact {
firstPaint,
firstContentfulPaint,
firstMeaningfulPaint,
traceEnd,
traceEnd: latestTraceEvt,
onLoad,
domContentLoaded,
};
Expand All @@ -124,7 +128,9 @@ class TraceOfTab extends ComputedArtifact {
timings,
timestamps,
processEvents,
startedInPageEvt: startedInPageEvt,
earliestTraceEvt,
latestTraceEvt,
startedInPageEvt,
navigationStartEvt: navigationStart,
firstPaintEvt: firstPaint,
firstContentfulPaintEvt: firstContentfulPaint,
Expand Down
7 changes: 3 additions & 4 deletions lighthouse-core/lib/traces/tracing-processor.js
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,8 @@ class TraceProcessor {
*/
static getRiskToResponsiveness(tabTrace, startTime, endTime, percentiles) {
const navStart = tabTrace.navigationStartEvt.ts;
const traceStart = tabTrace.processEvents
.filter(evt => evt.ts !== 0)
.reduce((min, evt) => Math.min(evt.ts, min), Infinity);
const traceEnd = tabTrace.processEvents.reduce((max, evt) => Math.max(evt.ts, max), -Infinity);
const traceStart = tabTrace.earliestTraceEvt.ts;
const traceEnd = tabTrace.latestTraceEvt.ts;

// Range of responsiveness we care about. Default to bounds of model.
startTime = startTime === undefined ? (traceStart - navStart) / 1000 : startTime;
Expand Down Expand Up @@ -200,6 +198,7 @@ class TraceProcessor {
static getMainThreadTopLevelEvents(tabTrace, startTime = -Infinity, endTime = Infinity) {
let lastEvt = {start: -Infinity, end: -Infinity};
const topLevelEvents = [];
// note: processEvents is already sorted by event start
for (const event of tabTrace.processEvents) {
if (event.name !== SCHEDULABLE_TASK_TITLE || !event.dur) continue;

Expand Down
2 changes: 1 addition & 1 deletion lighthouse-core/test/lib/traces/tracing-processor-test.js
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ describe('TracingProcessor lib', () => {
const tabTrace = new TraceOfTab().compute_(trace);
const ret = TracingProcessor.getRiskToResponsiveness(tabTrace);
assert.equal(ret.durations.length, 637);
assert.equal(Math.round(ret.totalTime), 2157);
assert.equal(Math.round(ret.totalTime), 2159);
assert.equal(ret.clippedLength, 0);
assert.deepEqual(ret.percentiles, [0.5, 0.75, 0.9, 0.99, 1]);
});
Expand Down

0 comments on commit 184537b

Please sign in to comment.