forked from mirrors/gecko-dev
MozReview-Commit-ID: FprlN3Vm9H7 --HG-- extra : rebase_source : f9b225e5a4464b7e6f937e4670a0bfbf472dc916
102 lines
4.8 KiB
JavaScript
102 lines
4.8 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
"use strict";
|
|
|
|
/**
|
|
* Tests that view states and lazy component intialization works.
|
|
*/
|
|
|
|
const { SIMPLE_URL } = require("devtools/client/performance/test/helpers/urls");
|
|
const { UI_ENABLE_MEMORY_PREF, UI_ENABLE_ALLOCATIONS_PREF } = require("devtools/client/performance/test/helpers/prefs");
|
|
const { initPerformanceInNewTab, teardownToolboxAndRemoveTab } = require("devtools/client/performance/test/helpers/panel-utils");
|
|
const { startRecording, stopRecording } = require("devtools/client/performance/test/helpers/actions");
|
|
|
|
add_task(function* () {
|
|
let { panel } = yield initPerformanceInNewTab({
|
|
url: SIMPLE_URL,
|
|
win: window
|
|
});
|
|
|
|
let { PerformanceView, OverviewView, DetailsView } = panel.panelWin;
|
|
|
|
is(PerformanceView.getState(), "empty",
|
|
"The intial state of the performance panel view is correct.");
|
|
|
|
ok(!(OverviewView.graphs.get("timeline")),
|
|
"The markers graph should not have been created yet.");
|
|
ok(!(OverviewView.graphs.get("memory")),
|
|
"The memory graph should not have been created yet.");
|
|
ok(!(OverviewView.graphs.get("framerate")),
|
|
"The framerate graph should not have been created yet.");
|
|
|
|
ok(!DetailsView.components.waterfall.initialized,
|
|
"The waterfall detail view should not have been created yet.");
|
|
ok(!DetailsView.components["js-calltree"].initialized,
|
|
"The js-calltree detail view should not have been created yet.");
|
|
ok(!DetailsView.components["js-flamegraph"].initialized,
|
|
"The js-flamegraph detail view should not have been created yet.");
|
|
ok(!DetailsView.components["memory-calltree"].initialized,
|
|
"The memory-calltree detail view should not have been created yet.");
|
|
ok(!DetailsView.components["memory-flamegraph"].initialized,
|
|
"The memory-flamegraph detail view should not have been created yet.");
|
|
|
|
Services.prefs.setBoolPref(UI_ENABLE_MEMORY_PREF, true);
|
|
Services.prefs.setBoolPref(UI_ENABLE_ALLOCATIONS_PREF, true);
|
|
|
|
ok(!(OverviewView.graphs.get("timeline")),
|
|
"The markers graph should still not have been created yet.");
|
|
ok(!(OverviewView.graphs.get("memory")),
|
|
"The memory graph should still not have been created yet.");
|
|
ok(!(OverviewView.graphs.get("framerate")),
|
|
"The framerate graph should still not have been created yet.");
|
|
|
|
yield startRecording(panel);
|
|
|
|
is(PerformanceView.getState(), "recording",
|
|
"The current state of the performance panel view is 'recording'.");
|
|
ok(OverviewView.graphs.get("memory"),
|
|
"The memory graph should have been created now.");
|
|
ok(OverviewView.graphs.get("framerate"),
|
|
"The framerate graph should have been created now.");
|
|
|
|
yield stopRecording(panel);
|
|
|
|
is(PerformanceView.getState(), "recorded",
|
|
"The current state of the performance panel view is 'recorded'.");
|
|
ok(!DetailsView.components["js-calltree"].initialized,
|
|
"The js-calltree detail view should still not have been created yet.");
|
|
ok(!DetailsView.components["js-flamegraph"].initialized,
|
|
"The js-flamegraph detail view should still not have been created yet.");
|
|
ok(!DetailsView.components["memory-calltree"].initialized,
|
|
"The memory-calltree detail view should still not have been created yet.");
|
|
ok(!DetailsView.components["memory-flamegraph"].initialized,
|
|
"The memory-flamegraph detail view should still not have been created yet.");
|
|
|
|
yield DetailsView.selectView("js-calltree");
|
|
|
|
is(PerformanceView.getState(), "recorded",
|
|
"The current state of the performance panel view is still 'recorded'.");
|
|
ok(DetailsView.components["js-calltree"].initialized,
|
|
"The js-calltree detail view should still have been created now.");
|
|
ok(!DetailsView.components["js-flamegraph"].initialized,
|
|
"The js-flamegraph detail view should still not have been created yet.");
|
|
ok(!DetailsView.components["memory-calltree"].initialized,
|
|
"The memory-calltree detail view should still not have been created yet.");
|
|
ok(!DetailsView.components["memory-flamegraph"].initialized,
|
|
"The memory-flamegraph detail view should still not have been created yet.");
|
|
|
|
yield DetailsView.selectView("memory-calltree");
|
|
|
|
is(PerformanceView.getState(), "recorded",
|
|
"The current state of the performance panel view is still 'recorded'.");
|
|
ok(DetailsView.components["js-calltree"].initialized,
|
|
"The js-calltree detail view should still register as being created.");
|
|
ok(!DetailsView.components["js-flamegraph"].initialized,
|
|
"The js-flamegraph detail view should still not have been created yet.");
|
|
ok(DetailsView.components["memory-calltree"].initialized,
|
|
"The memory-calltree detail view should still have been created now.");
|
|
ok(!DetailsView.components["memory-flamegraph"].initialized,
|
|
"The memory-flamegraph detail view should still not have been created yet.");
|
|
|
|
yield teardownToolboxAndRemoveTab(panel);
|
|
});
|