mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-19 08:15:31 +00:00
Bug 1173393 - Detail views in Performance should be unique EventTargets and not bleed events between each other. r=vp
This commit is contained in:
parent
382616425c
commit
4216e17d3a
@ -6,7 +6,7 @@
|
||||
*/
|
||||
function* spawnTest() {
|
||||
let { panel } = yield initPerformance(SIMPLE_URL);
|
||||
let { EVENTS, DetailsView, JsCallTreeView } = panel.panelWin;
|
||||
let { EVENTS, DetailsView, WaterfallView, JsCallTreeView } = panel.panelWin;
|
||||
|
||||
yield startRecording(panel);
|
||||
yield busyWait(100);
|
||||
@ -19,11 +19,25 @@ function* spawnTest() {
|
||||
|
||||
ok(true, "JsCallTreeView rendered after recording is stopped.");
|
||||
|
||||
yield DetailsView.selectView("waterfall");
|
||||
|
||||
yield startRecording(panel);
|
||||
yield busyWait(100);
|
||||
let waterfallRenderedOnWF = once(WaterfallView, EVENTS.WATERFALL_RENDERED);
|
||||
let waterfallRenderedOnJS = once(JsCallTreeView, EVENTS.WATERFALL_RENDERED);
|
||||
|
||||
rendered = once(JsCallTreeView, EVENTS.JS_CALL_TREE_RENDERED);
|
||||
yield stopRecording(panel);
|
||||
|
||||
// The waterfall should render by default, and we want to make
|
||||
// sure that the render events don't bleed between detail views
|
||||
// via bug 1173393, so test that's the case after both views have been
|
||||
// created
|
||||
waterfallRenderedOnJS.then(() =>
|
||||
ok(false, "JsCallTreeView should not receive WATERFALL_RENDERED event"));
|
||||
yield waterfallRenderedOnWF;
|
||||
|
||||
yield DetailsView.selectView("js-calltree");
|
||||
yield rendered;
|
||||
|
||||
ok(true, "JsCallTreeView rendered again after recording completed a second time.");
|
||||
|
@ -160,8 +160,3 @@ let DetailsSubview = {
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Convenient way of emitting events from the view.
|
||||
*/
|
||||
EventEmitter.decorate(DetailsSubview);
|
||||
|
@ -131,3 +131,5 @@ let JsCallTreeView = Heritage.extend(DetailsSubview, {
|
||||
|
||||
toString: () => "[object JsCallTreeView]"
|
||||
});
|
||||
|
||||
EventEmitter.decorate(JsCallTreeView);
|
||||
|
@ -115,3 +115,5 @@ let JsFlameGraphView = Heritage.extend(DetailsSubview, {
|
||||
|
||||
toString: () => "[object JsFlameGraphView]"
|
||||
});
|
||||
|
||||
EventEmitter.decorate(JsFlameGraphView);
|
||||
|
@ -118,3 +118,5 @@ let MemoryCallTreeView = Heritage.extend(DetailsSubview, {
|
||||
|
||||
toString: () => "[object MemoryCallTreeView]"
|
||||
});
|
||||
|
||||
EventEmitter.decorate(MemoryCallTreeView);
|
||||
|
@ -113,3 +113,5 @@ let MemoryFlameGraphView = Heritage.extend(DetailsSubview, {
|
||||
|
||||
toString: () => "[object MemoryFlameGraphView]"
|
||||
});
|
||||
|
||||
EventEmitter.decorate(MemoryFlameGraphView);
|
||||
|
@ -184,3 +184,5 @@ let WaterfallView = Heritage.extend(DetailsSubview, {
|
||||
|
||||
toString: () => "[object WaterfallView]"
|
||||
});
|
||||
|
||||
EventEmitter.decorate(WaterfallView);
|
||||
|
Loading…
Reference in New Issue
Block a user