summaryrefslogtreecommitdiffstats
path: root/toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul')
-rw-r--r--toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul54
1 files changed, 54 insertions, 0 deletions
diff --git a/toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul b/toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul
new file mode 100644
index 000000000..3452bbbc7
--- /dev/null
+++ b/toolkit/components/aboutmemory/tests/test_sqliteMultiReporter.xul
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<?xml-stylesheet type="text/css" href="chrome://global/skin"?>
+<?xml-stylesheet type="text/css" href="chrome://mochikit/content/tests/SimpleTest/test.css"?>
+<window title="about:memory"
+ xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
+ <script type="application/javascript" src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"/>
+ <script type="text/javascript" src="chrome://mochikit/content/tests/SimpleTest/EventUtils.js"></script>
+
+ <!-- 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[
+
+ // Test for bug 708248, where the SQLite memory multi-reporter was
+ // crashing when a DB was closed.
+
+ // Nb: this test is all JS and chould be done with an xpcshell test,
+ // but all the other memory reporter tests are mochitests, so it's easier
+ // if this one is too.
+
+ const Cc = Components.classes;
+ const Ci = Components.interfaces;
+ const Cu = Components.utils;
+
+ SimpleTest.waitForExplicitFinish();
+
+ // Make a fake DB file.
+ let file = Cc["@mozilla.org/file/directory_service;1"].
+ getService(Ci.nsIProperties).
+ get("ProfD", Ci.nsIFile);
+ file.append("test_sqliteMultiReporter-fake-DB-tmp.sqlite");
+
+ // Open and close the DB.
+ let storage = Cc["@mozilla.org/storage/service;1"].
+ getService(Ci.mozIStorageService);
+ let db = storage.openDatabase(file);
+ db.close();
+
+ // Invoke all the reporters. The SQLite multi-reporter is among
+ // them. It shouldn't crash.
+ let mgr = Cc["@mozilla.org/memory-reporter-manager;1"].
+ getService(Ci.nsIMemoryReporterManager);
+ mgr.getReports(function(){}, null,
+ () => {
+ ok(true, "didn't crash");
+ SimpleTest.finish();
+ }, null,
+ /* anonymize = */ false);
+
+ ]]>
+ </script>
+</window>