зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1055151 - Add tests to cap devtools memory footprint. r=ochameau
This commit is contained in:
Родитель
9207928a2a
Коммит
175a1a65bf
|
@ -0,0 +1,52 @@
|
||||||
|
/* Any copyright is dedicated to the Public Domain.
|
||||||
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
||||||
|
|
||||||
|
var gClient;
|
||||||
|
var gMgr;
|
||||||
|
var gRefMemory;
|
||||||
|
|
||||||
|
function run_test() {
|
||||||
|
gMgr = Cc["@mozilla.org/memory-reporter-manager;1"].getService(Ci.nsIMemoryReporterManager);
|
||||||
|
Cu.forceGC();
|
||||||
|
gRefMemory = gMgr.residentUnique;
|
||||||
|
|
||||||
|
add_test(init_server);
|
||||||
|
add_test(add_browser_actors);
|
||||||
|
add_test(connect_client);
|
||||||
|
add_test(list_tabs);
|
||||||
|
add_test(close_client);
|
||||||
|
run_next_test();
|
||||||
|
}
|
||||||
|
|
||||||
|
function check_footprint(step, max) {
|
||||||
|
var footprint = (gMgr.residentUnique - gRefMemory) / 1024;
|
||||||
|
ok(footprint < max, "Footprint after " + step + " is " + footprint + " kB (should be less than " + max + " kB).");
|
||||||
|
run_next_test();
|
||||||
|
}
|
||||||
|
|
||||||
|
function init_server() {
|
||||||
|
DebuggerServer.init(function () { return true; });
|
||||||
|
check_footprint("DebuggerServer.init()", 500);
|
||||||
|
}
|
||||||
|
|
||||||
|
function add_browser_actors() {
|
||||||
|
DebuggerServer.addBrowserActors();
|
||||||
|
check_footprint("DebuggerServer.addBrowserActors()", 12000);
|
||||||
|
}
|
||||||
|
|
||||||
|
function connect_client() {
|
||||||
|
gClient = new DebuggerClient(DebuggerServer.connectPipe());
|
||||||
|
gClient.connect(function onConnect() {
|
||||||
|
check_footprint("DebuggerClient.connect()", 12500);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function list_tabs() {
|
||||||
|
gClient.listTabs(function onListTabs(aResponse) {
|
||||||
|
check_footprint("DebuggerClient.listTabs()", 13000);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function close_client() {
|
||||||
|
gClient.close(run_next_test);
|
||||||
|
}
|
|
@ -209,3 +209,7 @@ reason = bug 937197
|
||||||
[test_monitor_actor.js]
|
[test_monitor_actor.js]
|
||||||
[test_symbols-01.js]
|
[test_symbols-01.js]
|
||||||
[test_symbols-02.js]
|
[test_symbols-02.js]
|
||||||
|
[test_memory_footprint.js]
|
||||||
|
run-sequentially = measure memory, has to be run solo
|
||||||
|
skip-if = os != 'linux' || debug || asan
|
||||||
|
reason = bug 1014071
|
||||||
|
|
Загрузка…
Ссылка в новой задаче