Skip to content

Commit a0397ce

Browse files
paulirishDevtools-frontend LUCI CQ
authored andcommitted
RPP: Update TraceTree rootNode method signatures to use options object
Argument list was getting a bit long in the tooth. Bug: none Change-Id: I254ca64804e6d63aa479e4a3d253e85155a66e57 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6236533 Auto-Submit: Paul Irish <[email protected]> Commit-Queue: Paul Irish <[email protected]> Reviewed-by: Adriana Ixba <[email protected]>
1 parent 862f232 commit a0397ce

File tree

5 files changed

+103
-43
lines changed

5 files changed

+103
-43
lines changed

front_end/models/trace/extras/TraceTree.test.ts

Lines changed: 50 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,11 @@ describeWithEnvironment('TraceTree', () => {
2929
eventB,
3030
eventC,
3131
];
32-
const root =
33-
new TraceTree.TopDownRootNode(events, [], Trace.Types.Timing.Milli(0), Trace.Types.Timing.Milli(200_000));
32+
const root = new TraceTree.TopDownRootNode(events, {
33+
filters: [],
34+
startTime: Trace.Types.Timing.Milli(0),
35+
endTime: Trace.Types.Timing.Milli(200_000),
36+
});
3437

3538
const children = root.children();
3639
assert.strictEqual(children.size, 3);
@@ -57,8 +60,11 @@ describeWithEnvironment('TraceTree', () => {
5760
eventD,
5861
eventB,
5962
];
60-
const root =
61-
new TraceTree.TopDownRootNode(events, [], Trace.Types.Timing.Milli(0), Trace.Types.Timing.Milli(200_000));
63+
const root = new TraceTree.TopDownRootNode(events, {
64+
filters: [],
65+
startTime: Trace.Types.Timing.Milli(0),
66+
endTime: Trace.Types.Timing.Milli(200_000),
67+
});
6268

6369
const rootChildren = root.children();
6470
assert.strictEqual(rootChildren.size, 2);
@@ -92,8 +98,11 @@ describeWithEnvironment('TraceTree', () => {
9298
eventC,
9399
eventD,
94100
];
95-
const root =
96-
new TraceTree.TopDownRootNode(events, [], Trace.Types.Timing.Milli(0), Trace.Types.Timing.Milli(200_000));
101+
const root = new TraceTree.TopDownRootNode(events, {
102+
filters: [],
103+
startTime: Trace.Types.Timing.Milli(0),
104+
endTime: Trace.Types.Timing.Milli(200_000),
105+
});
97106

98107
const rootChildren = root.children();
99108
assert.strictEqual(rootChildren.size, 2);
@@ -130,8 +139,11 @@ describeWithEnvironment('TraceTree', () => {
130139
eventD,
131140
eventE,
132141
];
133-
const root =
134-
new TraceTree.TopDownRootNode(events, [], Trace.Types.Timing.Milli(0), Trace.Types.Timing.Milli(200_000));
142+
const root = new TraceTree.TopDownRootNode(events, {
143+
filters: [],
144+
startTime: Trace.Types.Timing.Milli(0),
145+
endTime: Trace.Types.Timing.Milli(200_000),
146+
});
135147

136148
const rootChildren = root.children();
137149
assert.strictEqual(rootChildren.size, 2);
@@ -175,8 +187,11 @@ describeWithEnvironment('TraceTree', () => {
175187
eventB,
176188
eventC,
177189
];
178-
const root =
179-
new TraceTree.TopDownRootNode(events, [], Trace.Types.Timing.Milli(0), Trace.Types.Timing.Milli(200_000));
190+
const root = new TraceTree.TopDownRootNode(events, {
191+
filters: [],
192+
startTime: Trace.Types.Timing.Milli(0),
193+
endTime: Trace.Types.Timing.Milli(200_000),
194+
});
180195

181196
const children = root.children();
182197
assert.strictEqual(children.size, 3);
@@ -203,9 +218,12 @@ describeWithEnvironment('TraceTree', () => {
203218
eventD,
204219
eventB,
205220
];
206-
const root = new TraceTree.BottomUpRootNode(
207-
events, new Trace.Extras.TraceFilter.InvisibleEventsFilter([]), [], Trace.Types.Timing.Milli(0),
208-
Trace.Types.Timing.Milli(200_000), null);
221+
const root = new TraceTree.BottomUpRootNode(events, {
222+
textFilter: new Trace.Extras.TraceFilter.InvisibleEventsFilter([]),
223+
filters: [],
224+
startTime: Trace.Types.Timing.Milli(0),
225+
endTime: Trace.Types.Timing.Milli(200_000),
226+
});
209227
const rootChildren = root.children();
210228
assert.strictEqual(rootChildren.size, 4);
211229

@@ -257,9 +275,12 @@ describeWithEnvironment('TraceTree', () => {
257275
eventD,
258276
];
259277

260-
const root = new TraceTree.BottomUpRootNode(
261-
events, new Trace.Extras.TraceFilter.InvisibleEventsFilter([]), [], Trace.Types.Timing.Milli(0),
262-
Trace.Types.Timing.Milli(200_000), null);
278+
const root = new TraceTree.BottomUpRootNode(events, {
279+
textFilter: new Trace.Extras.TraceFilter.InvisibleEventsFilter([]),
280+
filters: [],
281+
startTime: Trace.Types.Timing.Milli(0),
282+
endTime: Trace.Types.Timing.Milli(200_000),
283+
});
263284
const rootChildren = root.children();
264285
assert.strictEqual(rootChildren.size, 4);
265286

@@ -313,9 +334,13 @@ describeWithEnvironment('TraceTree', () => {
313334
eventD,
314335
eventE,
315336
];
316-
const root = new TraceTree.BottomUpRootNode(
317-
events, new Trace.Extras.TraceFilter.InvisibleEventsFilter([]), [], Trace.Types.Timing.Milli(0),
318-
Trace.Types.Timing.Milli(200_000), null);
337+
338+
const root = new TraceTree.BottomUpRootNode(events, {
339+
textFilter: new Trace.Extras.TraceFilter.InvisibleEventsFilter([]),
340+
filters: [],
341+
startTime: Trace.Types.Timing.Milli(0),
342+
endTime: Trace.Types.Timing.Milli(200_000),
343+
});
319344

320345
const rootChildren = root.children();
321346
assert.strictEqual(rootChildren.size, 5);
@@ -351,8 +376,12 @@ describeWithEnvironment('TraceTree', () => {
351376
Trace.Types.Events.Name.RUN_TASK,
352377
]),
353378
];
354-
const root =
355-
new TraceTree.BottomUpRootNode(mainThread.entries, textFilter, modelFilters, bounds.min, bounds.max, null);
379+
const root = new TraceTree.BottomUpRootNode(mainThread.entries, {
380+
textFilter,
381+
filters: modelFilters,
382+
startTime: bounds.min,
383+
endTime: bounds.max,
384+
});
356385
const rootChildren = root.children();
357386
const values = Array.from(rootChildren.values());
358387
// Find the list of profile calls that have been calculated as the top level rows in the Bottom Up table.

front_end/models/trace/extras/TraceTree.ts

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -256,9 +256,15 @@ export class TopDownRootNode extends TopDownNode {
256256
override selfTime: number;
257257

258258
constructor(
259-
events: Types.Events.Event[], filters: TraceFilter[], startTime: Types.Timing.Milli, endTime: Types.Timing.Milli,
260-
doNotAggregate?: boolean, eventGroupIdCallback?: ((arg0: Types.Events.Event) => string)|null,
261-
includeInstantEvents?: boolean) {
259+
events: Types.Events.Event[],
260+
{filters, startTime, endTime, doNotAggregate, eventGroupIdCallback, includeInstantEvents}: {
261+
filters: TraceFilter[],
262+
startTime: Types.Timing.Milli,
263+
endTime: Types.Timing.Milli,
264+
doNotAggregate?: boolean,
265+
eventGroupIdCallback?: ((arg0: Types.Events.Event) => string)|null,
266+
includeInstantEvents?: boolean,
267+
}) {
262268
super('', events[0], null);
263269
this.event = events[0];
264270
this.root = this;
@@ -273,7 +279,6 @@ export class TopDownRootNode extends TopDownNode {
273279
this.totalTime = endTime - startTime;
274280
this.selfTime = this.totalTime;
275281
}
276-
277282
override children(): ChildrenCache {
278283
return this.childrenInternal || this.grouppedTopNodes();
279284
}
@@ -313,13 +318,16 @@ export class BottomUpRootNode extends Node {
313318
readonly filter: (e: Types.Events.Event) => boolean;
314319
readonly startTime: Types.Timing.Milli;
315320
readonly endTime: Types.Timing.Milli;
316-
private eventGroupIdCallback: ((arg0: Types.Events.Event) => string)|null;
321+
private eventGroupIdCallback: ((arg0: Types.Events.Event) => string)|null|undefined;
317322
override totalTime: number;
318323

319-
constructor(
320-
events: Types.Events.Event[], textFilter: TraceFilter, filters: readonly TraceFilter[],
321-
startTime: Types.Timing.Milli, endTime: Types.Timing.Milli,
322-
eventGroupIdCallback: ((arg0: Types.Events.Event) => string)|null) {
324+
constructor(events: Types.Events.Event[], {textFilter, filters, startTime, endTime, eventGroupIdCallback}: {
325+
textFilter: TraceFilter,
326+
filters: readonly TraceFilter[],
327+
startTime: Types.Timing.Milli,
328+
endTime: Types.Timing.Milli,
329+
eventGroupIdCallback?: ((arg0: Types.Events.Event) => string)|null,
330+
}) {
323331
super('', events[0]);
324332
this.childrenInternal = null;
325333
this.events = events;

front_end/panels/timeline/ThirdPartyTreeView.ts

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,13 @@ export class ThirdPartyTreeViewWidget extends TimelineTreeView.TimelineTreeView
7070
const entityMapper = this.entityMapper();
7171

7272
if (!parsedTrace || !entityMapper) {
73-
return new Trace.Extras.TraceTree.BottomUpRootNode(
74-
[], this.textFilter(), this.filtersWithoutTextFilter(), this.startTime, this.endTime,
75-
this.groupingFunction());
73+
return new Trace.Extras.TraceTree.BottomUpRootNode([], {
74+
textFilter: this.textFilter(),
75+
filters: this.filtersWithoutTextFilter(),
76+
startTime: this.startTime,
77+
endTime: this.endTime,
78+
eventGroupIdCallback: this.groupingFunction(),
79+
});
7680
}
7781

7882
// Update summaries.
@@ -91,8 +95,13 @@ export class ThirdPartyTreeViewWidget extends TimelineTreeView.TimelineTreeView
9195
// the main flame chart).
9296
const filter = new Trace.Extras.TraceFilter.VisibleEventsFilter(
9397
Utils.EntryStyles.visibleTypes().concat([Trace.Types.Events.Name.SYNTHETIC_NETWORK_REQUEST]));
94-
const node = new Trace.Extras.TraceTree.BottomUpRootNode(
95-
relatedEvents, this.textFilter(), [filter], this.startTime, this.endTime, this.groupingFunction());
98+
const node = new Trace.Extras.TraceTree.BottomUpRootNode(relatedEvents, {
99+
textFilter: this.textFilter(),
100+
filters: [filter],
101+
startTime: this.startTime,
102+
endTime: this.endTime,
103+
eventGroupIdCallback: this.groupingFunction(),
104+
});
96105
return node;
97106
}
98107

front_end/panels/timeline/TimelineTreeView.ts

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -437,10 +437,15 @@ export class TimelineTreeView extends
437437
throw new Error('Not Implemented');
438438
}
439439

440-
buildTopDownTree(doNotAggregate: boolean, groupIdCallback: ((arg0: Trace.Types.Events.Event) => string)|null):
440+
buildTopDownTree(doNotAggregate: boolean, eventGroupIdCallback: ((arg0: Trace.Types.Events.Event) => string)|null):
441441
Trace.Extras.TraceTree.Node {
442-
return new Trace.Extras.TraceTree.TopDownRootNode(
443-
this.selectedEvents(), this.filters(), this.startTime, this.endTime, doNotAggregate, groupIdCallback);
442+
return new Trace.Extras.TraceTree.TopDownRootNode(this.selectedEvents(), {
443+
filters: this.filters(),
444+
startTime: this.startTime,
445+
endTime: this.endTime,
446+
doNotAggregate,
447+
eventGroupIdCallback,
448+
});
444449
}
445450

446451
populateColumns(columns: DataGrid.DataGrid.ColumnDescriptor[]): void {
@@ -1153,9 +1158,13 @@ export class BottomUpTimelineTreeView extends AggregatedTimelineTreeView {
11531158
}
11541159

11551160
override buildTree(): Trace.Extras.TraceTree.Node {
1156-
return new Trace.Extras.TraceTree.BottomUpRootNode(
1157-
this.selectedEvents(), this.textFilter(), this.filtersWithoutTextFilter(), this.startTime, this.endTime,
1158-
this.groupingFunction(this.groupBySetting.get()));
1161+
return new Trace.Extras.TraceTree.BottomUpRootNode(this.selectedEvents(), {
1162+
textFilter: this.textFilter(),
1163+
filters: this.filtersWithoutTextFilter(),
1164+
startTime: this.startTime,
1165+
endTime: this.endTime,
1166+
eventGroupIdCallback: this.groupingFunction(this.groupBySetting.get()),
1167+
});
11591168
}
11601169
}
11611170

front_end/panels/timeline/utils/AICallTree.ts

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,13 @@ export class AICallTree {
8484
const visibleEventsFilter = new Trace.Extras.TraceFilter.VisibleEventsFilter(visibleTypes());
8585
const customFilter = new AITreeFilter(selectedEvent);
8686
// Build a tree bounded by the selected event's timestamps, and our other filters applied
87-
const rootNode = new Trace.Extras.TraceTree.TopDownRootNode(
88-
overlappingEvents, [visibleEventsFilter, customFilter], startTime, endTime, false, null, true);
87+
88+
const rootNode = new Trace.Extras.TraceTree.TopDownRootNode(overlappingEvents, {
89+
filters: [visibleEventsFilter, customFilter],
90+
startTime,
91+
endTime,
92+
includeInstantEvents: true,
93+
});
8994

9095
// Walk the tree to find selectedNode
9196
let selectedNode: Trace.Extras.TraceTree.Node|null = null;

0 commit comments

Comments
 (0)