diff options
Diffstat (limited to 'toolkit/components/aboutmemory/tests/test_memoryReporters2.xul')
-rw-r--r-- | toolkit/components/aboutmemory/tests/test_memoryReporters2.xul | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul b/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul deleted file mode 100644 index 0e8ba2e81..000000000 --- a/toolkit/components/aboutmemory/tests/test_memoryReporters2.xul +++ /dev/null @@ -1,108 +0,0 @@ -<?xml version="1.0"?> -<?xml-stylesheet href="chrome://global/skin" type="text/css"?> -<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" - type="text/css"?> -<window title="Memory reporters with child processes" - xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> - <script type="application/javascript" - src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/> - - <!-- This file tests (in a rough fashion) whether the memory reporters are - producing sensible results in the presence of child processes. --> - - <!-- test results are displayed in the html:body --> - <body xmlns="http://www.w3.org/1999/xhtml"> - </body> - - <!-- test code goes here --> - <script type="application/javascript"><![CDATA[ - - const Cc = Components.classes; - const Ci = Components.interfaces; - - SimpleTest.waitForExplicitFinish(); - - let numRemotes = 3; - let numReady = 0; - - // Create some remote processes, and set up message-passing so that - // we know when each child is fully initialized. - let remotes = []; - SpecialPowers.pushPrefEnv({"set": [["dom.ipc.processCount", 3]]}, function() { - for (let i = 0; i < numRemotes; i++) { - let w = remotes[i] = window.open("remote.xul", "", "chrome"); - - w.addEventListener("load", function loadHandler() { - w.removeEventListener("load", loadHandler); - let remoteBrowser = w.document.getElementById("remote"); - let mm = remoteBrowser.messageManager; - mm.addMessageListener("test:ready", function readyHandler() { - mm.removeMessageListener("test:ready", readyHandler); - numReady++; - if (numReady == numRemotes) { - // All the remote processes are ready. Do memory reporting. - doReports(); - } - }); - mm.loadFrameScript("data:," + encodeURI("sendAsyncMessage('test:ready');"), true); - }); - } - }); - - let mgr = Cc["@mozilla.org/memory-reporter-manager;1"]. - getService(Ci.nsIMemoryReporterManager); - - function doReports() - { - let residents = {}; - - let handleReport = function(aProcess, aPath, aKind, aUnits, aAmount, aDesc) { - if (aPath === "resident") { - ok(100 * 1000 <= aAmount && aAmount <= 10 * 1000 * 1000 * 1000, - "resident is reasonable"); - residents[aProcess] = aAmount; - } - } - - let processReports = function() { - // First, test a failure case: calling getReports() before the previous - // getReports() has finished should silently abort. (And the arguments - // won't be used.) - mgr.getReports( - () => ok(false, "handleReport called for nested getReports() call"), - null, null, null, /* anonymize = */ false - ); - - // Close the remote processes. - for (let i = 0; i < numRemotes; i++) { - remotes[i].close(); - } - - // Check the results. - - let processes = Object.keys(residents); - ok(processes.length == numRemotes + 1, "correct resident count"); - - let numEmptyProcesses = 0, numNonEmptyProcesses = 0; - for (let i = 0; i < processes.length; i++) { - if (processes[i] == "") { - numEmptyProcesses++; - } else { - ok(processes[i].startsWith("Browser (") || processes[i].startsWith("Web Content ("), - "correct non-empty process name prefix: " + processes[i]); - numNonEmptyProcesses++; - } - } - ok(numEmptyProcesses == 1, "correct empty process name count"); - ok(numNonEmptyProcesses == numRemotes, - "correct non-empty process name count"); - - SimpleTest.finish(); - } - - mgr.getReports(handleReport, null, processReports, null, - /* anonymize = */ false); - } - - ]]></script> -</window> |