mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-27 12:50:09 +00:00
Backed out changeset 43cf27f0e2ed (bug 1288885)
This commit is contained in:
parent
f140568d4d
commit
00836683c4
@ -57,6 +57,37 @@ add_task(function* test_alarm_fires() {
|
||||
});
|
||||
|
||||
|
||||
add_task(function* test_cleared_alarm_does_not_fire() {
|
||||
function backgroundScript() {
|
||||
let ALARM_NAME = "test_ext_alarms";
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
browser.test.fail("cleared alarm does not fire");
|
||||
browser.test.notifyFail("alarm-cleared");
|
||||
});
|
||||
browser.alarms.create(ALARM_NAME, {when: Date.now() + 1000});
|
||||
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
setTimeout(() => {
|
||||
browser.test.notifyPass("alarm-cleared");
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-cleared");
|
||||
yield extension.unload();
|
||||
});
|
||||
|
||||
|
||||
add_task(function* test_alarm_fires_with_when() {
|
||||
function backgroundScript() {
|
||||
let ALARM_NAME = "test_ext_alarms";
|
||||
@ -149,6 +180,47 @@ add_task(function* test_alarm_get_and_clear_single_argument() {
|
||||
});
|
||||
|
||||
|
||||
add_task(function* test_periodic_alarm_fires() {
|
||||
function backgroundScript() {
|
||||
const ALARM_NAME = "test_ext_alarms";
|
||||
let count = 0;
|
||||
let timer;
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
browser.test.assertEq(alarm.name, ALARM_NAME, "alarm has the expected name");
|
||||
if (count++ === 3) {
|
||||
clearTimeout(timer);
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
browser.test.notifyPass("alarm-periodic");
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
browser.alarms.create(ALARM_NAME, {periodInMinutes: 0.02});
|
||||
|
||||
timer = setTimeout(() => {
|
||||
browser.test.fail("alarm fired expected number of times");
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
});
|
||||
browser.test.notifyFail("alarm-periodic");
|
||||
}, 30000);
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-periodic");
|
||||
yield extension.unload();
|
||||
});
|
||||
|
||||
|
||||
add_task(function* test_get_get_all_clear_all_alarms() {
|
||||
function backgroundScript() {
|
||||
const ALARM_NAME = "test_alarm";
|
||||
@ -219,3 +291,44 @@ add_task(function* test_get_get_all_clear_all_alarms() {
|
||||
]);
|
||||
yield extension.unload();
|
||||
});
|
||||
|
||||
add_task(function* test_duplicate_alarm_name_replaces_alarm() {
|
||||
function backgroundScript() {
|
||||
let count = 0;
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
if (alarm.name === "master alarm") {
|
||||
browser.alarms.create("child alarm", {delayInMinutes: 0.05});
|
||||
browser.alarms.getAll().then(results => {
|
||||
browser.test.assertEq(2, results.length, "exactly two alarms exist");
|
||||
browser.test.assertEq("master alarm", results[0].name, "first alarm has the expected name");
|
||||
browser.test.assertEq("child alarm", results[1].name, "second alarm has the expected name");
|
||||
}).then(() => {
|
||||
if (count++ === 3) {
|
||||
browser.alarms.clear("master alarm").then(wasCleared => {
|
||||
return browser.alarms.clear("child alarm");
|
||||
}).then(wasCleared => {
|
||||
browser.test.notifyPass("alarm-duplicate");
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
browser.test.fail("duplicate named alarm replaced existing alarm");
|
||||
browser.test.notifyFail("alarm-duplicate");
|
||||
}
|
||||
});
|
||||
|
||||
browser.alarms.create("master alarm", {delayInMinutes: 0.025, periodInMinutes: 0.025});
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-duplicate");
|
||||
yield extension.unload();
|
||||
});
|
||||
|
@ -1,33 +0,0 @@
|
||||
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* vim: set sts=2 sw=2 et tw=80: */
|
||||
"use strict";
|
||||
|
||||
add_task(function* test_cleared_alarm_does_not_fire() {
|
||||
function backgroundScript() {
|
||||
let ALARM_NAME = "test_ext_alarms";
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
browser.test.fail("cleared alarm does not fire");
|
||||
browser.test.notifyFail("alarm-cleared");
|
||||
});
|
||||
browser.alarms.create(ALARM_NAME, {when: Date.now() + 1000});
|
||||
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
setTimeout(() => {
|
||||
browser.test.notifyPass("alarm-cleared");
|
||||
}, 2000);
|
||||
});
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-cleared");
|
||||
yield extension.unload();
|
||||
});
|
@ -1,43 +0,0 @@
|
||||
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* vim: set sts=2 sw=2 et tw=80: */
|
||||
"use strict";
|
||||
|
||||
add_task(function* test_periodic_alarm_fires() {
|
||||
function backgroundScript() {
|
||||
const ALARM_NAME = "test_ext_alarms";
|
||||
let count = 0;
|
||||
let timer;
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
browser.test.assertEq(alarm.name, ALARM_NAME, "alarm has the expected name");
|
||||
if (count++ === 3) {
|
||||
clearTimeout(timer);
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
browser.test.notifyPass("alarm-periodic");
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
browser.alarms.create(ALARM_NAME, {periodInMinutes: 0.02});
|
||||
|
||||
timer = setTimeout(() => {
|
||||
browser.test.fail("alarm fired expected number of times");
|
||||
browser.alarms.clear(ALARM_NAME).then(wasCleared => {
|
||||
browser.test.assertTrue(wasCleared, "alarm was cleared");
|
||||
});
|
||||
browser.test.notifyFail("alarm-periodic");
|
||||
}, 30000);
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-periodic");
|
||||
yield extension.unload();
|
||||
});
|
@ -1,45 +0,0 @@
|
||||
/* -*- Mode: indent-tabs-mode: nil; js-indent-level: 2 -*- */
|
||||
/* vim: set sts=2 sw=2 et tw=80: */
|
||||
"use strict";
|
||||
|
||||
|
||||
add_task(function* test_duplicate_alarm_name_replaces_alarm() {
|
||||
function backgroundScript() {
|
||||
let count = 0;
|
||||
|
||||
browser.alarms.onAlarm.addListener(alarm => {
|
||||
if (alarm.name === "master alarm") {
|
||||
browser.alarms.create("child alarm", {delayInMinutes: 0.05});
|
||||
browser.alarms.getAll().then(results => {
|
||||
browser.test.assertEq(2, results.length, "exactly two alarms exist");
|
||||
browser.test.assertEq("master alarm", results[0].name, "first alarm has the expected name");
|
||||
browser.test.assertEq("child alarm", results[1].name, "second alarm has the expected name");
|
||||
}).then(() => {
|
||||
if (count++ === 3) {
|
||||
browser.alarms.clear("master alarm").then(wasCleared => {
|
||||
return browser.alarms.clear("child alarm");
|
||||
}).then(wasCleared => {
|
||||
browser.test.notifyPass("alarm-duplicate");
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
browser.test.fail("duplicate named alarm replaced existing alarm");
|
||||
browser.test.notifyFail("alarm-duplicate");
|
||||
}
|
||||
});
|
||||
|
||||
browser.alarms.create("master alarm", {delayInMinutes: 0.025, periodInMinutes: 0.025});
|
||||
}
|
||||
|
||||
let extension = ExtensionTestUtils.loadExtension({
|
||||
background: `(${backgroundScript})()`,
|
||||
manifest: {
|
||||
permissions: ["alarms"],
|
||||
},
|
||||
});
|
||||
|
||||
yield extension.startup();
|
||||
yield extension.awaitFinish("alarm-duplicate");
|
||||
yield extension.unload();
|
||||
});
|
@ -9,9 +9,6 @@ support-files =
|
||||
[test_csp_custom_policies.js]
|
||||
[test_csp_validator.js]
|
||||
[test_ext_alarms.js]
|
||||
[test_ext_alarms_does_not_fire.js]
|
||||
[test_ext_alarms_periodic.js]
|
||||
[test_ext_alarms_replaces.js]
|
||||
[test_ext_background_generated_load_events.js]
|
||||
[test_ext_background_generated_reload.js]
|
||||
[test_ext_background_runtime_connect_params.js]
|
||||
|
Loading…
x
Reference in New Issue
Block a user