mirror of
https://repo.dactyloidae.xyz/Dactyloidae/UXP.git
synced 2026-10-21 14:47:31 +09:00
import FIREFOX_52_6_0esr_RELEASE from mozilla-esr52 hg repo
This commit is contained in:
commit
dcd9973243
150858 changed files with 23884658 additions and 0 deletions
7
toolkit/components/crashmonitor/test/unit/.eslintrc.js
Normal file
7
toolkit/components/crashmonitor/test/unit/.eslintrc.js
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
"use strict";
|
||||
|
||||
module.exports = {
|
||||
"extends": [
|
||||
"../../../../../testing/xpcshell/xpcshell.eslintrc.js"
|
||||
]
|
||||
};
|
||||
22
toolkit/components/crashmonitor/test/unit/head.js
Normal file
22
toolkit/components/crashmonitor/test/unit/head.js
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
|
||||
XPCOMUtils.defineLazyModuleGetter(this, "OS",
|
||||
"resource://gre/modules/osfile.jsm");
|
||||
|
||||
var sessionCheckpointsPath;
|
||||
|
||||
/**
|
||||
* Start the tasks of the different tests
|
||||
*/
|
||||
function run_test()
|
||||
{
|
||||
do_get_profile();
|
||||
sessionCheckpointsPath = OS.Path.join(OS.Constants.Path.profileDir,
|
||||
"sessionCheckpoints.json");
|
||||
Components.utils.import("resource://gre/modules/CrashMonitor.jsm");
|
||||
run_next_test();
|
||||
}
|
||||
17
toolkit/components/crashmonitor/test/unit/test_init.js
Normal file
17
toolkit/components/crashmonitor/test/unit/test_init.js
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test that calling |init| twice throws an error
|
||||
*/
|
||||
add_task(function test_init() {
|
||||
CrashMonitor.init();
|
||||
try {
|
||||
CrashMonitor.init();
|
||||
do_check_true(false);
|
||||
} catch (ex) {
|
||||
do_check_true(true);
|
||||
}
|
||||
});
|
||||
|
|
@ -0,0 +1,22 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test with sessionCheckpoints.json containing invalid data
|
||||
*/
|
||||
add_task(function* test_invalid_file() {
|
||||
// Write bogus data to checkpoint file
|
||||
let data = "1234";
|
||||
yield OS.File.writeAtomic(sessionCheckpointsPath, data,
|
||||
{tmpPath: sessionCheckpointsPath + ".tmp"});
|
||||
|
||||
// An invalid file will cause |init| to return null
|
||||
let status = yield CrashMonitor.init();
|
||||
do_check_true(status === null ? true : false);
|
||||
|
||||
// and |previousCheckpoints| will be null
|
||||
let checkpoints = yield CrashMonitor.previousCheckpoints;
|
||||
do_check_true(checkpoints === null ? true : false);
|
||||
});
|
||||
|
|
@ -0,0 +1,18 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test with sessionCheckpoints.json containing invalid JSON data
|
||||
*/
|
||||
add_task(function* test_invalid_file() {
|
||||
// Write bogus data to checkpoint file
|
||||
let data = "[}";
|
||||
yield OS.File.writeAtomic(sessionCheckpointsPath, data,
|
||||
{tmpPath: sessionCheckpointsPath + ".tmp"});
|
||||
|
||||
CrashMonitor.init();
|
||||
let checkpoints = yield CrashMonitor.previousCheckpoints;
|
||||
do_check_eq(checkpoints, null);
|
||||
});
|
||||
|
|
@ -0,0 +1,13 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test with non-existing sessionCheckpoints.json
|
||||
*/
|
||||
add_task(function* test_missing_file() {
|
||||
CrashMonitor.init();
|
||||
let checkpoints = yield CrashMonitor.previousCheckpoints;
|
||||
do_check_eq(checkpoints, null);
|
||||
});
|
||||
24
toolkit/components/crashmonitor/test/unit/test_register.js
Normal file
24
toolkit/components/crashmonitor/test/unit/test_register.js
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test that CrashMonitor.jsm is correctly loaded from XPCOM component
|
||||
*/
|
||||
add_task(function test_register() {
|
||||
let cm = Components.classes["@mozilla.org/toolkit/crashmonitor;1"]
|
||||
.createInstance(Components.interfaces.nsIObserver);
|
||||
|
||||
// Send "profile-after-change" to trigger the initialization
|
||||
cm.observe(null, "profile-after-change", null);
|
||||
|
||||
// If CrashMonitor was initialized properly a new call to |init|
|
||||
// should fail
|
||||
try {
|
||||
CrashMonitor.init();
|
||||
do_check_true(false);
|
||||
} catch (ex) {
|
||||
do_check_true(true);
|
||||
}
|
||||
});
|
||||
20
toolkit/components/crashmonitor/test/unit/test_valid_file.js
Normal file
20
toolkit/components/crashmonitor/test/unit/test_valid_file.js
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
/* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
/**
|
||||
* Test with sessionCheckpoints.json containing valid data
|
||||
*/
|
||||
add_task(function* test_valid_file() {
|
||||
// Write valid data to checkpoint file
|
||||
let data = JSON.stringify({"final-ui-startup": true});
|
||||
yield OS.File.writeAtomic(sessionCheckpointsPath, data,
|
||||
{tmpPath: sessionCheckpointsPath + ".tmp"});
|
||||
|
||||
CrashMonitor.init();
|
||||
let checkpoints = yield CrashMonitor.previousCheckpoints;
|
||||
|
||||
do_check_true(checkpoints["final-ui-startup"]);
|
||||
do_check_eq(Object.keys(checkpoints).length, 1);
|
||||
});
|
||||
11
toolkit/components/crashmonitor/test/unit/xpcshell.ini
Normal file
11
toolkit/components/crashmonitor/test/unit/xpcshell.ini
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
[DEFAULT]
|
||||
head = head.js
|
||||
tail =
|
||||
skip-if = toolkit == 'android'
|
||||
|
||||
[test_init.js]
|
||||
[test_valid_file.js]
|
||||
[test_invalid_file.js]
|
||||
[test_invalid_json.js]
|
||||
[test_missing_file.js]
|
||||
[test_register.js]
|
||||
Loading…
Add table
Add a link
Reference in a new issue