Bug 1455087 - Support deleting autofill records with the delete key. r?MattN
MozReview-Commit-ID: 3Oyl7MmmUvM
--- a/browser/extensions/formautofill/test/browser/browser.ini
+++ b/browser/extensions/formautofill/test/browser/browser.ini
@@ -19,8 +19,9 @@ skip-if = (os == "linux") || (os == "mac
[browser_editCreditCardDialog.js]
[browser_first_time_use_doorhanger.js]
[browser_insecure_form.js]
[browser_manageAddressesDialog.js]
[browser_manageCreditCardsDialog.js]
[browser_privacyPreferences.js]
[browser_submission_in_private_mode.js]
[browser_update_doorhanger.js]
+[browser_mbk_test.js]
--- a/browser/extensions/formautofill/test/browser/browser_manageAddressesDialog.js
+++ b/browser/extensions/formautofill/test/browser/browser_manageAddressesDialog.js
@@ -62,16 +62,33 @@ add_task(async function test_removingSin
EventUtils.synthesizeMouseAtCenter(btnRemove, {}, win);
await BrowserTestUtils.waitForEvent(selRecords, "RecordsRemoved");
is(selRecords.length, 0, "All addresses are removed");
win.close();
});
+add_task(async function test_removingAdressViaKeyboardDelete() {
+ await saveAddress(TEST_ADDRESS_1);
+ let win = window.openDialog(MANAGE_ADDRESSES_DIALOG_URL, null, DIALOG_SIZE);
+ await waitForFocusAndFormReady(win);
+
+ let selRecords = win.document.querySelector(TEST_SELECTORS.selRecords);
+
+ is(selRecords.length, 1, "One address");
+
+ EventUtils.synthesizeMouseAtCenter(selRecords.children[0], {}, win);
+ EventUtils.synthesizeKey("VK_DELETE", {}, win);
+ await BrowserTestUtils.waitForEvent(selRecords, "RecordsRemoved");
+ is(selRecords.length, 0, "No addresses left");
+
+ win.close();
+});
+
add_task(async function test_addressesDialogWatchesStorageChanges() {
let win = window.openDialog(MANAGE_ADDRESSES_DIALOG_URL, null, DIALOG_SIZE);
await waitForFocusAndFormReady(win);
let selRecords = win.document.querySelector(TEST_SELECTORS.selRecords);
await saveAddress(TEST_ADDRESS_1);
await BrowserTestUtils.waitForEvent(selRecords, "RecordsLoaded");
--- a/browser/extensions/formautofill/test/browser/browser_manageCreditCardsDialog.js
+++ b/browser/extensions/formautofill/test/browser/browser_manageCreditCardsDialog.js
@@ -69,16 +69,33 @@ add_task(async function test_removingSin
EventUtils.synthesizeMouseAtCenter(btnRemove, {}, win);
await BrowserTestUtils.waitForEvent(selRecords, "RecordsRemoved");
is(selRecords.length, 0, "All credit cards are removed");
win.close();
});
+add_task(async function test_removingCreditCardsViaKeyboardDelete() {
+ await saveCreditCard(TEST_CREDIT_CARD_1);
+ let win = window.openDialog(MANAGE_CREDIT_CARDS_DIALOG_URL, null, DIALOG_SIZE);
+ await waitForFocusAndFormReady(win);
+
+ let selRecords = win.document.querySelector(TEST_SELECTORS.selRecords);
+
+ is(selRecords.length, 1, "One credit card");
+
+ EventUtils.synthesizeMouseAtCenter(selRecords.children[0], {}, win);
+ EventUtils.synthesizeKey("VK_DELETE", {}, win);
+ await BrowserTestUtils.waitForEvent(selRecords, "RecordsRemoved");
+ is(selRecords.length, 0, "No credit cards left");
+
+ win.close();
+});
+
add_task(async function test_creditCardsDialogWatchesStorageChanges() {
let win = window.openDialog(MANAGE_CREDIT_CARDS_DIALOG_URL, null, DIALOG_SIZE);
await waitForFocusAndFormReady(win);
let selRecords = win.document.querySelector(TEST_SELECTORS.selRecords);
await saveCreditCard(TEST_CREDIT_CARD_1);
await BrowserTestUtils.waitForEvent(selRecords, "RecordsLoaded");