Bug 1387221 - add test draft
authorJonathan Guillotte-Blouin <jguillotteblouin@mozilla.com>
Wed, 09 Aug 2017 13:25:19 -0700
changeset 645215 1b78fe7299033d159d8fc1d45272b2bebd419626
parent 645214 61d0a6a3601933dc9b7fc826cc507f80faa0ad5d
child 725855 5dac6ee18c0b073a5984c4d32f49132309794e15
push id73702
push userbmo:jonathan.guillotte.blouin@gmail.com
push dateFri, 11 Aug 2017 23:50:47 +0000
bugs1387221
milestone57.0a1
Bug 1387221 - add test MozReview-Commit-ID: 3C9sUno31l0
toolkit/components/payments/test/browser/browser_show_dialog.js
toolkit/components/payments/test/browser/head.js
--- a/toolkit/components/payments/test/browser/browser_show_dialog.js
+++ b/toolkit/components/payments/test/browser/browser_show_dialog.js
@@ -46,8 +46,12 @@ add_task(async function test_show_manual
 
     // abort the payment request manually
     let frameLoader = win.document.getElementById("paymentRequestFrame").frameLoader;
     await ContentTask.spawn(frameLoader, null, ContentTasks.manuallyClickCancel);
 
     ok(win.closed, "dialog should be closed");
   });
 });
+
+add_task(async function test_AddressSelector_prePopulate() {
+  await setupAddressStorage();
+});
--- a/toolkit/components/payments/test/browser/head.js
+++ b/toolkit/components/payments/test/browser/head.js
@@ -9,27 +9,56 @@
 */
 
 const BLANK_PAGE_URL = "https://example.com/browser/toolkit/components/" +
                        "payments/test/browser/blank_page.html";
 const PREF_PAYMENT_ENABLED = "dom.payments.request.enabled";
 const paymentUISrv = Cc["@mozilla.org/dom/payments/payment-ui-service;1"]
                      .getService().wrappedJSObject;
 
+const autofillAddresses = [{
+  "given-name": "John",
+  "additional-name": "R.",
+  "family-name": "Smith",
+  organization: "World Wide Web Consortium",
+  "street-address": "32 Vassar Street\nMIT Room 32-G524",
+  "address-level2": "Cambridge",
+  "address-level1": "MA",
+  "postal-code": "02139",
+  country: "US",
+  tel: "+16172535702",
+  email: "timbl@w3.org",
+}, {
+  "given-name": "Maurice",
+  "family-name": "Richard",
+  organization: "Moz",
+  "street-address": "333 evelyn Avenue\napt 123",
+  "address-level2": "Mountain View",
+  "address-level1": "CA",
+  "postal-code": "19283",
+  country: "US",
+  tel: "+16138675309",
+}];
 
 async function getDialogWindow() {
   let win;
   await BrowserTestUtils.waitForCondition(() => {
     win = Services.wm.getMostRecentWindow(null);
     return win.name.startsWith(paymentUISrv.REQUEST_ID_PREFIX);
   }, "payment dialog should be the most recent");
 
   return win;
 }
 
+async function setupAddressStorage(entries = autofillAddresses) {
+  for (let entry of entries) {
+    await profileStorage.addresses.add(entry);
+  }
+}
+
 /**
  * Common content tasks functions to be used with ContentTask.spawn.
  */
 let ContentTasks = {
   createAndShowRequest: async ({methodData, details, options}) => {
     let rq = new content.PaymentRequest(methodData, details, options);
     content.rq = rq; // assign it so we can retrieve it later
     rq.show();